Repository: Azure/azure-cli

Issue:
Public IP creation with --version parameter
### Description
When I run the following command it should create IPv4 IP address but as an output I get versions of each Azure CLI modules

**Command**
network  public-ip create --name linuxvm --resource-group clivm --allocation-method Dynamic --location southeastasia --version "IPv4" --verbose

**Output**
azure-cli (2.0.6)

acr (2.0.4)
acs (2.0.6)
appservice (0.1.6)
batch (2.0.4)
cdn (0.0.2)
cloud (2.0.2)
cognitiveservices (0.1.2)
command-modules-nspkg (2.0.0)
component (2.0.4)
configure (2.0.6)
core (2.0.6)
cosmosdb (0.1.6)
dla (0.0.6)
dls (0.0.6)
feedback (2.0.2)
find (0.2.2)
interactive (0.3.1)
iot (0.1.5)
keyvault (2.0.4)
lab (0.0.4)
monitor (0.0.4)
network (2.0.6)
nspkg (3.0.0)
profile (2.0.4)
rdbms (0.0.1)
redis (0.2.3)
resource (2.0.6)
role (2.0.4)
sf (1.0.1)
sql (2.0.3)
storage (2.0.6)
vm (2.0.6)

Python (Windows) 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)]

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'

What I did was I remove the version parameter and run the command and It works as I expected

**Command**
az network  public-ip create --name linuxvm-ip --resource-group clivm --location southeastasia --verbose

**Output**
```
{
  "publicIp": {
    "dnsSettings": null,
    "etag": "W/\"e102dba5-471b-49c9-a6c6-55db94c410a8\"",
    "id": "/subscriptions/<SubscriptionID>/resourceGroups/clivm/providers/Microsoft.Network/publicIPAddresses/linuxvm-ip",
    "idleTimeoutInMinutes": 4,
    "ipAddress": null,
    "ipConfiguration": null,
    "location": "southeastasia",
    "name": "linuxvm-ip",
    "provisioningState": "Succeeded",
    "publicIpAddressVersion": "IPv4",
    "publicIpAllocationMethod": "Dynamic",
    "resourceGroup": "clivm",
    "resourceGuid": "6c3bdf50-acbd-4395-8b81-20f73215f85c",
    "tags": null,
    "type": "Microsoft.Network/publicIPAddresses"
  }
}
```
---

### Environment summary

**Install Method:** How did you install the CLI? (e.g. pip, interactive script, apt-get, Docker, MSI, nightly)  
Answer here: MSI

**CLI Version:** What version of the CLI and modules are installed? (Use `az --version`)  
Answer here: azure-cli (2.0.6)

**OS Version:** What OS and version are you using?  
Answer here: Windows 10 Creates Update

**Shell Type:** What shell are you using? (e.g. bash, cmd.exe, Bash on Windows)  
Answer here: CMD.exe



Discussion:

Patch:
diff --git a/azure-cli.pyproj b/azure-cli.pyproj
index 3fdf7cd0a..ea34c0dd2 100644
--- a/azure-cli.pyproj
+++ b/azure-cli.pyproj
@@ -592,6 +592,8 @@
     </Compile>
     <Compile Include="command_modules\azure-cli-resource\azure_bdist_wheel.py" />
     <Compile Include="command_modules\azure-cli-resource\tests\test_api_check.py" />
+    <Compile Include="command_modules\azure-cli-resource\tests\test_custom.py" />
+    <Compile Include="command_modules\azure-cli-resource\tests\test_locks.py" />
     <Compile Include="command_modules\azure-cli-resource\tests\test_resource.py" />
     <Compile Include="command_modules\azure-cli-resource\tests\test_resource_list_odata_filter.py" />
     <Compile Include="command_modules\azure-cli-resource\tests\test_resource_validators.py" />
@@ -1119,7 +1121,6 @@
     <Content Include="command_modules\azure-cli-resource\tests\sample_policy_rule.json" />
     <Content Include="command_modules\azure-cli-resource\tests\crossrg_deploy.json" />
     <Content Include="command_modules\azure-cli-resource\tests\simple_deploy.json" />
-    <Content Include="command_modules\azure-cli-resource\tests\crossrg_deploy_parameters.json" />
     <Content Include="command_modules\azure-cli-resource\tests\simple_deploy_parameters.json" />
     <Content Include="command_modules\azure-cli-role\HISTORY.rst" />
     <Content Include="command_modules\azure-cli-sf\HISTORY.rst" />
diff --git a/src/command_modules/azure-cli-interactive/azclishell/app.py b/src/command_modules/azure-cli-interactive/azclishell/app.py
index 81fd00581..628a98763 100644
--- a/src/command_modules/azure-cli-interactive/azclishell/app.py
+++ b/src/command_modules/azure-cli-interactive/azclishell/app.py
@@ -435,12 +435,6 @@ class Shell(object):
         elif text.strip() == CLEAR_WORD:
             outside = True
             cmd = CLEAR_WORD
-        if '--version' in text:
-            try:
-                continue_flag = True
-                show_version_info_exit(sys.stdout)
-            except SystemExit:
-                pass
         if text:
             if text[0] == SELECT_SYMBOL['outside']:
                 cmd = text[1:]
@@ -459,7 +453,12 @@ class Shell(object):
 
             elif text[0] == SELECT_SYMBOL['query']:  # query previous output
                 continue_flag = self.handle_jmespath_query(text, continue_flag)
-
+            elif text[0] == '--version' or text[0] == '-v':
+                try:
+                    continue_flag = True
+                    show_version_info_exit(sys.stdout)
+                except SystemExit:
+                    pass
             elif "|" in text or ">" in text:  # anything I don't parse, send off
                 outside = True
                 cmd = "az " + cmd
diff --git a/src/command_modules/azure-cli-resource/HISTORY.rst b/src/command_modules/azure-cli-resource/HISTORY.rst
index bcad7f816..6c6a7856b 100644
--- a/src/command_modules/azure-cli-resource/HISTORY.rst
+++ b/src/command_modules/azure-cli-resource/HISTORY.rst
@@ -5,7 +5,8 @@ Release History
 
 unreleased
 ++++++++++++++++++
-Fix --resource-type parsing for the lock command to accept <resource-namespace>/<resource-type>
+* Fix --resource-type parsing for the lock command to accept <resource-namespace>/<resource-type>
+* Add support for specifying deployment parameters using KEY=VALUE syntax.
 
 2.0.7 (2017-05-30)
 ++++++++++++++++++
diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_help.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_help.py
index 0809a3a5f..63b8529a5 100644
--- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_help.py
+++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_help.py
@@ -281,6 +281,12 @@ helps['group deployment'] = """
 helps['group deployment create'] = """
     type: command
     short-summary: Start a deployment.
+    parameters:
+        - name: --parameters
+          short-summary: Supply deployment parameter values.
+          long-summary: >
+            Parameters may be supplied from a parameters file, raw JSON (which can be loaded using `@<file path>` syntax, or as <KEY=VALUE> pairs. Parameters are evaluated in order, so when a value is assigned twice, the latter value will be used.
+            It is recommended that you supply your parameters file first, and then override selectively using KEY=VALUE syntax (example: --parameters params.json --parameters location=westus)
     examples:
         - name: Create a deployment from a remote template file.
           text: >
@@ -288,6 +294,9 @@ helps['group deployment create'] = """
         - name: Create a deployment from a local template file and use parameter values in a string.
           text: >
             az group deployment create -g MyResourceGroup --template-file azuredeploy.json --parameters "{\\"location\\": {\\"value\\": \\"westus\\"}}"
+        - name: Create a deployment from a local template, use a parameter file and selectively override parameters.
+          text: >
+            az group deployment create -g MyResourceGroup --template-file azuredeploy.json --parameters params.json --parameters MyValue=This MyArray=@array.json
 """
 helps['group deployment export'] = """
     type: command
@@ -296,6 +305,12 @@ helps['group deployment export'] = """
 helps['group deployment validate'] = """
     type: command
     short-summary: Validate whether the specified template is syntactically correct and will be accepted by Azure Resource Manager.
+    parameters:
+        - name: --parameters
+          short-summary: Supply deployment parameter values.
+          long-summary: >
+            Parameters may be supplied from a parameters file, raw JSON (which can be loaded using `@<file path>` syntax, or as <KEY=VALUE> pairs. Parameters are evaluated in order, so when a value is assigned twice, the latter value will be used.
+            It is recommended that you supply your parameters file first, and then override selectively using KEY=VALUE syntax (example: --parameters params.json --parameters location=westus)
 """
 helps['group deployment wait'] = """
     type: command
diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_params.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_params.py
index 6f636d9cf..104f4cb98 100644
--- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_params.py
+++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_params.py
@@ -15,7 +15,7 @@ from azure.cli.core.commands.parameters import (ignore_type, resource_group_name
                                                 enum_choice_list, no_wait_type, file_type)
 from .custom import (get_policy_completion_list, get_policy_assignment_completion_list,
                      get_resource_types_completion_list, get_providers_completion_list)
-from ._validators import validate_deployment_name, validate_lock_parameters
+from ._validators import process_deployment_create_namespace, validate_lock_parameters, validate_deployment_parameters
 
 # BASIC PARAMETER CONFIGURATION
 
@@ -72,15 +72,19 @@ register_cli_argument('policy assignment', 'policy', help='policy name or fully
 register_cli_argument('group', 'tag', tag_type)
 register_cli_argument('group', 'tags', tags_type)
 register_cli_argument('group', 'resource_group_name', resource_group_name_type, options_list=('--name', '-n'))
+
 register_cli_argument('group deployment', 'resource_group_name', arg_type=resource_group_name_type, completer=get_resource_group_completion_list)
 register_cli_argument('group deployment', 'deployment_name', options_list=('--name', '-n'), required=True, help='The deployment name.')
-register_cli_argument('group deployment', 'parameters', action='append', completer=FilesCompleter(), help="provide deployment parameter values, either json string, or use `@<file path>` to load from a file. Can be repeated. If a the same parameter is present in multiple arguments, the last value wins.")
 register_cli_argument('group deployment', 'template_file', completer=FilesCompleter(), type=file_type, help="a template file path in the file system")
 register_cli_argument('group deployment', 'template_uri', help='a uri to a remote template file')
 register_cli_argument('group deployment', 'mode', help='Incremental (only add resources to resource group) or Complete (remove extra resources from resource group)', **enum_choice_list(DeploymentMode))
+
 register_cli_argument('group deployment create', 'deployment_name', options_list=('--name', '-n'), required=False,
-                      validator=validate_deployment_name, help='The deployment name. Default to template file base name')
+                      validator=process_deployment_create_namespace, help='The deployment name. Default to template file base name')
+register_cli_argument('group deployment', 'parameters', action='append', nargs='+', completer=FilesCompleter(), validator=validate_deployment_parameters)
+
 register_cli_argument('group deployment operation show', 'operation_ids', nargs='+', help='A list of operation ids to show')
+
 register_cli_argument('group export', 'include_comments', action='store_true')
 register_cli_argument('group export', 'include_parameter_default_value', action='store_true')
 register_cli_argument('group create', 'rg_name', options_list=('--name', '-n'), help='name of the new resource group', completer=None)
diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_validators.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_validators.py
index 4348e2b7b..fd6531210 100644
--- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_validators.py
+++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/_validators.py
@@ -14,7 +14,7 @@ except ImportError:
 from azure.cli.core.util import CLIError
 
 
-def validate_deployment_name(namespace):
+def _validate_deployment_name(namespace):
     # If missing,try come out with a name associated with the template name
     if namespace.deployment_name is None:
         template_filename = None
@@ -29,6 +29,55 @@ def validate_deployment_name(namespace):
             namespace.deployment_name = 'deployment1'
 
 
+def validate_deployment_parameters(namespace):
+
+    from azure.cli.core.util import shell_safe_json_parse, get_file_json
+
+    def _try_parse_json_object(value):
+        try:
+            parsed = shell_safe_json_parse(value)
+            return parsed.get('parameters', parsed)
+        except CLIError:
+            return None
+
+    def _try_load_file_object(value):
+        if os.path.isfile(value):
+            parsed = get_file_json(value, throw_on_empty=False)
+            return parsed.get('parameters', parsed)
+        return None
+
+    def _try_parse_key_value_object(parameters, value):
+        try:
+            key, value = value.split('=', 1)
+        except ValueError:
+            return False
+
+        try:
+            parameters[key] = {'value': shell_safe_json_parse(value)}
+        except (ValueError, CLIError):
+            parameters[key] = {'value': value}
+
+        return True
+
+    parameters = {}
+    for params in namespace.parameters or []:
+        for item in params:
+            if not _try_parse_key_value_object(parameters, item):
+                param_obj = _try_load_file_object(item) or _try_parse_json_object(item)
+                if not param_obj:
+                    raise CLIError('Unable to parse parameter: {}'.format(item))
+                parameters.update(param_obj)
+
+    namespace.parameters = parameters
+
+
+def process_deployment_create_namespace(namespace):
+    if (namespace.template_uri and namespace.template_file) or \
+            (not namespace.template_uri and not namespace.template_file):
+        raise CLIError('incorrect usage: --template-file FILE | --template-uri URI')
+    _validate_deployment_name(namespace)
+
+
 def internal_validate_lock_parameters(resource_group_name, resource_provider_namespace,
                                       parent_resource_path, resource_type, resource_name):
     if resource_group_name is None:
diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/custom.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/custom.py
index eac565632..7e578d808 100644
--- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/custom.py
+++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/custom.py
@@ -293,19 +293,6 @@ def _prompt_for_parameters(missing_parameters):
     return result
 
 
-def _merge_parameters(parameter_list):
-    parameters = None
-    for params in parameter_list or []:
-        params_object = shell_safe_json_parse(params)
-        if params_object:
-            params_object = params_object.get('parameters', params_object)
-        if parameters is None:
-            parameters = params_object
-        else:
-            parameters.update(params_object)
-    return parameters
-
-
 def _get_missing_parameters(parameters, template, prompt_fn):
     missing = _find_missing_parameters(parameters, template)
     if missing:
@@ -331,19 +318,13 @@ def _urlretrieve(url):
 
 def _deploy_arm_template_core(resource_group_name,  # pylint: disable=too-many-arguments
                               template_file=None, template_uri=None, deployment_name=None,
-                              parameter_list=None, mode='incremental', validate_only=False,
+                              parameters=None, mode='incremental', validate_only=False,
                               no_wait=False):
     DeploymentProperties, TemplateLink = get_sdk(ResourceType.MGMT_RESOURCE_RESOURCES,
                                                  'DeploymentProperties',
                                                  'TemplateLink',
                                                  mod='models')
-
-    if bool(template_uri) == bool(template_file):
-        raise CLIError('please provide either template file path or uri, but not both')
-
-    parameters = _merge_parameters(parameter_list)
-    if parameters is None:
-        parameters = {}
+    parameters = parameters or {}
     template = None
     template_link = None
     template_obj = None
diff --git a/src/command_modules/azure-cli-storage/HISTORY.rst b/src/command_modules/azure-cli-storage/HISTORY.rst
index 10bcec411..89d769875 100644
--- a/src/command_modules/azure-cli-storage/HISTORY.rst
+++ b/src/command_modules/azure-cli-storage/HISTORY.rst
@@ -3,6 +3,11 @@
 Release History
 ===============
 
+unreleased
++++++++++++++++++
+
+* Fix #3592: convert generator to a list in download batch command dry run mode
+
 2.0.7 (2017-05-30)
 ++++++++++++++++++
 
diff --git a/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/blob.py b/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/blob.py
index 5f09afc71..70c62ae87 100644
--- a/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/blob.py
+++ b/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/blob.py
@@ -109,7 +109,7 @@ def storage_blob_download_batch(client, source, destination, source_container_na
         The pattern is used for files globbing. The supported patterns are '*', '?', '[seq]',
         and '[!seq]'.
     """
-    source_blobs = collect_blobs(client, source_container_name, pattern)
+    source_blobs = list(collect_blobs(client, source_container_name, pattern))
 
     if dryrun:
         logger = get_az_logger(__name__)


Test patch:
diff --git a/src/azure-cli-testsdk/azure/cli/testsdk/__init__.py b/src/azure-cli-testsdk/azure/cli/testsdk/__init__.py
index bc8662e4b..ba11839ae 100644
--- a/src/azure-cli-testsdk/azure/cli/testsdk/__init__.py
+++ b/src/azure-cli-testsdk/azure/cli/testsdk/__init__.py
@@ -10,11 +10,11 @@ from .exceptions import CliTestError
 from .checkers import (JMESPathCheck, JMESPathCheckExists, JMESPathCheckGreaterThan, NoneCheck,
                        StringCheck, StringContainCheck)
 from .decorators import live_only, record_only, api_version_constraint
-from .utilities import get_sha1_hash, get_active_api_profile
+from .utilities import get_sha1_hash, get_active_api_profile, create_random_name
 
 __all__ = ['ScenarioTest', 'LiveTest', 'ResourceGroupPreparer', 'StorageAccountPreparer',
            'RoleBasedServicePrincipalPreparer', 'CliTestError', 'JMESPathCheck', 'JMESPathCheckExists', 'NoneCheck',
            'live_only', 'record_only', 'StringCheck', 'StringContainCheck', 'get_sha1_hash', 'KeyVaultPreparer',
-           'JMESPathCheckGreaterThan', 'api_version_constraint', 'get_active_api_profile']
+           'JMESPathCheckGreaterThan', 'api_version_constraint', 'get_active_api_profile', 'create_random_name']
 
 __version__ = '0.1.0+dev'
diff --git a/src/command_modules/azure-cli-resource/tests/crossrg_deploy_parameters.json b/src/command_modules/azure-cli-resource/tests/crossrg_deploy_parameters.json
deleted file mode 100644
index 326d026b5..000000000
--- a/src/command_modules/azure-cli-resource/tests/crossrg_deploy_parameters.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "CrossRg": {
-    "value": "crossrg5"
-  }
-}
\ No newline at end of file
diff --git a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrg_deployment.yaml b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrg_deployment.yaml
new file mode 100644
index 000000000..a7b30f4f1
--- /dev/null
+++ b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrg_deployment.yaml
@@ -0,0 +1,358 @@
+interactions:
+- request:
+    body: '{"location": "westus", "tags": {"use": "az-test"}}'
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group create]
+      Connection: [keep-alive]
+      Content-Length: ['50']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: PUT
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_alt000001?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001","name":"cli_test_cross_rg_alt000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['328']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:26:13 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+    status: {code: 201, message: Created}
+- request:
+    body: '{"location": "westus", "tags": {"use": "az-test"}}'
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group create]
+      Connection: [keep-alive]
+      Content-Length: ['50']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: PUT
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002","name":"cli_test_cross_rg_deploy000002","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['328']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:26:13 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+    status: {code: 201, message: Created}
+- request:
+    body: 'b''{"properties": {"template": {"parameters": {"StorageAccountName1": {"defaultValue":
+      "test1ddosdatest72", "type": "string"}, "CrossRg": {"defaultValue": "crossrg5",
+      "type": "string"}, "StorageAccountName2": {"defaultValue": "test1ddfosatdest73",
+      "type": "string"}}, "resources": [{"type": "Microsoft.Resources/deployments",
+      "apiVersion": "2017-05-10", "resourceGroup": "[parameters(\''CrossRg\'')]",
+      "properties": {"template": {"parameters": {}, "variables": {}, "resources":
+      [{"location": "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
+      "properties": {"accountType": "Standard_LRS"}, "name": "[parameters(\''StorageAccountName2\'')]"}],
+      "contentVersion": "1.0.0.0", "outputs": {"result": {"type": "string", "value":
+      "Hello World"}}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"},
+      "parameters": {}, "mode": "Incremental"}, "name": "nestedTemplate"}, {"location":
+      "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
+      "properties": {"accountType": "Standard_LRS"}, "name": "[parameters(\''StorageAccountName1\'')]"}],
+      "contentVersion": "1.0.0.0", "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+      "variables": {}}, "parameters": {"CrossRG": {"value": "cli_test_cross_rg_alt000001"},
+      "StorageAccountName1": {"value": "crossrgp5wppipax4z7o6e6w"}, "StorageAccountName2":
+      {"value": "crossrgzvmoqv4i6g5qorlsx"}}, "mode": "Incremental"}}'''
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment validate]
+      Connection: [keep-alive]
+      Content-Length: ['1523']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: POST
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment/validate?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/deployment_dry_run","name":"deployment_dry_run","properties":{"templateHash":"6460444355167324412","parameters":{"storageAccountName1":{"type":"String","value":"crossrgp5wppipax4z7o6e6w"},"crossRg":{"type":"String","value":"cli_test_cross_rg_alt000001"},"storageAccountName2":{"type":"String","value":"crossrgzvmoqv4i6g5qorlsx"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:14.8490106Z","duration":"PT0S","correlationId":"7b44a22d-229b-4ee2-9d82-d20752edfcc9","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"validatedResources":[{"apiVersion":"2015-06-15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001/providers/Microsoft.Storage/storageAccounts/crossrgzvmoqv4i6g5qorlsx","name":"crossrgzvmoqv4i6g5qorlsx","type":"Microsoft.Storage/storageAccounts","location":"West
+        US","properties":{"accountType":"Standard_LRS"}},{"apiVersion":"2015-06-15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Storage/storageAccounts/crossrgp5wppipax4z7o6e6w","name":"crossrgp5wppipax4z7o6e6w","type":"Microsoft.Storage/storageAccounts","location":"West
+        US","properties":{"accountType":"Standard_LRS"}}]}}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['1787']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:26:15 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      transfer-encoding: [chunked]
+      vary: [Accept-Encoding]
+      x-ms-ratelimit-remaining-subscription-writes: ['1196']
+    status: {code: 200, message: OK}
+- request:
+    body: 'b''{"properties": {"template": {"parameters": {"StorageAccountName1": {"defaultValue":
+      "test1ddosdatest72", "type": "string"}, "CrossRg": {"defaultValue": "crossrg5",
+      "type": "string"}, "StorageAccountName2": {"defaultValue": "test1ddfosatdest73",
+      "type": "string"}}, "resources": [{"type": "Microsoft.Resources/deployments",
+      "apiVersion": "2017-05-10", "resourceGroup": "[parameters(\''CrossRg\'')]",
+      "properties": {"template": {"parameters": {}, "variables": {}, "resources":
+      [{"location": "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
+      "properties": {"accountType": "Standard_LRS"}, "name": "[parameters(\''StorageAccountName2\'')]"}],
+      "contentVersion": "1.0.0.0", "outputs": {"result": {"type": "string", "value":
+      "Hello World"}}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"},
+      "parameters": {}, "mode": "Incremental"}, "name": "nestedTemplate"}, {"location":
+      "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
+      "properties": {"accountType": "Standard_LRS"}, "name": "[parameters(\''StorageAccountName1\'')]"}],
+      "contentVersion": "1.0.0.0", "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+      "variables": {}}, "parameters": {"CrossRG": {"value": "cli_test_cross_rg_alt000001"}},
+      "mode": "Incremental"}}'''
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment create]
+      Connection: [keep-alive]
+      Content-Length: ['1399']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: PUT
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"6460444355167324412","parameters":{"storageAccountName1":{"type":"String","value":"test1ddosdatest72"},"crossRg":{"type":"String","value":"cli_test_cross_rg_alt000001"},"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-06-08T22:26:16.4590461Z","duration":"PT0.1156655S","correlationId":"e34cadc6-f5fe-479f-8a01-44e81bb41b24","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[]}}'}
+    headers:
+      azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operationStatuses/08587046461091342319?api-version=2017-05-10']
+      cache-control: [no-cache]
+      content-length: ['998']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:26:15 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+    status: {code: 201, message: Created}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment create]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587046461091342319?api-version=2017-05-10
+  response:
+    body: {string: '{"status":"Running"}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['20']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:26:46 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment create]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587046461091342319?api-version=2017-05-10
+  response:
+    body: {string: '{"status":"Succeeded"}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['22']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:27:17 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment create]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"6460444355167324412","parameters":{"storageAccountName1":{"type":"String","value":"test1ddosdatest72"},"crossRg":{"type":"String","value":"cli_test_cross_rg_alt000001"},"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:47.1155209Z","duration":"PT30.7721403S","correlationId":"e34cadc6-f5fe-479f-8a01-44e81bb41b24","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"}]}}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['1449']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:27:16 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment list]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/?api-version=2017-05-10
+  response:
+    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"6460444355167324412","parameters":{"storageAccountName1":{"type":"String","value":"test1ddosdatest72"},"crossRg":{"type":"String","value":"cli_test_cross_rg_alt000001"},"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:47.1155209Z","duration":"PT30.7721403S","correlationId":"e34cadc6-f5fe-479f-8a01-44e81bb41b24","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"}]}}]}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['1461']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:27:17 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment show]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"6460444355167324412","parameters":{"storageAccountName1":{"type":"String","value":"test1ddosdatest72"},"crossRg":{"type":"String","value":"cli_test_cross_rg_alt000001"},"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:47.1155209Z","duration":"PT30.7721403S","correlationId":"e34cadc6-f5fe-479f-8a01-44e81bb41b24","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"}]}}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['1449']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:27:17 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group deployment operation list]
+      Connection: [keep-alive]
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002/deployments/mock-deployment/operations?api-version=2017-05-10
+  response:
+    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/6B3E905A350A7C59","operationId":"6B3E905A350A7C59","properties":{"provisioningOperation":"Create","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:37.0270964Z","duration":"PT20.0283016S","trackingId":"172cb8bd-7886-49e3-877a-e5ef6d9a8c4a","serviceRequestId":"e34cadc6-f5fe-479f-8a01-44e81bb41b24","statusCode":"OK","targetResource":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72","resourceType":"Microsoft.Storage/storageAccounts","resourceName":"test1ddosdatest72"}}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/CF64EB70E9F337E6","operationId":"CF64EB70E9F337E6","properties":{"provisioningOperation":"Create","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:46.9225479Z","duration":"PT29.9159043S","trackingId":"87c6f252-6875-4502-a74a-fda6f82dd85b","serviceRequestId":"093012e3-2474-4196-8031-cfae3b4b2220","statusCode":"OK","targetResource":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_alt000001/providers/Microsoft.Resources/deployments/nestedTemplate","resourceType":"Microsoft.Resources/deployments","resourceName":"nestedTemplate"}}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_cross_rg_deploy000002/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/08587046461091342319","operationId":"08587046461091342319","properties":{"provisioningOperation":"EvaluateDeploymentOutput","provisioningState":"Succeeded","timestamp":"2017-06-08T22:26:47.0894745Z","duration":"PT0.1183607S","trackingId":"f2549d7d-9ae3-424a-b604-6774cdd45af2","statusCode":"OK","statusMessage":null}}]}'}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['2306']
+      content-type: [application/json; charset=utf-8]
+      date: ['Thu, 08 Jun 2017 22:27:18 GMT']
+      expires: ['-1']
+      pragma: [no-cache]
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      vary: [Accept-Encoding]
+    status: {code: 200, message: OK}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group delete]
+      Connection: [keep-alive]
+      Content-Length: ['0']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: DELETE
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_deploy000002?api-version=2017-05-10
+  response:
+    body: {string: ''}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['0']
+      date: ['Thu, 08 Jun 2017 22:27:18 GMT']
+      expires: ['-1']
+      location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTEk6NUZURVNUOjVGQ1JPU1M6NUZSRzo1RkRFUExPWUhFSFJRVFlaWDZZWlk2Nnw5MDFFNjIyODI1NUZDNkFGLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
+      pragma: [no-cache]
+      retry-after: ['15']
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+    status: {code: 202, message: Accepted}
+- request:
+    body: null
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      CommandName: [group delete]
+      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.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/2.0.7+dev]
+      accept-language: [en-US]
+    method: DELETE
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/cli_test_cross_rg_alt000001?api-version=2017-05-10
+  response:
+    body: {string: ''}
+    headers:
+      cache-control: [no-cache]
+      content-length: ['0']
+      date: ['Thu, 08 Jun 2017 22:27:20 GMT']
+      expires: ['-1']
+      location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTEk6NUZURVNUOjVGQ1JPU1M6NUZSRzo1RkFMVFNWV1YzWTZHRVZLT1JBUUVDS3xEOTNDMjc4QTZCOENERjFDLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
+      pragma: [no-cache]
+      retry-after: ['15']
+      strict-transport-security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1196']
+    status: {code: 202, message: Accepted}
+version: 1
diff --git a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrgdeployment.yaml b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrgdeployment.yaml
deleted file mode 100644
index 5d855dc2b..000000000
--- a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_crossrgdeployment.yaml
+++ /dev/null
@@ -1,290 +0,0 @@
-interactions:
-- request:
-    body: '{"location": "westus", "tags": {"use": "az-test"}}'
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group create]
-      Connection: [keep-alive]
-      Content-Length: ['50']
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: PUT
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10
-  response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['328']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:08:59 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1199']
-    status: {code: 201, message: Created}
-- request:
-    body: '{"properties": {"mode": "Incremental", "parameters": {"CrossRg": {"value":
-      "crossrg5"}}, "template": {"resources": [{"resourceGroup": "[parameters(''CrossRg'')]",
-      "name": "nestedTemplate", "apiVersion": "2017-05-10", "type": "Microsoft.Resources/deployments",
-      "properties": {"mode": "Incremental", "parameters": {}, "template": {"contentVersion":
-      "1.0.0.0", "resources": [{"name": "[parameters(''StorageAccountName2'')]", "location":
-      "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
-      "properties": {"accountType": "Standard_LRS"}}], "parameters": {}, "variables":
-      {}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
-      "outputs": {"result": {"value": "Hello World", "type": "string"}}}}}, {"name":
-      "[parameters(''StorageAccountName1'')]", "location": "West US", "apiVersion":
-      "2015-06-15", "type": "Microsoft.Storage/storageAccounts", "properties": {"accountType":
-      "Standard_LRS"}}], "parameters": {"StorageAccountName2": {"defaultValue": "test1ddfosatdest73",
-      "type": "string"}, "CrossRg": {"defaultValue": "crossrg5", "type": "string"},
-      "StorageAccountName1": {"defaultValue": "test1ddosdatest72", "type": "string"}},
-      "contentVersion": "1.0.0.0", "variables": {}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"}}}'
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment validate]
-      Connection: [keep-alive]
-      Content-Length: ['1332']
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: POST
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment/validate?api-version=2017-05-10
-  response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/deployment_dry_run","name":"deployment_dry_run","properties":{"templateHash":"15881258606218895679","parameters":{"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"},"crossRg":{"type":"String","value":"crossrg5"},"storageAccountName1":{"type":"String","value":"test1ddosdatest72"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:01.5553623Z","duration":"PT0S","correlationId":"55b7baef-a55c-40d9-9194-2478bb6e9842","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"validatedResources":[{"apiVersion":"2015-06-15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/crossrg5/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73","name":"test1ddfosatdest73","type":"Microsoft.Storage/storageAccounts","location":"West
-        US","properties":{"accountType":"Standard_LRS"}},{"apiVersion":"2015-06-15","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72","name":"test1ddosdatest72","type":"Microsoft.Storage/storageAccounts","location":"West
-        US","properties":{"accountType":"Standard_LRS"}}]}}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['1615']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:09:02 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      transfer-encoding: [chunked]
-      vary: [Accept-Encoding]
-      x-ms-ratelimit-remaining-subscription-writes: ['1198']
-    status: {code: 200, message: OK}
-- request:
-    body: '{"properties": {"mode": "Incremental", "parameters": {"CrossRg": {"value":
-      "crossrg5"}}, "template": {"resources": [{"resourceGroup": "[parameters(''CrossRg'')]",
-      "name": "nestedTemplate", "apiVersion": "2017-05-10", "type": "Microsoft.Resources/deployments",
-      "properties": {"mode": "Incremental", "parameters": {}, "template": {"contentVersion":
-      "1.0.0.0", "resources": [{"name": "[parameters(''StorageAccountName2'')]", "location":
-      "West US", "apiVersion": "2015-06-15", "type": "Microsoft.Storage/storageAccounts",
-      "properties": {"accountType": "Standard_LRS"}}], "parameters": {}, "variables":
-      {}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
-      "outputs": {"result": {"value": "Hello World", "type": "string"}}}}}, {"name":
-      "[parameters(''StorageAccountName1'')]", "location": "West US", "apiVersion":
-      "2015-06-15", "type": "Microsoft.Storage/storageAccounts", "properties": {"accountType":
-      "Standard_LRS"}}], "parameters": {"StorageAccountName2": {"defaultValue": "test1ddfosatdest73",
-      "type": "string"}, "CrossRg": {"defaultValue": "crossrg5", "type": "string"},
-      "StorageAccountName1": {"defaultValue": "test1ddosdatest72", "type": "string"}},
-      "contentVersion": "1.0.0.0", "variables": {}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"}}}'
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment create]
-      Connection: [keep-alive]
-      Content-Length: ['1332']
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: PUT
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
-  response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"15881258606218895679","parameters":{"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"},"crossRg":{"type":"String","value":"crossrg5"},"storageAccountName1":{"type":"String","value":"test1ddosdatest72"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-05-09T00:09:03.6324823Z","duration":"PT0.1641726S","correlationId":"945b9424-c962-48d6-a889-95c77673a85b","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[]}}'}
-    headers:
-      azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operationStatuses/08587073183420093176?api-version=2017-05-10']
-      cache-control: [no-cache]
-      content-length: ['932']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:09:03 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1194']
-    status: {code: 201, message: Created}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment create]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587073183420093176?api-version=2017-05-10
-  response:
-    body: {string: '{"status":"Running"}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['20']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:09:33 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment create]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587073183420093176?api-version=2017-05-10
-  response:
-    body: {string: '{"status":"Succeeded"}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['22']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:10:03 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment create]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
-  response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"15881258606218895679","parameters":{"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"},"crossRg":{"type":"String","value":"crossrg5"},"storageAccountName1":{"type":"String","value":"test1ddosdatest72"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:39.4989341Z","duration":"PT36.0306244S","correlationId":"945b9424-c962-48d6-a889-95c77673a85b","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/crossrg5/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"}]}}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['1316']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:10:03 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment list]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/?api-version=2017-05-10
-  response:
-    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"15881258606218895679","parameters":{"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"},"crossRg":{"type":"String","value":"crossrg5"},"storageAccountName1":{"type":"String","value":"test1ddosdatest72"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:39.4989341Z","duration":"PT36.0306244S","correlationId":"945b9424-c962-48d6-a889-95c77673a85b","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/crossrg5/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"}]}}]}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['1328']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:10:05 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment show]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
-  response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment","name":"azure-cli-crossrgdeployment","properties":{"templateHash":"15881258606218895679","parameters":{"storageAccountName2":{"type":"String","value":"test1ddfosatdest73"},"crossRg":{"type":"String","value":"crossrg5"},"storageAccountName1":{"type":"String","value":"test1ddosdatest72"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:39.4989341Z","duration":"PT36.0306244S","correlationId":"945b9424-c962-48d6-a889-95c77673a85b","providers":[{"namespace":"Microsoft.Resources","resourceTypes":[{"resourceType":"deployments","locations":[null]}]},{"namespace":"Microsoft.Storage","resourceTypes":[{"resourceType":"storageAccounts","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/crossrg5/providers/Microsoft.Storage/storageAccounts/test1ddfosatdest73"}]}}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['1316']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:10:05 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group deployment operation list]
-      Connection: [keep-alive]
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001/deployments/mock-deployment/operations?api-version=2017-05-10
-  response:
-    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/A342124B645FB82B","operationId":"A342124B645FB82B","properties":{"provisioningOperation":"Create","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:29.4790792Z","duration":"PT25.4957973S","trackingId":"8ed1b6ed-3209-4800-8f07-04593e24f558","serviceRequestId":"945b9424-c962-48d6-a889-95c77673a85b","statusCode":"OK","targetResource":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Storage/storageAccounts/test1ddosdatest72","resourceType":"Microsoft.Storage/storageAccounts","resourceName":"test1ddosdatest72"}}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/8B56071B2BB8A55C","operationId":"8B56071B2BB8A55C","properties":{"provisioningOperation":"Create","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:37.1004512Z","duration":"PT33.119443S","trackingId":"7bf79e18-9ef7-4cc3-bfae-688a63a76343","serviceRequestId":"685e1760-40fa-49f0-a170-0fbc4945bce3","statusCode":"OK","targetResource":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/crossrg5/providers/Microsoft.Resources/deployments/nestedTemplate","resourceType":"Microsoft.Resources/deployments","resourceName":"nestedTemplate"}}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Resources/deployments/azure-cli-crossrgdeployment/operations/08587073183420093176","operationId":"08587073183420093176","properties":{"provisioningOperation":"EvaluateDeploymentOutput","provisioningState":"Succeeded","timestamp":"2017-05-09T00:09:39.2608113Z","duration":"PT1.5100056S","trackingId":"b930c4d4-1174-4258-a7a0-fc01c721198e","statusCode":"OK","statusMessage":null}}]}'}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['2238']
-      content-type: [application/json; charset=utf-8]
-      date: ['Tue, 09 May 2017 00:10:06 GMT']
-      expires: ['-1']
-      pragma: [no-cache]
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      vary: [Accept-Encoding]
-    status: {code: 200, message: OK}
-- request:
-    body: null
-    headers:
-      Accept: [application/json]
-      Accept-Encoding: ['gzip, deflate']
-      CommandName: [group delete]
-      Connection: [keep-alive]
-      Content-Length: ['0']
-      Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.4.3 (Windows-8-6.2.9200) requests/2.9.1 msrest/0.4.7 msrest_azure/0.4.7
-          resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python AZURECLI/2.0.5+dev]
-      accept-language: [en-US]
-    method: DELETE
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10
-  response:
-    body: {string: ''}
-    headers:
-      cache-control: [no-cache]
-      content-length: ['0']
-      date: ['Tue, 09 May 2017 00:10:06 GMT']
-      expires: ['-1']
-      location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdPTlhZTEY3QkJDWFpUSEFTTFVOSFJJUVpaN0FKS0xGRVZJWnwyMTMzNjk4MUIyQTRERUVDLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
-      pragma: [no-cache]
-      retry-after: ['15']
-      strict-transport-security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1197']
-    status: {code: 202, message: Accepted}
-version: 1
diff --git a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment.yaml b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment.yaml
index 66d6e1d6a..5e8b598db 100644
--- a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment.yaml
+++ b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment.yaml
@@ -1,102 +1,221 @@
 interactions:
 - request:
-    body: !!binary |
-      eyJwcm9wZXJ0aWVzIjogeyJwYXJhbWV0ZXJzIjogeyJsb2NhdGlvbiI6IHsidmFsdWUiOiAid2Vz
-      dHVzIn0sICJuYW1lIjogeyJ2YWx1ZSI6ICJhenVyZS1jbGktZGVwbG95LXRlc3QtbnNnMSJ9fSwg
-      InRlbXBsYXRlIjogeyJ2YXJpYWJsZXMiOiB7fSwgIiRzY2hlbWEiOiAiaHR0cHM6Ly9zY2hlbWEu
-      bWFuYWdlbWVudC5henVyZS5jb20vc2NoZW1hcy8yMDE1LTAxLTAxL2RlcGxveW1lbnRUZW1wbGF0
-      ZS5qc29uIyIsICJyZXNvdXJjZXMiOiBbeyJuYW1lIjogIltwYXJhbWV0ZXJzKCduYW1lJyldIiwg
-      ImRlcGVuZHNPbiI6IFtdLCAidHlwZSI6ICJNaWNyb3NvZnQuTmV0d29yay9uZXR3b3JrU2VjdXJp
-      dHlHcm91cHMiLCAicHJvcGVydGllcyI6IHsic2VjdXJpdHlSdWxlcyI6IFtdfSwgImxvY2F0aW9u
-      IjogIltwYXJhbWV0ZXJzKCdsb2NhdGlvbicpXSIsICJhcGlWZXJzaW9uIjogIjIwMTUtMDYtMTUi
-      fV0sICJjb250ZW50VmVyc2lvbiI6ICIxLjAuMC4wIiwgInBhcmFtZXRlcnMiOiB7ImxvY2F0aW9u
-      IjogeyJtZXRhZGF0YSI6IHsiZGVzY3JpcHRpb24iOiAiTG9jYXRpb24gZm9yIHRoZSBuZXR3b3Jr
-      IHNlY3VyaXR5IGdyb3VwLiJ9LCAiZGVmYXVsdFZhbHVlIjogIltyZXNvdXJjZUdyb3VwKCkubG9j
-      YXRpb25dIiwgInR5cGUiOiAic3RyaW5nIn0sICJuYW1lIjogeyJtZXRhZGF0YSI6IHsiZGVzY3Jp
-      cHRpb24iOiAiTmFtZSBvZiB0aGUgbmV0d29yayBzZWN1cml0eSBncm91cC4ifSwgInR5cGUiOiAi
-      c3RyaW5nIn19LCAib3V0cHV0cyI6IHsiTmV3TlNHIjogeyJ2YWx1ZSI6ICJbcmVmZXJlbmNlKHBh
-      cmFtZXRlcnMoJ25hbWUnKSldIiwgInR5cGUiOiAib2JqZWN0In19fSwgIm1vZGUiOiAiSW5jcmVt
-      ZW50YWwifX0=
+    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.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
+      accept-language: [en-US]
+      x-ms-client-request-id: [984358f0-4c90-11e7-8df4-a0b3ccf7272a]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test?api-version=2017-05-10
+  response:
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test","name":"azure-cli-deployment-test","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'}
+    headers:
+      Cache-Control: [no-cache]
+      Content-Type: [application/json; charset=utf-8]
+      Date: ['Thu, 08 Jun 2017 21:22:36 GMT']
+      Expires: ['-1']
+      Pragma: [no-cache]
+      Strict-Transport-Security: [max-age=31536000; includeSubDomains]
+      Vary: [Accept-Encoding]
+      content-length: ['240']
+    status: {code: 200, message: OK}
+- request:
+    body: '{"location": "westus", "properties": {"dhcpOptions": {}, "subnets": [{"properties":
+      {"addressPrefix": "10.0.0.0/24"}, "name": "subnet1"}], "addressSpace": {"addressPrefixes":
+      ["10.0.0.0/16"]}}, "tags": {}}'
+    headers:
+      Accept: [application/json]
+      Accept-Encoding: ['gzip, deflate']
+      Connection: [keep-alive]
+      Content-Length: ['205']
+      Content-Type: [application/json; charset=utf-8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 networkmanagementclient/1.0.0rc3 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
+      accept-language: [en-US]
+      x-ms-client-request-id: [9864d83e-4c90-11e7-a276-a0b3ccf7272a]
+    method: PUT
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1?api-version=2017-03-01
+  response:
+    body: {string: "{\r\n  \"name\": \"vnet1\",\r\n  \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1\"\
+        ,\r\n  \"etag\": \"W/\\\"afaa273d-fae6-4176-8e47-5f3f865704fe\\\"\",\r\n \
+        \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n  \"location\": \"westus\"\
+        ,\r\n  \"tags\": {},\r\n  \"properties\": {\r\n    \"provisioningState\":\
+        \ \"Updating\",\r\n    \"resourceGuid\": \"240e9c40-73c7-4893-83a0-d30f69019829\"\
+        ,\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    },\r\n    \"subnets\": [\r\n      {\r\n        \"name\": \"subnet1\"\
+        ,\r\n        \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1\"\
+        ,\r\n        \"etag\": \"W/\\\"afaa273d-fae6-4176-8e47-5f3f865704fe\\\"\"\
+        ,\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  }\r\n}"}
+    headers:
+      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/8c6d54b6-72de-49cb-87be-4a6bb7702d08?api-version=2017-03-01']
+      Cache-Control: [no-cache]
+      Content-Length: ['1072']
+      Content-Type: [application/json; charset=utf-8]
+      Date: ['Thu, 08 Jun 2017 21:22:36 GMT']
+      Expires: ['-1']
+      Pragma: [no-cache]
+      Retry-After: ['3']
+      Server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0]
+      Strict-Transport-Security: [max-age=31536000; includeSubDomains]
+      x-ms-ratelimit-remaining-subscription-writes: ['1195']
+    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.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 networkmanagementclient/1.0.0rc3 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
+      accept-language: [en-US]
+      x-ms-client-request-id: [9864d83e-4c90-11e7-a276-a0b3ccf7272a]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/8c6d54b6-72de-49cb-87be-4a6bb7702d08?api-version=2017-03-01
+  response:
+    body: {string: "{\r\n  \"status\": \"Succeeded\"\r\n}"}
+    headers:
+      Cache-Control: [no-cache]
+      Content-Type: [application/json; charset=utf-8]
+      Date: ['Thu, 08 Jun 2017 21: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]
+      content-length: ['29']
+    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.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 networkmanagementclient/1.0.0rc3 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
+      accept-language: [en-US]
+      x-ms-client-request-id: [9864d83e-4c90-11e7-a276-a0b3ccf7272a]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1?api-version=2017-03-01
+  response:
+    body: {string: "{\r\n  \"name\": \"vnet1\",\r\n  \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1\"\
+        ,\r\n  \"etag\": \"W/\\\"8a5432ce-5584-4583-be8a-b322c796f079\\\"\",\r\n \
+        \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n  \"location\": \"westus\"\
+        ,\r\n  \"tags\": {},\r\n  \"properties\": {\r\n    \"provisioningState\":\
+        \ \"Succeeded\",\r\n    \"resourceGuid\": \"240e9c40-73c7-4893-83a0-d30f69019829\"\
+        ,\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    },\r\n    \"subnets\": [\r\n      {\r\n        \"name\": \"subnet1\"\
+        ,\r\n        \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1\"\
+        ,\r\n        \"etag\": \"W/\\\"8a5432ce-5584-4583-be8a-b322c796f079\\\"\"\
+        ,\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  }\r\n}"}
+    headers:
+      Cache-Control: [no-cache]
+      Content-Type: [application/json; charset=utf-8]
+      Date: ['Thu, 08 Jun 2017 21:22:41 GMT']
+      ETag: [W/"8a5432ce-5584-4583-be8a-b322c796f079"]
+      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]
+      content-length: ['1074']
+    status: {code: 200, message: OK}
+- request:
+    body: '{"properties": {"mode": "Incremental", "template": {"resources": [{"dependsOn":
+      [], "properties": {"backendAddressPools": "[parameters(''backendAddressPools'')]",
+      "frontendIPConfigurations": [{"properties": {"privateIPAllocationMethod": "[parameters(''privateIPAllocationMethod'')]",
+      "subnet": {"id": "[parameters(''subnetId'')]"}}, "name": "LoadBalancerFrontEnd"}]},
+      "name": "[parameters(''name'')]", "location": "[parameters(''location'')]",
+      "apiVersion": "2016-03-30", "type": "Microsoft.Network/loadBalancers"}], "contentVersion":
+      "1.0.0.0", "parameters": {"location": {"type": "string"}, "privateIPAllocationMethod":
+      {"type": "string"}, "backendAddressPools": {"type": "array"}, "name": {"type":
+      "string"}, "subnetId": {"type": "string"}}, "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"},
+      "parameters": {"location": {"value": "westus"}, "privateIPAllocationMethod":
+      {"value": "Dynamic"}, "backendAddressPools": {"value": [{"name": "bepool1"},
+      {"name": "bepool2"}]}, "name": {"value": "test-lb"}, "subnetId": {"value": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}}}}'
     headers:
       Accept: [application/json]
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
-      Content-Length: ['863']
+      Content-Length: ['1228']
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [390fb6ac-a631-11e6-aef4-f4b7e2e85440]
+      x-ms-client-request-id: [9ad7925e-4c90-11e7-9479-a0b3ccf7272a]
     method: POST
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment/validate?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR8Xs
-        o0cf3W3Wk2ZaF6u2qJbN3Z3J7vmn+w92t3cn5zvb+7NZtp3l03vb08nDvQd75zsP7z/cuVvnTbWu
-        p/nndbVeNXezH6zrfHtaFtuzfFVW14t82W63edPeXdXVZTHL6+buF8W0rprqvB2/0pebu661//vv
-        P6uvf/96vfxo9NEyW+SEYvQ7Ar3K67bIm48e/eKPVllNbVvqCX+V1TTDcPB7e70CjNdtXSwv6L3L
-        rFzjgyvCb9189EtML8Mtu8PjoW0vm4vdj34Jvb6oZmh1tpzWOXDMSnqXsLssGkKBQL1usxYtjqfT
-        fNXmM/q6LRYEI1us6OO9nd1Pt3d3t3cevtnZf7Sz+2h/b/zg4f7D/d2fopazda1D+ejlm53X9Mm0
-        quu85A/PMIH5bJJ/+mD2YPv+3uz+9v6nu5Pth3t7B9sP789ms/18Jzs/uE+vMUaYio8efe8X85ib
-        VTYFXm5qXuTtVVW/pdZmht8QTeQN/xN6aSlNX+fTdV2018IJ9KIhPV4yNP7+L6H/aCj5Kl/O8uWU
-        5+x79AlRuJgRcWaWJ+jzX/xRtip+khAlKNQRkef+9g5RCIP4ueFYJcvd6Jh7sBiOsIfhrU0sRMwg
-        FL1lf/SCoTG9pBTm6fXEodFXXq1LfPC97/8SmoJf8v8Aj69MlPIDAAA=
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/deployment_dry_run","name":"deployment_dry_run","properties":{"templateHash":"18048340065001902796","parameters":{"location":{"type":"String","value":"westus"},"privateIPAllocationMethod":{"type":"String","value":"Dynamic"},"backendAddressPools":{"type":"Array","value":[{"name":"bepool1"},{"name":"bepool2"}]},"name":{"type":"String","value":"test-lb"},"subnetId":{"type":"String","value":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:42.0844954Z","duration":"PT0S","correlationId":"522bdd66-c165-41e3-8913-93f10b835055","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"loadBalancers","locations":["westus"]}]}],"dependencies":[],"validatedResources":[{"apiVersion":"2016-03-30","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/loadBalancers/test-lb","name":"test-lb","type":"Microsoft.Network/loadBalancers","location":"westus","properties":{"backendAddressPools":[{"name":"bepool1"},{"name":"bepool2"}],"frontendIPConfigurations":[{"properties":{"privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"name":"LoadBalancerFrontEnd"}]}}]}}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['611']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:01:42 GMT']
+      Date: ['Thu, 08 Jun 2017 21:22:41 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
+      Transfer-Encoding: [chunked]
       Vary: [Accept-Encoding]
-      x-ms-ratelimit-remaining-subscription-writes: ['1198']
+      content-length: ['1676']
+      x-ms-ratelimit-remaining-subscription-writes: ['1195']
     status: {code: 200, message: OK}
 - request:
-    body: !!binary |
-      eyJwcm9wZXJ0aWVzIjogeyJwYXJhbWV0ZXJzIjogeyJsb2NhdGlvbiI6IHsidmFsdWUiOiAid2Vz
-      dHVzIn0sICJuYW1lIjogeyJ2YWx1ZSI6ICJhenVyZS1jbGktZGVwbG95LXRlc3QtbnNnMSJ9fSwg
-      InRlbXBsYXRlIjogeyJ2YXJpYWJsZXMiOiB7fSwgIiRzY2hlbWEiOiAiaHR0cHM6Ly9zY2hlbWEu
-      bWFuYWdlbWVudC5henVyZS5jb20vc2NoZW1hcy8yMDE1LTAxLTAxL2RlcGxveW1lbnRUZW1wbGF0
-      ZS5qc29uIyIsICJyZXNvdXJjZXMiOiBbeyJuYW1lIjogIltwYXJhbWV0ZXJzKCduYW1lJyldIiwg
-      ImRlcGVuZHNPbiI6IFtdLCAidHlwZSI6ICJNaWNyb3NvZnQuTmV0d29yay9uZXR3b3JrU2VjdXJp
-      dHlHcm91cHMiLCAicHJvcGVydGllcyI6IHsic2VjdXJpdHlSdWxlcyI6IFtdfSwgImxvY2F0aW9u
-      IjogIltwYXJhbWV0ZXJzKCdsb2NhdGlvbicpXSIsICJhcGlWZXJzaW9uIjogIjIwMTUtMDYtMTUi
-      fV0sICJjb250ZW50VmVyc2lvbiI6ICIxLjAuMC4wIiwgInBhcmFtZXRlcnMiOiB7ImxvY2F0aW9u
-      IjogeyJtZXRhZGF0YSI6IHsiZGVzY3JpcHRpb24iOiAiTG9jYXRpb24gZm9yIHRoZSBuZXR3b3Jr
-      IHNlY3VyaXR5IGdyb3VwLiJ9LCAiZGVmYXVsdFZhbHVlIjogIltyZXNvdXJjZUdyb3VwKCkubG9j
-      YXRpb25dIiwgInR5cGUiOiAic3RyaW5nIn0sICJuYW1lIjogeyJtZXRhZGF0YSI6IHsiZGVzY3Jp
-      cHRpb24iOiAiTmFtZSBvZiB0aGUgbmV0d29yayBzZWN1cml0eSBncm91cC4ifSwgInR5cGUiOiAi
-      c3RyaW5nIn19LCAib3V0cHV0cyI6IHsiTmV3TlNHIjogeyJ2YWx1ZSI6ICJbcmVmZXJlbmNlKHBh
-      cmFtZXRlcnMoJ25hbWUnKSldIiwgInR5cGUiOiAib2JqZWN0In19fSwgIm1vZGUiOiAiSW5jcmVt
-      ZW50YWwifX0=
+    body: '{"properties": {"mode": "Incremental", "template": {"resources": [{"dependsOn":
+      [], "properties": {"backendAddressPools": "[parameters(''backendAddressPools'')]",
+      "frontendIPConfigurations": [{"properties": {"privateIPAllocationMethod": "[parameters(''privateIPAllocationMethod'')]",
+      "subnet": {"id": "[parameters(''subnetId'')]"}}, "name": "LoadBalancerFrontEnd"}]},
+      "name": "[parameters(''name'')]", "location": "[parameters(''location'')]",
+      "apiVersion": "2016-03-30", "type": "Microsoft.Network/loadBalancers"}], "contentVersion":
+      "1.0.0.0", "parameters": {"location": {"type": "string"}, "privateIPAllocationMethod":
+      {"type": "string"}, "backendAddressPools": {"type": "array"}, "name": {"type":
+      "string"}, "subnetId": {"type": "string"}}, "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"},
+      "parameters": {"location": {"value": "westus"}, "privateIPAllocationMethod":
+      {"value": "Dynamic"}, "backendAddressPools": {"value": [{"name": "bepool1"},
+      {"name": "bepool2"}]}, "name": {"value": "test-lb"}, "subnetId": {"value": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}}}}'
     headers:
       Accept: [application/json]
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
-      Content-Length: ['863']
+      Content-Length: ['1228']
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [398ced0a-a631-11e6-af10-f4b7e2e85440]
+      x-ms-client-request-id: [9b58cf52-4c90-11e7-9b16-a0b3ccf7272a]
     method: PUT
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2016-11-09T04:01:43.629944Z","duration":"PT0.1645357S","correlationId":"cbe97827-5a27-47bc-b9cb-241d4a2bc49f","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"18048340065001902796","parameters":{"location":{"type":"String","value":"westus"},"privateIPAllocationMethod":{"type":"String","value":"Dynamic"},"backendAddressPools":{"type":"Array","value":[{"name":"bepool1"},{"name":"bepool2"}]},"name":{"type":"String","value":"test-lb"},"subnetId":{"type":"String","value":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-06-08T21:22:43.2188091Z","duration":"PT0.2770006S","correlationId":"c18f33be-ece9-4c12-96b9-eabd6fd111ff","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"loadBalancers","locations":["westus"]}]}],"dependencies":[]}}'}
     headers:
-      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operationStatuses/08587229427820122645?api-version=2017-05-10']
+      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operationStatuses/08587046499225358060?api-version=2017-05-10']
       Cache-Control: [no-cache]
-      Content-Length: ['655']
+      Content-Length: ['1028']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:01:43 GMT']
+      Date: ['Thu, 08 Jun 2017 21:22:42 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1198']
+      x-ms-ratelimit-remaining-subscription-writes: ['1197']
     status: {code: 201, message: Created}
 - request:
     body: null
@@ -105,28 +224,24 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [398ced0a-a631-11e6-af10-f4b7e2e85440]
+      x-ms-client-request-id: [9b58cf52-4c90-11e7-9b16-a0b3ccf7272a]
     method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587229427820122645?api-version=2017-05-10
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587046499225358060?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR02b
-        tevmo0cfvV5Pp3k+y2cf/ZL/ByCIe+QWAAAA
+    body: {string: '{"status":"Succeeded"}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['141']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:02:13 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:13 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
+      content-length: ['22']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -135,45 +250,24 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [398ced0a-a631-11e6-af10-f4b7e2e85440]
+      x-ms-client-request-id: [9b58cf52-4c90-11e7-9b16-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR8Xs
-        o0cf3W3Wk2ZaF6u2qJbN3Z3J7vmn+w92t3cn5zvb+7NZtp3l03vb08nDvQd75zsP7z/cuVvnTbWu
-        p/nndbVeNXezH6zrfHtaFtuzfFVW14t82W63edPeXdXVZTHL6+buF8W0rprqvB2/0pebu651HMZH
-        o4+W2SInJAe+JfCrvG6LvPno0S/+aJXV1Lql3vBXWU0zDAm/t9crQHnd1sXygt67zMo1PrgiHNfN
-        R7/E9DPcsosAD2972VzsfvRL6PVFNUOrs+W0zoFbVtK7hN1l0RAKBOp1m7Vo8Xo9neb5LJ/R922x
-        ICDZYkWf7+3sfrq9u7u98/DNzv6jnd1H9x+O93f373+6//CnqOlsXetgPnr5Zvf++OH+w937n376
-        mr6aVnWdl/ztGeZzOskfPjjYe7B9P6N/9h9MptuTh9PJ9t7+7mw/25tM9x+e02uMHGbmo0ff+8U8
-        /GaVTYGim6kXeXtV1W+ptZnwN0QeecP/hF5aStPX+XRdF+21MAa9aGYBLxlyf/+X0H80pnyVL2f5
-        csrT9z36pFq3q3VLfxBC+dWL15/jN52RLyc/nU8x5zojNN0YwQbyGgw/XzOf59l073z3nCYxf/Bw
-        e5/YfPvgHvH5ZPrpjGg22b2/e0BvNTqCV+vSoDXLz7N12ZqxmW8IyQxM89FxWVZXP0kUOFs+qdZL
-        9M093v1hS5bO111CBT8NwgOwGA6zMAlif4R3I8PK2+yCBvbdu7/vR3vZA6LaLnHYQ2Lb/dnuwfbD
-        B/Rbdv5wL9892H/w4H72+35E7xCivowC7Q2TNsstxegbRiEtlhP0n7Z1dn5eTNPzulqkWVmmP/lF
-        Q1+mP/ni9A29SqDbalqV9N636E+h48uqbl9lywv0g08JflssmSW7X8kLx7MZzUHzss7Pi3f0zU8W
-        dbvOSiUtNfMg3Ng2o4E1NG4ZCH2wqosKFP7o0af3d3Z2CFpRE1sTLGp0JuOEQgl56xgz97zKZk+y
-        MltO89rNyP9vGG3DGP/fxHXAMi0JzXSieNLrBP5ngfN6FKGWHpBucwC6gd92CcAN/PY0X17Ty474
-        /39gsN6gftgcBQRYYxVCcsNU1JAA/SzwDr7xXop9bXkFyNHfPqsQr9D7N7AKUVTsw5fr1hD2/w/c
-        EhvXD5thGIeU/CEmu2EX1UHER7B8bWV//f+RESSi85j7rHa2JNc+nJb/37BbZGz/L2U5gym9T/B/
-        FngN33gvdb/2+r+BsTrWjkjLIwsYC7qP3qbvDNn//8BS/VH9sJkJGDDXdPmJWhKkHz7b4GvLL8CO
-        /vbZhfiF3o+zy/d/CbHMRzQSCk5t8oIDQGaWD5/Fj9DF/wOany5SjxEAAA==
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"18048340065001902796","parameters":{"location":{"type":"String","value":"westus"},"privateIPAllocationMethod":{"type":"String","value":"Dynamic"},"backendAddressPools":{"type":"Array","value":[{"name":"bepool1"},{"name":"bepool2"}]},"name":{"type":"String","value":"test-lb"},"subnetId":{"type":"String","value":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:51.7379575Z","duration":"PT8.796149S","correlationId":"c18f33be-ece9-4c12-96b9-eabd6fd111ff","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"loadBalancers","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/loadBalancers/test-lb"}]}}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['1126']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:02:14 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:13 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
+      content-length: ['1206']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -182,45 +276,24 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [4cb064fe-a631-11e6-a719-f4b7e2e85440]
+      x-ms-client-request-id: [ae78895c-4c90-11e7-adda-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR5dZ
-        uc4/evS9X/xRMfvo0Ud3m/WkmdbFqi2qZXN3Z7J7/un+g93t3cn5zvb+bJZtZ/n03vZ08nDvwd75
-        zsP7D3fu1nlTretp/nldrVfN3ewH6zrfnpbF9ixfldX1Il+2223etHdXdXVZzPK6uftFMa2rpjpv
-        x6/05eauax2H8dHoo2W2IFw/GviWwK/yui3y5qNHv/ijVVZT65Z6w19lNc0wJPzeXq8A5XVbF8sL
-        ek9J8NEV4bhuPvolpp/hll0EeHjby+Zi96NfQq8vqhlanS2ndQ7cspLeJewui4ZQIFCv26xFi9fr
-        6TTPZ/mMvm+LBQHJFiv6fG9n99Pt3d3tnYdvdvYf7ew+uv9wvL+7f//T/Yc/RU1n61oH89HLN7v3
-        xw/3H+7e//TT1/TVtKrrvORvzzCf00n+8MHB3oPt+xn9s/9gMt2ePJxOtvf2d2f72d5kuv/wnF5j
-        5DAzzAkYfrPKpkDRzdSLvL2q6rfU2kz4GyKPvOF/Qi8tpenrfLqui/ZaGINeNLOAlwy5v/9L6D8a
-        U77Kl7N8OeXp+x59Uq3b1bqlPwih/OrF68/xm87Il5OfzqeYc50Rmm6MYAN5DYafr5nP82y6d757
-        TpOYP3i4vU9svn1wj/h8Mv10RjSb7N7fPaC3Gh3Bq3Vp0Jrl59m6bM3YzDeEZAam+ei4LKurnyQK
-        nC2fVOsl+uYe7/6wJUvn6y6hgp8G4QFYDIdZmASxP8K7kWHlbXZBA/vu3d/3o73sAVFtlzjsIbHt
-        /mz3YPvhA/otO3+4l+8e7D94cD/7fT+idwhRX0aB9oZJm+WWYvQNo5AWywn6T9s6Oz8vpul5XS3S
-        rCzTn/yioS/Tn3xx+oZeJdBtNa1Keu9b9KfQ8WVVt6+y5QX6wacEvy2WzJLdr+SF49mM5qB5Wefn
-        xTv65ieLul1npZKWmnkQbmyb0cAaGrcMhD5Y1UUFCn/06NP7Ozs7BK2oia0JFjU6k3FCoYS8dYyZ
-        e15lsydZmS2nee1m5P83jLZhjP9v4jpgmZaEZjpRPOl1Av+zwHk9ilBLD0i3OQDdwG+7BOAGfnua
-        L6/pZUf8/z8wWG9QP2yOAgKssQohuWEqakiAfhZ4B994L8W+trwC5Ohvn1WIV+j9G1iFKCr24ct1
-        awj7/wduiY3rh80wjENK/hCT3bCL6iDiI1i+trK//v/ICBLRecx9VjtbkmsfTsv/b9gtMrb/l7Kc
-        wZTeJ/g/C7yGb7yXul97/d/AWB1rR6TlkQWMBd1Hb9N3huz/f2Cp/qh+2MwEDJhruvxELQnSD59t
-        8LXlF2BHf/vsQvxC78fZ5fu/hFjmIxoJBac2ecEBIDPLh8/iR+ji+7/k/wE7X9EtmxEAAA==
+    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"18048340065001902796","parameters":{"location":{"type":"String","value":"westus"},"privateIPAllocationMethod":{"type":"String","value":"Dynamic"},"backendAddressPools":{"type":"Array","value":[{"name":"bepool1"},{"name":"bepool2"}]},"name":{"type":"String","value":"test-lb"},"subnetId":{"type":"String","value":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:51.7379575Z","duration":"PT8.796149S","correlationId":"c18f33be-ece9-4c12-96b9-eabd6fd111ff","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"loadBalancers","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/loadBalancers/test-lb"}]}}]}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['1135']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:02:14 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:14 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
+      content-length: ['1218']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -229,45 +302,24 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [4cde65da-a631-11e6-b336-f4b7e2e85440]
+      x-ms-client-request-id: [aeb3b476-4c90-11e7-ba4f-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR8Xs
-        o0cf3W3Wk2ZaF6u2qJbN3Z3J7vmn+w92t3cn5zvb+7NZtp3l03vb08nDvQd75zsP7z/cuVvnTbWu
-        p/nndbVeNXezH6zrfHtaFtuzfFVW14t82W63edPeXdXVZTHL6+buF8W0rprqvB2/0pebu651HMZH
-        o4+W2SInJAe+JfCrvG6LvPno0S/+aJXV1Lql3vBXWU0zDAm/t9crQHnd1sXygt67zMo1PrgiHNfN
-        R7/E9DPcsosAD2972VzsfvRL6PVFNUOrs+W0zoFbVtK7hN1l0RAKBOp1m7Vo8Xo9neb5LJ/R922x
-        ICDZYkWf7+3sfrq9u7u98/DNzv6jnd1H9x+O93f373+6//CnqOlsXetgPnr5Zvf++OH+w937n376
-        mr6aVnWdl/ztGeZzOskfPjjYe7B9P6N/9h9MptuTh9PJ9t7+7mw/25tM9x+e02uMHGbmo0ff+8U8
-        /GaVTYGim6kXeXtV1W+ptZnwN0QeecP/hF5aStPX+XRdF+21MAa9aGYBLxlyf/+X0H80pnyVL2f5
-        csrT9z36pFq3q3VLfxBC+dWL15/jN52RLyc/nU8x5zojNN0YwQbyGgw/XzOf59l073z3nCYxf/Bw
-        e5/YfPvgHvH5ZPrpjGg22b2/e0BvNTqCV+vSoDXLz7N12ZqxmW8IyQxM89FxWVZXP0kUOFs+qdZL
-        9M093v1hS5bO111CBT8NwgOwGA6zMAlif4R3I8PK2+yCBvbdu7/vR3vZA6LaLnHYQ2Lb/dnuwfbD
-        B/Rbdv5wL9892H/w4H72+35E7xCivowC7Q2TNsstxegbRiEtlhP0n7Z1dn5eTNPzulqkWVmmP/lF
-        Q1+mP/ni9A29SqDbalqV9N636E+h48uqbl9lywv0g08JflssmSW7X8kLx7MZzUHzss7Pi3f0zU8W
-        dbvOSiUtNfMg3Ng2o4E1NG4ZCH2wqosKFP7o0af3d3Z2CFpRE1sTLGp0JuOEQgl56xgz97zKZk+y
-        MltO89rNyP9vGG3DGP/fxHXAMi0JzXSieNLrBP5ngfN6FKGWHpBucwC6gd92CcAN/PY0X17Ty474
-        /39gsN6gftgcBQRYYxVCcsNU1JAA/SzwDr7xXop9bXkFyNHfPqsQr9D7N7AKUVTsw5fr1hD2/w/c
-        EhvXD5thGIeU/CEmu2EX1UHER7B8bWV//f+RESSi85j7rHa2JNc+nJb/37BbZGz/L2U5gym9T/B/
-        FngN33gvdb/2+r+BsTrWjkjLIwsYC7qP3qbvDNn//8BS/VH9sJkJGDDXdPmJWhKkHz7b4GvLL8CO
-        /vbZhfiF3o+zy/d/CbHMRzQSCk5t8oIDQGaWD5/Fj9DF/wOany5SjxEAAA==
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"18048340065001902796","parameters":{"location":{"type":"String","value":"westus"},"privateIPAllocationMethod":{"type":"String","value":"Dynamic"},"backendAddressPools":{"type":"Array","value":[{"name":"bepool1"},{"name":"bepool2"}]},"name":{"type":"String","value":"test-lb"},"subnetId":{"type":"String","value":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:51.7379575Z","duration":"PT8.796149S","correlationId":"c18f33be-ece9-4c12-96b9-eabd6fd111ff","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"loadBalancers","locations":["westus"]}]}],"dependencies":[],"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/loadBalancers/test-lb"}]}}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['1126']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:02:15 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:14 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
+      content-length: ['1206']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -276,37 +328,23 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.10586) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b8]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [4d158cd8-a631-11e6-92db-f4b7e2e85440]
+      x-ms-client-request-id: [aeea1dd2-4c90-11e7-a097-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/deployments/mock-deployment/operations?api-version=2017-05-10
   response:
-    body:
-      string: !!binary |
-        H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl
-        VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR5dZ
-        uc4/evS9X/xRMfvo0Ud3m/WkmdbFqi2qZXN3Z7J7/un+g93t3cn5zvb+bJZtZ/n03vZ08nDvwd75
-        zsP7D3fu1nlTretp/nldrVfN3ewH6zrfnpbF9ixfldX1Il+2223etHdXdXVZzPK6uftFMa2rpjpv
-        x6/05eauax2Hcbda5XUmeN3/9MH+w2c7B88OHu4+ebp3/NHoI/vtGcYRaUC9U5O2yJuPHv1i/HVZ
-        NNS8WF58SZ/zq/TiSZ1nbS7NbYPXLT579NHr9XSa57N8Rt+3xYLGlC1W9Pnezu6n27u72zsP3+zs
-        P9rZfXT/YPzg4ae79+/v/RQ1na0t+JdvdvfHu0S3e3v3X9NXbZ1N31IPjHSeT/PdB7sPtiez2f3t
-        /d3pp9vZ3t7e9t69/NN8bz+b5Pfv0TtNXl8W0/xV/ovWhAG/uTvN7u3em+xu39+fTbf3HxxMtic5
-        vX6e7d7be/jw4V6+cx9v0jjWzUk1w2C+/L3okzarL/LWTAII83PDBi/y9qqq395dys/X+XRdF+31
-        ACyGs71sLnZpCKbfN9crGsBHt4TpvfgiW+DFDZ38kl/yS0Y/V5Qxc/N+ArJzcP/gwd7ew/29BwfE
-        nXt7n+6DAWwL5pqBRoQFNbtJUE6hOUgsntr+v1y3q3UrAOwr7y86D8f3Dh7cO7jXk5yd8f29T/d2
-        HvQFh4R8en/v/NPtyV4+o1nId7YPHj68t/1wdjDb2d/LH+5Mdugd6rPD/vLJF3nTZBf04XJdlr/k
-        l3z/l/w/15afSBcFAAA=
+    body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operations/62E23BA3072F9A59","operationId":"62E23BA3072F9A59","properties":{"provisioningOperation":"Create","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:49.7320302Z","duration":"PT3.1487534S","trackingId":"25239975-d954-465b-897a-708ab8de526f","serviceRequestId":"1d49c05c-2558-47e1-84ac-d104ba980e53","statusCode":"Created","targetResource":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/loadBalancers/test-lb","resourceType":"Microsoft.Network/loadBalancers","resourceName":"test-lb"}}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operations/08587046499225358060","operationId":"08587046499225358060","properties":{"provisioningOperation":"EvaluateDeploymentOutput","provisioningState":"Succeeded","timestamp":"2017-06-08T21:22:51.4958641Z","duration":"PT1.3552308S","trackingId":"52533323-6355-43b1-b5ca-d54f37c55fea","statusCode":"OK","statusMessage":null}}]}'}
     headers:
       Cache-Control: [no-cache]
-      Content-Encoding: [gzip]
-      Content-Length: ['698']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 09 Nov 2016 04:02:15 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:14 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
+      content-length: ['1272']
     status: {code: 200, message: OK}
 version: 1
diff --git a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_no_wait.yaml b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_no_wait.yaml
index 0ccaacd4d..b204c5dcd 100644
--- a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_no_wait.yaml
+++ b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_no_wait.yaml
@@ -1,39 +1,40 @@
 interactions:
 - request:
-    body: '{"properties": {"parameters": {"name": {"value": "azure-cli-deploy-test-nsg1"},
-      "location": {"value": "westus"}}, "mode": "Incremental", "template": {"contentVersion":
-      "1.0.0.0", "outputs": {"NewNSG": {"type": "object", "value": "[reference(parameters(''name''))]"}},
-      "resources": [{"apiVersion": "2015-06-15", "name": "[parameters(''name'')]",
-      "dependsOn": [], "properties": {"securityRules": []}, "location": "[parameters(''location'')]",
-      "type": "Microsoft.Network/networkSecurityGroups"}], "variables": {}, "parameters":
-      {"name": {"metadata": {"description": "Name of the network security group."},
-      "type": "string"}, "location": {"metadata": {"description": "Location for the
-      network security group."}, "defaultValue": "[resourceGroup().location]", "type":
-      "string"}}, "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"}}}'
+    body: '{"properties": {"mode": "Incremental", "template": {"variables": {}, "parameters":
+      {"location": {"metadata": {"description": "Location for the network security
+      group."}, "type": "string", "defaultValue": "[resourceGroup().location]"}, "name":
+      {"metadata": {"description": "Name of the network security group."}, "type":
+      "string"}}, "resources": [{"dependsOn": [], "properties": {"securityRules":
+      []}, "name": "[parameters(''name'')]", "location": "[parameters(''location'')]",
+      "apiVersion": "2015-06-15", "type": "Microsoft.Network/networkSecurityGroups"}],
+      "outputs": {"NewNSG": {"value": "[reference(parameters(''name''))]", "type":
+      "object"}}, "contentVersion": "1.0.0.0", "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#"},
+      "parameters": {"location": {"value": "westus"}, "name": {"value": "azure-cli-deploy-test-nsg1"}}}}'
     headers:
       Accept: [application/json]
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Length: ['863']
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.14393) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b10]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [a850e48a-b742-11e6-8e81-64510658e3b3]
+      x-ms-client-request-id: [e13d2610-4c90-11e7-82c0-a0b3ccf7272a]
     method: PUT
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"parameters":{"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"},"location":{"type":"String","value":"westus"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2016-11-30T21:19:24.1179296Z","duration":"PT0.6497169S","correlationId":"03126bac-629c-4bb9-ac9c-8265ae96e2fa","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-06-08T21:24:40.8557652Z","duration":"PT0.5740685S","correlationId":"1b0c61d7-cc95-4fb0-aedf-8e3b3b348968","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
     headers:
-      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operationStatuses/08587210661220094393?api-version=2017-05-10']
+      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment/operationStatuses/08587046498051959183?api-version=2017-05-10']
       Cache-Control: [no-cache]
-      Content-Length: ['656']
+      Content-Length: ['699']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 30 Nov 2016 21:19:24 GMT']
+      Date: ['Thu, 08 Jun 2017 21:24:40 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1197']
+      x-ms-ratelimit-remaining-subscription-writes: ['1199']
     status: {code: 201, message: Created}
 - request:
     body: null
@@ -42,23 +43,25 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.14393) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b10]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [b12e74d4-b742-11e6-9c32-64510658e3b3]
+      x-ms-client-request-id: [e280db8a-4c90-11e7-ac9d-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"parameters":{"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"},"location":{"type":"String","value":"westus"}},"mode":"Incremental","provisioningState":"Running","timestamp":"2016-11-30T21:19:24.7626283Z","duration":"PT1.2944156S","correlationId":"03126bac-629c-4bb9-ac9c-8265ae96e2fa","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Running","timestamp":"2017-06-08T21:24:41.5345896Z","duration":"PT1.2528929S","correlationId":"1b0c61d7-cc95-4fb0-aedf-8e3b3b348968","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 30 Nov 2016 21:19:34 GMT']
+      Date: ['Thu, 08 Jun 2017 21:24:41 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
+      Retry-After: ['5']
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
-      content-length: ['655']
+      content-length: ['698']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -67,29 +70,30 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.14393) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b10]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [c37219ba-b742-11e6-871c-64510658e3b3]
+      x-ms-client-request-id: [f49aa2c0-4c90-11e7-9a02-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"parameters":{"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"},"location":{"type":"String","value":"westus"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2016-11-30T21:19:41.0645299Z","duration":"PT17.5963172S","correlationId":"03126bac-629c-4bb9-ac9c-8265ae96e2fa","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"2bdf11b3-367f-4bdc-a1af-7e98197a2b2e","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:24:54.0359729Z","duration":"PT13.7542762S","correlationId":"1b0c61d7-cc95-4fb0-aedf-8e3b3b348968","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"89520818-a2bd-43ee-93ba-5408df6a5106","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 30 Nov 2016 21:20:05 GMT']
+      Date: ['Thu, 08 Jun 2017 21:25:12 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
-      content-length: ['4495']
+      content-length: ['4683']
     status: {code: 200, message: OK}
 - request:
     body: null
@@ -98,28 +102,29 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.0 (Windows-10.0.14393) requests/2.9.1 msrest/0.4.4 msrest_azure/0.4.3
-          resourcemanagementclient/0.30.2 Azure-SDK-For-Python AZURECLI/TEST/0.1.0b10]
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [cb076a38-b742-11e6-a5d5-64510658e3b3]
+      x-ms-client-request-id: [f4cc42ca-4c90-11e7-aca5-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"parameters":{"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"},"location":{"type":"String","value":"westus"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2016-11-30T21:19:41.0645299Z","duration":"PT17.5963172S","correlationId":"03126bac-629c-4bb9-ac9c-8265ae96e2fa","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"2bdf11b3-367f-4bdc-a1af-7e98197a2b2e","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8a782b4c-6ea8-4138-ac17-e1ef4170b1a7\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Resources/deployments/azure-cli-deployment","name":"azure-cli-deployment","properties":{"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:24:54.0359729Z","duration":"PT13.7542762S","correlationId":"1b0c61d7-cc95-4fb0-aedf-8e3b3b348968","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"89520818-a2bd-43ee-93ba-5408df6a5106","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c0f5e666-9d3b-41c2-a26d-b0818aeabbbb\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Wed, 30 Nov 2016 21:20:18 GMT']
+      Date: ['Thu, 08 Jun 2017 21:25:11 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
       Vary: [Accept-Encoding]
-      content-length: ['4495']
+      content-length: ['4683']
     status: {code: 200, message: OK}
 version: 1
diff --git a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_thru_uri.yaml b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_thru_uri.yaml
index 6c3e0101a..73fe2108e 100644
--- a/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_thru_uri.yaml
+++ b/src/command_modules/azure-cli-resource/tests/recordings/latest/test_group_deployment_thru_uri.yaml
@@ -30,9 +30,9 @@ interactions:
       Content-Length: ['918']
       Content-Security-Policy: [default-src 'none'; style-src 'unsafe-inline']
       Content-Type: [text/plain; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:04:48 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:17 GMT']
       ETag: ['"f35114273a8c086d7190c66b2f904666791ad088"']
-      Expires: ['Thu, 08 Jun 2017 17:09:48 GMT']
+      Expires: ['Thu, 08 Jun 2017 21:28:17 GMT']
       Source-Age: ['0']
       Strict-Transport-Security: [max-age=31536000]
       Vary: ['Authorization,Accept-Encoding']
@@ -40,43 +40,43 @@ interactions:
       X-Cache: [MISS]
       X-Cache-Hits: ['0']
       X-Content-Type-Options: [nosniff]
-      X-Fastly-Request-ID: [949f2cf8eb9367de6223da2a64471022e1eca46c]
+      X-Fastly-Request-ID: [640255d5343ea951b7f1280a9037fbad0434ee15]
       X-Frame-Options: [deny]
       X-Geo-Block-List: ['']
-      X-GitHub-Request-Id: ['5DB8:2F9C:447C6D:472F5E:593983B0']
-      X-Served-By: [cache-dfw1845-DFW]
-      X-Timer: ['S1496941489.712248,VS0,VE77']
+      X-GitHub-Request-Id: ['624C:2F9B:1A8A68:1BAC0F:5939C044']
+      X-Served-By: [cache-dfw1829-DFW]
+      X-Timer: ['S1496956997.219948,VS0,VE75']
       X-XSS-Protection: [1; mode=block]
     status: {code: 200, message: OK}
 - request:
-    body: '{"properties": {"parameters": {"location": {"value": "westus"}, "name":
-      {"value": "azure-cli-deploy-test-nsg1"}}, "mode": "Incremental", "templateLink":
-      {"uri": "https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json"}}}'
+    body: '{"properties": {"templateLink": {"uri": "https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json"},
+      "mode": "Incremental", "parameters": {"location": {"value": "westus"}, "name":
+      {"value": "azure-cli-deploy-test-nsg1"}}}}'
     headers:
       Accept: [application/json]
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Length: ['286']
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [9455660a-4c6c-11e7-99f9-985fd3386693]
+      x-ms-client-request-id: [b038fb68-4c90-11e7-bd3d-a0b3ccf7272a]
     method: PUT
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-06-08T17:04:50.5771758Z","duration":"PT0.2385447S","correlationId":"d58a557e-4bfd-4952-93a0-af907222dc8c","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Accepted","timestamp":"2017-06-08T21:23:18.8662612Z","duration":"PT0.5096614S","correlationId":"4df72875-101b-46fe-8274-6bf4a65f63c1","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[]}}'}
     headers:
-      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/ae43b1e3-c35d-4c8c-bc0d-f148b4c52b78/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy/operationStatuses/08587046653951389853?api-version=2017-05-10']
+      Azure-AsyncOperation: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy/operationStatuses/08587046498871210207?api-version=2017-05-10']
       Cache-Control: [no-cache]
       Content-Length: ['862']
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:04:49 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:18 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+      x-ms-ratelimit-remaining-subscription-writes: ['1195']
     status: {code: 201, message: Created}
 - request:
     body: null
@@ -85,19 +85,19 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [9455660a-4c6c-11e7-99f9-985fd3386693]
+      x-ms-client-request-id: [b038fb68-4c90-11e7-bd3d-a0b3ccf7272a]
     method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587046653951389853?api-version=2017-05-10
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment/operationStatuses/08587046498871210207?api-version=2017-05-10
   response:
     body: {string: '{"status":"Succeeded"}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:05:20 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:48 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@@ -111,25 +111,25 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [9455660a-4c6c-11e7-99f9-985fd3386693]
+      x-ms-client-request-id: [b038fb68-4c90-11e7-bd3d-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T17:05:02.3027397Z","duration":"PT11.9641086S","correlationId":"d58a557e-4bfd-4952-93a0-af907222dc8c","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"fca6843c-35f6-4c7b-9be9-54dc3316e246","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Deny
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:23:42.0167355Z","duration":"PT23.6601357S","correlationId":"4df72875-101b-46fe-8274-6bf4a65f63c1","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"2f751d8f-968d-4a0d-ae29-80f88ac79f8f","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Deny
         all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:05:21 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:48 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@@ -143,25 +143,25 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [a8c58ee8-4c6c-11e7-93a7-985fd3386693]
+      x-ms-client-request-id: [c3f07b82-4c90-11e7-920e-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
-    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T17:05:02.3027397Z","duration":"PT11.9641086S","correlationId":"d58a557e-4bfd-4952-93a0-af907222dc8c","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"fca6843c-35f6-4c7b-9be9-54dc3316e246","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Deny
-        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Allow
-        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"e17c9599-4f83-4c84-8bd2-8cf8ffa39079\"","properties":{"provisioningState":"Succeeded","description":"Deny
+    body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/simple_deploy","name":"simple_deploy","properties":{"templateLink":{"uri":"https://raw.githubusercontent.com/Azure/azure-cli/master/src/command_modules/azure-cli-resource/tests/simple_deploy.json","contentVersion":"1.0.0.0"},"templateHash":"3550658671258663593","parameters":{"location":{"type":"String","value":"westus"},"name":{"type":"String","value":"azure-cli-deploy-test-nsg1"}},"mode":"Incremental","provisioningState":"Succeeded","timestamp":"2017-06-08T21:23:42.0167355Z","duration":"PT23.6601357S","correlationId":"4df72875-101b-46fe-8274-6bf4a65f63c1","providers":[{"namespace":"Microsoft.Network","resourceTypes":[{"resourceType":"networkSecurityGroups","locations":["westus"]}]}],"dependencies":[],"outputs":{"newNSG":{"type":"Object","value":{"provisioningState":"Succeeded","resourceGuid":"2f751d8f-968d-4a0d-ae29-80f88ac79f8f","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","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"}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound"}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Deny
+        all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound"}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","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"}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Allow
+        outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound"}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"60b1f29f-2d32-479a-ade4-6cf7900a8b6e\"","properties":{"provisioningState":"Succeeded","description":"Deny
         all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound"}}]}}},"outputResources":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azure-cli-deployment-uri-test/providers/Microsoft.Network/networkSecurityGroups/azure-cli-deploy-test-nsg1"}]}}'}
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:05:22 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:50 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@@ -176,11 +176,11 @@ interactions:
       Connection: [keep-alive]
       Content-Length: ['0']
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [a909d53a-4c6c-11e7-9433-985fd3386693]
+      x-ms-client-request-id: [c4178fec-4c90-11e7-abf6-a0b3ccf7272a]
     method: DELETE
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/mock-deployment?api-version=2017-05-10
   response:
@@ -188,13 +188,13 @@ interactions:
     headers:
       Cache-Control: [no-cache]
       Content-Length: ['0']
-      Date: ['Thu, 08 Jun 2017 17:05:24 GMT']
+      Date: ['Thu, 08 Jun 2017 21:23:50 GMT']
       Expires: ['-1']
-      Location: ['https://management.azure.com/subscriptions/ae43b1e3-c35d-4c8c-bc0d-f148b4c52b78/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RjU2WjI6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
+      Location: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
       Pragma: [no-cache]
       Retry-After: ['15']
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
-      x-ms-ratelimit-remaining-subscription-writes: ['1199']
+      x-ms-ratelimit-remaining-subscription-writes: ['1198']
     status: {code: 202, message: Accepted}
 - request:
     body: null
@@ -203,21 +203,21 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [a909d53a-4c6c-11e7-9433-985fd3386693]
+      x-ms-client-request-id: [c4178fec-4c90-11e7-abf6-a0b3ccf7272a]
     method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RjU2WjI6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10
   response:
     body: {string: ''}
     headers:
       Cache-Control: [no-cache]
       Content-Length: ['0']
-      Date: ['Thu, 08 Jun 2017 17:05:39 GMT']
+      Date: ['Thu, 08 Jun 2017 21:24:06 GMT']
       Expires: ['-1']
-      Location: ['https://management.azure.com/subscriptions/ae43b1e3-c35d-4c8c-bc0d-f148b4c52b78/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RjU2WjI6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
+      Location: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
       Pragma: [no-cache]
       Retry-After: ['15']
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@@ -229,18 +229,44 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [a909d53a-4c6c-11e7-9433-985fd3386693]
+      x-ms-client-request-id: [c4178fec-4c90-11e7-abf6-a0b3ccf7272a]
     method: GET
-    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RjU2WjI6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10
   response:
     body: {string: ''}
     headers:
       Cache-Control: [no-cache]
-      Date: ['Thu, 08 Jun 2017 17:05:54 GMT']
+      Content-Length: ['0']
+      Date: ['Thu, 08 Jun 2017 21:24:21 GMT']
+      Expires: ['-1']
+      Location: ['https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10']
+      Pragma: [no-cache]
+      Retry-After: ['15']
+      Strict-Transport-Security: [max-age=31536000; includeSubDomains]
+    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.9.1 msrest/0.4.7
+          msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
+          AZURECLI/TEST/2.0.7+dev]
+      accept-language: [en-US]
+      x-ms-client-request-id: [c4178fec-4c90-11e7-abf6-a0b3ccf7272a]
+    method: GET
+    uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IkRlcGxveW1lbnREZWxldGlvbkpvYi1HTlMtQVpVUkU6MkRDTEk6MkRERVBMT1lNRU5UOjJEVVJJOjJEVEVTVDo1RlhVQzA6NUYtU0lNUExFOjVGREVQTE9ZLSIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10
+  response:
+    body: {string: ''}
+    headers:
+      Cache-Control: [no-cache]
+      Date: ['Thu, 08 Jun 2017 21:24:35 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@@ -252,11 +278,11 @@ interactions:
       Accept-Encoding: ['gzip, deflate']
       Connection: [keep-alive]
       Content-Type: [application/json; charset=utf-8]
-      User-Agent: [python/3.5.3 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
+      User-Agent: [python/3.5.1 (Windows-10-10.0.15063-SP0) requests/2.9.1 msrest/0.4.7
           msrest_azure/0.4.7 resourcemanagementclient/1.1.0rc1 Azure-SDK-For-Python
           AZURECLI/TEST/2.0.7+dev]
       accept-language: [en-US]
-      x-ms-client-request-id: [bcdd1a3e-4c6c-11e7-bb23-985fd3386693]
+      x-ms-client-request-id: [e0002888-4c90-11e7-a096-a0b3ccf7272a]
     method: GET
     uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azure-cli-deployment-uri-test/providers/Microsoft.Resources/deployments/?api-version=2017-05-10
   response:
@@ -264,7 +290,7 @@ interactions:
     headers:
       Cache-Control: [no-cache]
       Content-Type: [application/json; charset=utf-8]
-      Date: ['Thu, 08 Jun 2017 17:05:56 GMT']
+      Date: ['Thu, 08 Jun 2017 21:24:37 GMT']
       Expires: ['-1']
       Pragma: [no-cache]
       Strict-Transport-Security: [max-age=31536000; includeSubDomains]
diff --git a/src/command_modules/azure-cli-resource/tests/simple_deploy_parameters.json b/src/command_modules/azure-cli-resource/tests/simple_deploy_parameters.json
index 5542aec0e..40c143fbf 100644
--- a/src/command_modules/azure-cli-resource/tests/simple_deploy_parameters.json
+++ b/src/command_modules/azure-cli-resource/tests/simple_deploy_parameters.json
@@ -1,8 +1,10 @@
 {
-  "location": {
-    "value": "westus"
-  },
-  "name": {
-    "value": "azure-cli-deploy-test-nsg1"
+  "parameters": {
+    "location": {
+      "value": "westus"
+    },
+    "name": {
+      "value": "azure-cli-deploy-test-nsg1"
+    }
   }
 }
\ No newline at end of file
diff --git a/src/command_modules/azure-cli-resource/tests/test-object.json b/src/command_modules/azure-cli-resource/tests/test-object.json
new file mode 100644
index 000000000..64799c0ed
--- /dev/null
+++ b/src/command_modules/azure-cli-resource/tests/test-object.json
@@ -0,0 +1,8 @@
+[
+  {
+    "name": "bepool1"
+  },
+  {
+    "name": "bepool2"
+  }
+]
\ No newline at end of file
diff --git a/src/command_modules/azure-cli-resource/tests/test-params.json b/src/command_modules/azure-cli-resource/tests/test-params.json
new file mode 100644
index 000000000..d393e2593
--- /dev/null
+++ b/src/command_modules/azure-cli-resource/tests/test-params.json
@@ -0,0 +1,15 @@
+{
+  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
+  "contentVersion": "1.0.0.0",
+  "parameters": {
+    "name": {
+      "value": "test-lb"
+    },
+    "location": {
+      "value": "westus"
+    },
+    "privateIPAllocationMethod": {
+      "value": "Dynamic"
+    }
+  }
+}
\ No newline at end of file
diff --git a/src/command_modules/azure-cli-resource/tests/test-template.json b/src/command_modules/azure-cli-resource/tests/test-template.json
new file mode 100644
index 000000000..8e5a5d5da
--- /dev/null
+++ b/src/command_modules/azure-cli-resource/tests/test-template.json
@@ -0,0 +1,44 @@
+{
+  "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+  "contentVersion": "1.0.0.0",
+  "parameters": {
+    "name": {
+      "type": "string"
+    },
+    "location": {
+      "type": "string"
+    },
+    "subnetId": {
+      "type": "string"
+    },
+    "privateIPAllocationMethod": {
+      "type": "string"
+    },
+    "backendAddressPools": {
+      "type": "array"
+    }
+  },
+  "resources": [
+    {
+      "apiVersion": "2016-03-30",
+      "dependsOn": [ ],
+      "location": "[parameters('location')]",
+      "name": "[parameters('name')]",
+      "properties": {
+        "frontendIPConfigurations": [
+          {
+            "name": "LoadBalancerFrontEnd",
+            "properties": {
+              "privateIPAllocationMethod": "[parameters('privateIPAllocationMethod')]",
+              "subnet": {
+                "id": "[parameters('subnetId')]"
+              }
+            }
+          }
+        ],
+        "backendAddressPools": "[parameters('backendAddressPools')]"
+      },
+      "type": "Microsoft.Network/loadBalancers"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/src/command_modules/azure-cli-resource/tests/test_custom.py b/src/command_modules/azure-cli-resource/tests/test_custom.py
index fda9edf9b..6ef0754a4 100644
--- a/src/command_modules/azure-cli-resource/tests/test_custom.py
+++ b/src/command_modules/azure-cli-resource/tests/test_custom.py
@@ -6,11 +6,12 @@
 import unittest
 
 from azure.cli.command_modules.resource.custom import (
-    _merge_parameters,
     _get_missing_parameters,
     _extract_lock_params
 )
 
+from azure.cli.command_modules.resource._validators import validate_deployment_parameters
+
 
 class TestCustom(unittest.TestCase):
     def test_extract_parameters(self):
@@ -158,29 +159,32 @@ class TestCustom(unittest.TestCase):
 
         self.assertDictEqual(out_params, expected)
 
-    def test_resource_merge_parameters(self):
+    def test_deployment_parameters(self):
         tests = [
             {
                 "parameter_list": [],
-                "expected": None,
+                "expected": {},
             },
             {
-                "parameter_list": ['{"foo": "bar"}'],
+                "parameter_list": [['{"foo": "bar"}']],
                 "expected": {"foo": "bar"},
             },
             {
-                "parameter_list": ['{"foo": "bar"}', '{"baz": "blat"}'],
+                "parameter_list": [['{"foo": "bar"}', '{"baz": "blat"}']],
                 "expected": {"foo": "bar", "baz": "blat"},
             },
             {
-                "parameter_list": ['{"foo": "bar"}', '{"foo": "baz"}'],
+                "parameter_list": [['{"foo": "bar"}', '{"foo": "baz"}']],
                 "expected": {"foo": "baz"},
             },
         ]
 
         for test in tests:
-            output = _merge_parameters(test['parameter_list'])
-            self.assertEqual(output, test['expected'])
+            from argparse import Namespace
+            namespace = Namespace()
+            namespace.parameters = test['parameter_list']
+            validate_deployment_parameters(namespace)
+            self.assertEqual(namespace.parameters, test['expected'])
 
 
 if __name__ == '__main__':
diff --git a/src/command_modules/azure-cli-resource/tests/test_resource.py b/src/command_modules/azure-cli-resource/tests/test_resource.py
index 303ce2b46..7c310420d 100644
--- a/src/command_modules/azure-cli-resource/tests/test_resource.py
+++ b/src/command_modules/azure-cli-resource/tests/test_resource.py
@@ -7,7 +7,7 @@ import os
 import time
 import unittest
 
-from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck as JCheck)
+from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck as JCheck, create_random_name)
 # AZURE CLI RESOURCE TEST DEFINITIONS
 from azure.cli.testsdk.vcr_test_base import (VCRTestBase, JMESPathCheck, NoneCheck,
                                              BooleanCheck,
@@ -320,20 +320,24 @@ class DeploymentTest(ResourceGroupVCRTestBase):
 
     def body(self):
         curr_dir = os.path.dirname(os.path.realpath(__file__))
-        template_file = os.path.join(curr_dir, 'simple_deploy.json').replace('\\', '\\\\')
-        parameters_file = os.path.join(curr_dir, 'simple_deploy_parameters.json').replace('\\',
-                                                                                          '\\\\')
+        template_file = os.path.join(curr_dir, 'test-template.json').replace('\\', '\\\\')
+        parameters_file = os.path.join(curr_dir, 'test-params.json').replace('\\', '\\\\')
+        object_file = os.path.join(curr_dir, 'test-object.json').replace('\\', '\\\\')
         deployment_name = 'azure-cli-deployment'
 
-        self.cmd('group deployment validate -g {} --template-file {} --parameters @{}'.format(
-            self.resource_group, template_file, parameters_file), checks=[
-            JMESPathCheck('properties.provisioningState', 'Accepted')
+        subnet_id = self.cmd('network vnet create -g {} -n vnet1 --subnet-name subnet1'.format(self.resource_group))['newVNet']['subnets'][0]['id']
+
+        self.cmd('group deployment validate -g {} --template-file {} --parameters @"{}" --parameters subnetId="{}" --parameters backendAddressPools=@"{}"'.format(
+            self.resource_group, template_file, parameters_file, subnet_id, object_file), checks=[
+            JMESPathCheck('properties.provisioningState', 'Succeeded')
         ])
-        self.cmd('group deployment create -g {} -n {} --template-file {} --parameters @{}'.format(
-            self.resource_group, deployment_name, template_file, parameters_file), checks=[
+
+        self.cmd('group deployment create -g {} -n {} --template-file {} --parameters @"{}" --parameters subnetId="{}" --parameters backendAddressPools=@"{}"'.format(
+            self.resource_group, deployment_name, template_file, parameters_file, subnet_id, object_file), checks=[
             JMESPathCheck('properties.provisioningState', 'Succeeded'),
             JMESPathCheck('resourceGroup', self.resource_group),
         ])
+
         self.cmd('group deployment list -g {}'.format(self.resource_group), checks=[
             JMESPathCheck('[0].name', deployment_name),
             JMESPathCheck('[0].resourceGroup', self.resource_group)
@@ -655,20 +659,22 @@ class ManagedAppScenarioTest(ScenarioTest):
 
 
 class CrossRGDeploymentScenarioTest(ScenarioTest):
-    @ResourceGroupPreparer()
-    def test_crossrgdeployment(self, resource_group):
+
+    @ResourceGroupPreparer(name_prefix='cli_test_cross_rg_alt', parameter_name='resource_group_cross')
+    @ResourceGroupPreparer(name_prefix='cli_test_cross_rg_deploy')
+    def test_crossrg_deployment(self, resource_group, resource_group_cross):
         curr_dir = os.path.dirname(os.path.realpath(__file__))
         template_file = os.path.join(curr_dir, 'crossrg_deploy.json').replace('\\', '\\\\')
-        parameters_file = os.path.join(curr_dir, 'crossrg_deploy_parameters.json').replace('\\',
-                                                                                           '\\\\')
         deployment_name = 'azure-cli-crossrgdeployment'
+        storage_account_1 = create_random_name(prefix='crossrg')
+        storage_account_2 = create_random_name(prefix='crossrg')
 
-        self.cmd('group deployment validate -g {} --template-file {} --parameters @{}'.format(
-            resource_group, template_file, parameters_file), checks=[
+        self.cmd('group deployment validate -g {} --template-file {} --parameters CrossRG={} StorageAccountName1={} StorageAccountName2={}'.format(
+            resource_group, template_file, resource_group_cross, storage_account_1, storage_account_2), checks=[
             JCheck('properties.provisioningState', 'Succeeded')
         ])
-        self.cmd('group deployment create -g {} -n {} --template-file {} --parameters @{}'.format(
-            resource_group, deployment_name, template_file, parameters_file), checks=[
+        self.cmd('group deployment create -g {} -n {} --template-file {} --parameters CrossRG={}'.format(
+            resource_group, deployment_name, template_file, resource_group_cross), checks=[
             JCheck('properties.provisioningState', 'Succeeded'),
             JCheck('resourceGroup', resource_group),
         ])
@@ -676,20 +682,15 @@ class CrossRGDeploymentScenarioTest(ScenarioTest):
             JCheck('[0].name', deployment_name),
             JCheck('[0].resourceGroup', resource_group)
         ])
-        self.cmd('group deployment show -g {} -n {}'.format(resource_group, deployment_name),
-                 checks=[
-                     JCheck('name', deployment_name),
-                     JCheck('resourceGroup', resource_group)
-                 ])
-        self.cmd('group deployment operation list -g {} -n {}'.format(resource_group,
-                                                                      deployment_name), checks=[
+        self.cmd('group deployment show -g {} -n {}'.format(resource_group, deployment_name), checks=[
+            JCheck('name', deployment_name),
+            JCheck('resourceGroup', resource_group)
+        ])
+        self.cmd('group deployment operation list -g {} -n {}'.format(resource_group, deployment_name), checks=[
             JCheck('length([])', 3),
             JCheck('[0].resourceGroup', resource_group)
         ])
 
-    def tear_down(self):
-        self.cmd('group delete --name {} --no-wait --yes'.format('crossrg5'))
-
 
 if __name__ == '__main__':
     unittest.main()
diff --git a/src/command_modules/azure-cli-resource/tests/test_resource_validators.py b/src/command_modules/azure-cli-resource/tests/test_resource_validators.py
index eea7b941b..9ef089c86 100644
--- a/src/command_modules/azure-cli-resource/tests/test_resource_validators.py
+++ b/src/command_modules/azure-cli-resource/tests/test_resource_validators.py
@@ -10,7 +10,7 @@ from six import StringIO
 
 from azure.cli.core.util import CLIError
 from azure.cli.command_modules.resource._validators import (
-    validate_deployment_name,
+    _validate_deployment_name,
     validate_lock_parameters,
 )
 
@@ -120,14 +120,14 @@ class Test_resource_validators(unittest.TestCase):
         namespace.template_uri = 'https://templates/template123.json?foo=bar'
         namespace.template_file = None
         namespace.deployment_name = None
-        validate_deployment_name(namespace)
+        _validate_deployment_name(namespace)
         self.assertEqual('template123', namespace.deployment_name)
 
         namespace = mock.MagicMock()
         namespace.template_file = __file__
         namespace.template_uri = None
         namespace.deployment_name = None
-        validate_deployment_name(namespace)
+        _validate_deployment_name(namespace)
 
         file_base_name = os.path.basename(__file__)
         file_base_name = file_base_name[:str.find(file_base_name, '.')]
@@ -138,7 +138,7 @@ class Test_resource_validators(unittest.TestCase):
         namespace.template_file = '{"foo":"bar"}'
         namespace.template_uri = None
         namespace.deployment_name = None
-        validate_deployment_name(namespace)
+        _validate_deployment_name(namespace)
         self.assertEqual('deployment1', namespace.deployment_name)
 
 
diff --git a/test-object.json b/test-object.json
new file mode 100644
index 000000000..64799c0ed
--- /dev/null
+++ b/test-object.json
@@ -0,0 +1,8 @@
+[
+  {
+    "name": "bepool1"
+  },
+  {
+    "name": "bepool2"
+  }
+]
\ No newline at end of file
diff --git a/test-params.json b/test-params.json
new file mode 100644
index 000000000..7d14aa51f
--- /dev/null
+++ b/test-params.json
@@ -0,0 +1,15 @@
+{
+  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
+  "contentVersion": "1.0.0.0",
+  "parameters": {
+    "name": {
+      "value": "test-lb"
+    },
+    "location": {
+      "value": "westus"
+    },
+    "subnetId": {
+      "value": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/tjp-arm/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"
+    }
+  }
+}
\ No newline at end of file
diff --git a/test-template.json b/test-template.json
new file mode 100644
index 000000000..8e5a5d5da
--- /dev/null
+++ b/test-template.json
@@ -0,0 +1,44 @@
+{
+  "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+  "contentVersion": "1.0.0.0",
+  "parameters": {
+    "name": {
+      "type": "string"
+    },
+    "location": {
+      "type": "string"
+    },
+    "subnetId": {
+      "type": "string"
+    },
+    "privateIPAllocationMethod": {
+      "type": "string"
+    },
+    "backendAddressPools": {
+      "type": "array"
+    }
+  },
+  "resources": [
+    {
+      "apiVersion": "2016-03-30",
+      "dependsOn": [ ],
+      "location": "[parameters('location')]",
+      "name": "[parameters('name')]",
+      "properties": {
+        "frontendIPConfigurations": [
+          {
+            "name": "LoadBalancerFrontEnd",
+            "properties": {
+              "privateIPAllocationMethod": "[parameters('privateIPAllocationMethod')]",
+              "subnet": {
+                "id": "[parameters('subnetId')]"
+              }
+            }
+          }
+        ],
+        "backendAddressPools": "[parameters('backendAddressPools')]"
+      },
+      "type": "Microsoft.Network/loadBalancers"
+    }
+  ]
+}
\ No newline at end of file