Hello community,

here is the log from the commit of package azure-cli-dls for openSUSE:Factory 
checked in at 2018-02-14 09:30:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/azure-cli-dls (Old)
 and      /work/SRC/openSUSE:Factory/.azure-cli-dls.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "azure-cli-dls"

Wed Feb 14 09:30:43 2018 rev:2 rq:574809 version:0.0.19

Changes:
--------
--- /work/SRC/openSUSE:Factory/azure-cli-dls/azure-cli-dls.changes      
2017-11-10 14:53:40.724147938 +0100
+++ /work/SRC/openSUSE:Factory/.azure-cli-dls.new/azure-cli-dls.changes 
2018-02-14 09:30:49.125226415 +0100
@@ -1,0 +2,10 @@
+Wed Feb  7 16:02:16 UTC 2018 - adrian.glaub...@suse.com
+
+- New upstream release
+  + Version 0.0.19
+  + For detailed information about changes see the
+    HISTORY.rst file provided with this package
+- Install HISTORY.rst into doc directory
+- Update Requires from setup.py
+
+-------------------------------------------------------------------

Old:
----
  azure-cli-dls-0.0.14.tar.gz

New:
----
  azure-cli-dls-0.0.19.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ azure-cli-dls.spec ++++++
--- /var/tmp/diff_new_pack.iK3m7k/_old  2018-02-14 09:30:50.945160467 +0100
+++ /var/tmp/diff_new_pack.iK3m7k/_new  2018-02-14 09:30:50.949160323 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package azure-cli-dls
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -15,8 +15,9 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
+
 Name:           azure-cli-dls
-Version:        0.0.14
+Version:        0.0.19
 Release:        0
 Summary:        Microsoft Azure CLI 'data lake store' Command Module
 License:        MIT
@@ -24,18 +25,18 @@
 Url:            https://github.com/Azure/azure-cli
 Source:         
https://files.pythonhosted.org/packages/source/a/azure-cli-dls/azure-cli-dls-%{version}.tar.gz
 Source1:        LICENSE.txt
-BuildRequires:  python3-devel
-BuildRequires:  python3-setuptools
-BuildRequires:  unzip
 BuildRequires:  azure-cli-command-modules-nspkg
 BuildRequires:  azure-cli-nspkg
 BuildRequires:  python3-azure-nspkg
+BuildRequires:  python3-devel
+BuildRequires:  python3-setuptools
+BuildRequires:  unzip
 Requires:       azure-cli-command-modules-nspkg
+Requires:       azure-cli-core
 Requires:       azure-cli-nspkg
+Requires:       python3-azure-datalake-store >= 0.0.17
+Requires:       python3-azure-mgmt-datalake-store >= 0.2.0
 Requires:       python3-azure-nspkg
-Requires:       python3-azure-mgmt-datalake-store >= 0.1.6
-Requires:       python3-azure-datalake-store >= 0.0.16
-Requires:       azure-cli-core
 Conflicts:      azure-cli < 2.0.0
 
 BuildArch:      noarch
@@ -64,7 +65,8 @@
 
 %files
 %defattr(-,root,root,-)
-%doc LICENSE.txt README.rst
+%doc HISTORY.rst LICENSE.txt README.rst
 %{python3_sitelib}/azure/cli/command_modules/dls
 %{python3_sitelib}/azure_cli_dls-*.egg-info
+
 %changelog

++++++ azure-cli-dls-0.0.14.tar.gz -> azure-cli-dls-0.0.19.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-cli-dls-0.0.14/HISTORY.rst 
new/azure-cli-dls-0.0.19/HISTORY.rst
--- old/azure-cli-dls-0.0.14/HISTORY.rst        2017-09-23 01:47:00.000000000 
+0200
+++ new/azure-cli-dls-0.0.19/HISTORY.rst        2018-01-05 22:11:35.000000000 
+0100
@@ -2,6 +2,28 @@
 
 Release History
 ===============
+
+0.0.19
+++++++
+* Update for CLI core changes.
+
+0.0.18
+++++++
+* Change the return type of the account list command: a list of 
DataLakeStoreAccount to a list of DataLakeStoreAccountBasic
+* The properties of a Basic type is a strict subset of the properties of a 
regular type
+
+0.0.17
+++++++
+* Minor fixes.
+
+0.0.16
+++++++
+* minor fixes
+
+0.0.15 (2017-10-09)
++++++++++++++++++++
+* minor fixes
+
 0.0.14 (2017-09-22)
 +++++++++++++++++++
 * minor fixes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-cli-dls-0.0.14/PKG-INFO 
new/azure-cli-dls-0.0.19/PKG-INFO
--- old/azure-cli-dls-0.0.14/PKG-INFO   2017-09-23 01:47:21.000000000 +0200
+++ new/azure-cli-dls-0.0.19/PKG-INFO   2018-01-05 22:12:32.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: azure-cli-dls
-Version: 0.0.14
+Version: 0.0.19
 Summary: Microsoft Azure Command-Line Tools Data Lake Store Command Module
 Home-page: https://github.com/Azure/azure-cli
 Author: Microsoft Corporation
@@ -20,6 +20,28 @@
         
         Release History
         ===============
+        
+        0.0.19
+        ++++++
+        * Update for CLI core changes.
+        
+        0.0.18
+        ++++++
+        * Change the return type of the account list command: a list of 
DataLakeStoreAccount to a list of DataLakeStoreAccountBasic
+        * The properties of a Basic type is a strict subset of the properties 
of a regular type
+        
+        0.0.17
+        ++++++
+        * Minor fixes.
+        
+        0.0.16
+        ++++++
+        * minor fixes
+        
+        0.0.15 (2017-10-09)
+        +++++++++++++++++++
+        * minor fixes
+        
         0.0.14 (2017-09-22)
         +++++++++++++++++++
         * minor fixes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/__init__.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/__init__.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/__init__.py  
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/__init__.py  
2018-01-05 22:11:35.000000000 +0100
@@ -3,12 +3,29 @@
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
 # pylint: disable=unused-import
-import azure.cli.command_modules.dls._help
 
+from azure.cli.core import AzCommandsLoader
 
-def load_params(_):
-    import azure.cli.command_modules.dls._params  # pylint: 
disable=redefined-outer-name, unused-variable
+from azure.cli.command_modules.dls._help import helps  # pylint: 
disable=unused-import
 
 
-def load_commands():
-    import azure.cli.command_modules.dls.commands  # pylint: 
disable=redefined-outer-name, unused-variable
+class DataLakeStoreCommandsLoader(AzCommandsLoader):
+
+    def __init__(self, cli_ctx=None):
+        from azure.cli.core.commands import CliCommandType
+        dls_custom = 
CliCommandType(operations_tmpl='azure.cli.command_modules.dls.custom#{}')
+        super(DataLakeStoreCommandsLoader, self).__init__(cli_ctx=cli_ctx,
+                                                          
min_profile='2017-03-10-profile',
+                                                          
custom_command_type=dls_custom)
+
+    def load_command_table(self, args):
+        from azure.cli.command_modules.dls.commands import load_command_table
+        load_command_table(self, args)
+        return self.command_table
+
+    def load_arguments(self, command):
+        from azure.cli.command_modules.dls._params import load_arguments
+        load_arguments(self, command)
+
+
+COMMAND_LOADER_CLS = DataLakeStoreCommandsLoader
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_client_factory.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_client_factory.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_client_factory.py   
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_client_factory.py   
2018-01-05 22:11:35.000000000 +0100
@@ -2,35 +2,36 @@
 # Copyright (c) Microsoft Corporation. All rights reserved.
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
-from azure.cli.core._profile import CLOUD, Profile
 
 
-def cf_dls_account(_):
+def cf_dls_account(cli_ctx, _):
     from azure.cli.core.commands.client_factory import get_mgmt_service_client
     from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
-    return 
get_mgmt_service_client(DataLakeStoreAccountManagementClient).account
+    return get_mgmt_service_client(cli_ctx, 
DataLakeStoreAccountManagementClient).account
 
 
-def cf_dls_account_firewall(_):
+def cf_dls_account_firewall(cli_ctx, _):
     from azure.cli.core.commands.client_factory import get_mgmt_service_client
     from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
-    return 
get_mgmt_service_client(DataLakeStoreAccountManagementClient).firewall_rules
+    return get_mgmt_service_client(cli_ctx, 
DataLakeStoreAccountManagementClient).firewall_rules
 
 
-def cf_dls_account_trusted_provider(_):
+def cf_dls_account_trusted_provider(cli_ctx, _):
     from azure.cli.core.commands.client_factory import get_mgmt_service_client
     from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
-    return 
get_mgmt_service_client(DataLakeStoreAccountManagementClient).trusted_id_providers
+    return get_mgmt_service_client(cli_ctx, 
DataLakeStoreAccountManagementClient).trusted_id_providers
 
 
-def cf_dls_filesystem(account_name):
+def cf_dls_filesystem(cli_ctx, account_name):
     from azure.datalake.store import core
-    profile = Profile()
+    from azure.cli.core._profile import Profile
+
+    profile = Profile(cli_ctx=cli_ctx)
     subscription_id = None
     cred, subscription_id, _ = profile.get_login_credentials(
         subscription_id=subscription_id,
-        resource=CLOUD.endpoints.active_directory_data_lake_resource_id)
+        
resource=cli_ctx.cloud.endpoints.active_directory_data_lake_resource_id)
     return core.AzureDLFileSystem(
         token=cred,
         store_name=account_name,
-        url_suffix=CLOUD.suffixes.azure_datalake_store_file_system_endpoint)
+        
url_suffix=cli_ctx.cloud.suffixes.azure_datalake_store_file_system_endpoint)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_help.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_help.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_help.py     
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_help.py     
2018-01-05 22:11:35.000000000 +0100
@@ -3,7 +3,7 @@
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
 
-from azure.cli.core.help_files import helps
+from knack.help_files import helps
 
 
 helps['dls'] = """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_params.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_params.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_params.py   
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_params.py   
2018-01-05 22:11:35.000000000 +0100
@@ -2,69 +2,104 @@
 # Copyright (c) Microsoft Corporation. All rights reserved.
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
-from azure.cli.core.commands import \
-    (register_cli_argument, CliArgumentType)
 
-from azure.cli.core.commands.parameters import \
-    (tags_type, get_resource_name_completion_list, resource_group_name_type, 
enum_choice_list)
+from knack.arguments import CLIArgumentType
+
+from azure.cli.core.commands.parameters import (
+    tags_type, get_resource_name_completion_list, resource_group_name_type, 
get_enum_type)
 
 from azure.cli.command_modules.dls._validators import 
validate_resource_group_name
-from 
azure.mgmt.datalake.store.models.data_lake_store_account_management_client_enums
 \
-    import (FirewallState,
-            TrustedIdProviderState,
-            TierType,
-            FirewallAllowAzureIpsState)
-
-from azure.mgmt.datalake.store.models import (EncryptionConfigType)
-
-# ARGUMENT DEFINITIONS
-# pylint: disable=line-too-long
-datalake_store_name_type = CliArgumentType(help='Name of the Data Lake Store 
account.', options_list=('--account_name',), 
completer=get_resource_name_completion_list('Microsoft.DataLakeStore/accounts'),
 id_part='name')
-
-# PARAMETER REGISTRATIONS
-# global params
-register_cli_argument('dls', 'account_name', datalake_store_name_type, 
options_list=('--account', '-n'))
-register_cli_argument('dls', 'top', help='Maximum number of items to return.', 
type=int)
-register_cli_argument('dls', 'skip', help='The number of items to skip over 
before returning elements.', type=int)
-register_cli_argument('dls', 'count', help='The Boolean value of true or false 
to request a count of the matching resources included with the resources in the 
response, e.g. Categories?$count=true.', type=bool)
-# global account params
-register_cli_argument('dls account', 'tags', tags_type)
-register_cli_argument('dls account', 'resource_group_name', 
resource_group_name_type, id_part=None, required=False, help='If not specified, 
will attempt to discover the resource group for the specified Data Lake Store 
account.', validator=validate_resource_group_name)
-# account params
-register_cli_argument('dls account show', 'name', datalake_store_name_type, 
options_list=('--account', '-n'))
-register_cli_argument('dls account delete', 'name', datalake_store_name_type, 
options_list=('--account', '-n'))
-register_cli_argument('dls account', 'tier', help='The desired commitment tier 
for this account to use.', **enum_choice_list(TierType))
-register_cli_argument('dls account create', 'resource_group_name', 
resource_group_name_type, validator=None)
-register_cli_argument('dls account create', 'account_name', 
datalake_store_name_type, options_list=('--account', '-n'), completer=None)
-register_cli_argument('dls account create', 'encryption_type', help='Indicates 
what type of encryption to provision the account with. By default, encryption 
is ServiceManaged. If no encryption is desired, it must be explicitly set with 
the --disable-encryption flag.', **enum_choice_list(EncryptionConfigType))
-register_cli_argument('dls account create', 'disable_encryption', 
help='Indicates that the account will not have any form of encryption applied 
to it.', action='store_true')
-register_cli_argument('dls account update', 'trusted_id_provider_state', 
help='Enable/disable the existing trusted ID providers.', 
**enum_choice_list(TrustedIdProviderState))
-register_cli_argument('dls account update', 'firewall_state', 
help='Enable/disable existing firewall rules.', 
**enum_choice_list(FirewallState))
-register_cli_argument('dls account update', 'allow_azure_ips', 
help='Allow/block Azure originating IPs through the firewall', 
**enum_choice_list(FirewallAllowAzureIpsState))
-register_cli_argument('dls account list', 'resource_group_name', 
resource_group_name_type, validator=None)
-
-# filesystem params
-register_cli_argument('dls fs', 'path', help='The path in the specified Data 
Lake Store account where the action should take place. In the format 
\'/folder/file.txt\', where the first \'/\' after the DNS indicates the root of 
the file system.')
-register_cli_argument('dls fs create', 'force', help='Indicates that, if the 
file or folder exists, it should be overwritten', action='store_true')
-register_cli_argument('dls fs create', 'folder', help='Indicates that this new 
item is a folder and not a file.', action='store_true')
-register_cli_argument('dls fs delete', 'recurse', help='Indicates this should 
be a recursive delete of the folder.', action='store_true')
-register_cli_argument('dls fs upload', 'overwrite', help='Indicates that, if 
the destination file or folder exists, it should be overwritten', 
action='store_true')
-register_cli_argument('dls fs upload', 'thread_count', help='Specify the 
parallelism of the upload. Default is the number of cores in the local 
machine.', type=int)
-register_cli_argument('dls fs upload', 'chunk_size', help='Number of bytes for 
a chunk. Large files are split into chunks. Files smaller than this number will 
always be transferred in a single thread.', type=int, default=268435456, 
required=False)
-register_cli_argument('dls fs upload', 'buffer_size', help='Number of bytes 
for internal buffer. This block cannot be bigger than a chunk and cannot be 
smaller than a block.', type=int, default=4194304, required=False)
-register_cli_argument('dls fs upload', 'block_size', help='Number of bytes for 
a block. Within each chunk, we write a smaller block for each API call. This 
block cannot be bigger than a chunk. ', type=int, default=4194304, 
required=False)
-register_cli_argument('dls fs download', 'overwrite', help='Indicates that, if 
the destination file or folder exists, it should be overwritten', 
action='store_true')
-register_cli_argument('dls fs download', 'thread_count', help='Specify the 
parallelism of the download. Default is the number of cores in the local 
machine.', type=int)
-register_cli_argument('dls fs download', 'chunk_size', help='Number of bytes 
for a chunk. Large files are split into chunks. Files smaller than this number 
will always be transferred in a single thread.', type=int, default=268435456, 
required=False)
-register_cli_argument('dls fs download', 'buffer_size', help='Number of bytes 
for internal buffer. This block cannot be bigger than a chunk and cannot be 
smaller than a block.', type=int, default=4194304, required=False)
-register_cli_argument('dls fs download', 'block_size', help='Number of bytes 
for a block. Within each chunk, we write a smaller block for each API call. 
This block cannot be bigger than a chunk.', type=int, default=4194304, 
required=False)
-register_cli_argument('dls fs preview', 'force', help='Indicates that, if the 
preview is larger than 1MB, still retrieve it. This can potentially be very 
slow, depending on how large the file is.', action='store_true')
-register_cli_argument('dls fs join', 'force', help='Indicates that, if the 
destination file already exists, it should be overwritten', action='store_true')
-register_cli_argument('dls fs join', 'source_paths', help='The list of files 
in the specified Data Lake Store account to join.', nargs='+')
-register_cli_argument('dls fs move', 'force', help='Indicates that, if the 
destination file or folder already exists, it should be overwritten and 
replaced with the file or folder being moved.', action='store_true')
-register_cli_argument('dls fs set-expiry', 'expiration_time', help='The 
absolute value of the expiration time expressed as milliseconds since the 
epoch.')
-
-# filesystem access params
-register_cli_argument('dls fs access', 'acl_spec', help=" The ACL 
specification to set on the path in the format 
'[default:]user|group|other:[entity id or 
UPN]:r|-w|-x|-,[default:]user|group|other:[entity id or UPN]:r|-w|-x|-,...'.")
-register_cli_argument('dls fs access set-permission', 'permission', help='The 
octal representation of the permissions for user, group and mask (for example: 
777 is full rwx for all entities)', type=int)
-register_cli_argument('dls fs access remove-all', 'default_acl', help='A 
switch that, if specified, indicates that the remove ACL operation should 
remove the default ACL of the folder. Otherwise the regular ACL is removed.', 
action='store_true')
+from 
azure.mgmt.datalake.store.models.data_lake_store_account_management_client_enums
 import (
+    FirewallState,
+    TrustedIdProviderState,
+    TierType,
+    FirewallAllowAzureIpsState)
+
+from azure.mgmt.datalake.store.models import EncryptionConfigType
+
+
+# pylint: disable=line-too-long, too-many-statements
+def load_arguments(self, _):
+    # ARGUMENT DEFINITIONS
+    datalake_store_name_type = CLIArgumentType(help='Name of the Data Lake 
Store account.', options_list=['--account_name'], 
completer=get_resource_name_completion_list('Microsoft.DataLakeStore/accounts'),
 id_part='name')
+
+    # PARAMETER REGISTRATIONS
+    # global
+    with self.argument_context('dls') as c:
+        c.argument('account_name', datalake_store_name_type, 
options_list=['--account', '-n'])
+        c.argument('top', help='Maximum number of items to return.', type=int)
+        c.argument('skip', help='The number of items to skip over before 
returning elements.', type=int)
+        c.argument('count', help='The Boolean value of true or false to 
request a count of the matching resources included with the resources in the 
response, e.g. Categories?$count=true.', type=bool)
+
+    # global account
+    with self.argument_context('dls account') as c:
+        c.argument('tags', tags_type)
+        c.argument('resource_group_name', resource_group_name_type, 
id_part=None, required=False, help='If not specified, will attempt to discover 
the resource group for the specified Data Lake Store account.', 
validator=validate_resource_group_name)
+        c.argument('tier', arg_type=get_enum_type(TierType), help='The desired 
commitment tier for this account to use.')
+
+    # account
+    for scope in ['dls account show', 'dls account delete']:
+        with self.argument_context(scope) as c:
+            c.argument('name', datalake_store_name_type, 
options_list=['--account', '-n'])
+
+    with self.argument_context('dls account create') as c:
+        c.argument('resource_group_name', resource_group_name_type, 
validator=None)
+        c.argument('account_name', datalake_store_name_type, 
options_list=['--account', '-n'], completer=None)
+        c.argument('encryption_type', 
arg_type=get_enum_type(EncryptionConfigType), help='Indicates what type of 
encryption to provision the account with. By default, encryption is 
ServiceManaged. If no encryption is desired, it must be explicitly set with the 
--disable-encryption flag.')
+        c.argument('disable_encryption', help='Indicates that the account will 
not have any form of encryption applied to it.', action='store_true')
+
+    with self.argument_context('dls account update') as c:
+        c.argument('trusted_id_provider_state', 
arg_type=get_enum_type(TrustedIdProviderState), help='Enable/disable the 
existing trusted ID providers.')
+        c.argument('firewall_state', arg_type=get_enum_type(FirewallState), 
help='Enable/disable existing firewall rules.')
+        c.argument('allow_azure_ips', 
arg_type=get_enum_type(FirewallAllowAzureIpsState), help='Allow/block Azure 
originating IPs through the firewall')
+
+    with self.argument_context('dls account list') as c:
+        c.argument('resource_group_name', resource_group_name_type, 
validator=None)
+
+    # filesystem
+    with self.argument_context('dls fs') as c:
+        c.argument('path', help='The path in the specified Data Lake Store 
account where the action should take place. In the format \'/folder/file.txt\', 
where the first \'/\' after the DNS indicates the root of the file system.')
+
+    with self.argument_context('dls fs create') as c:
+        c.argument('force', help='Indicates that, if the file or folder 
exists, it should be overwritten', action='store_true')
+        c.argument('folder', help='Indicates that this new item is a folder 
and not a file.', action='store_true')
+
+    with self.argument_context('dls fs delete') as c:
+        c.argument('recurse', help='Indicates this should be a recursive 
delete of the folder.', action='store_true')
+
+    with self.argument_context('dls fs upload') as c:
+        c.argument('overwrite', help='Indicates that, if the destination file 
or folder exists, it should be overwritten', action='store_true')
+        c.argument('thread_count', help='Specify the parallelism of the 
upload. Default is the number of cores in the local machine.', type=int)
+        c.argument('chunk_size', help='Number of bytes for a chunk. Large 
files are split into chunks. Files smaller than this number will always be 
transferred in a single thread.', type=int, default=268435456, required=False)
+        c.argument('buffer_size', help='Number of bytes for internal buffer. 
This block cannot be bigger than a chunk and cannot be smaller than a block.', 
type=int, default=4194304, required=False)
+        c.argument('block_size', help='Number of bytes for a block. Within 
each chunk, we write a smaller block for each API call. This block cannot be 
bigger than a chunk. ', type=int, default=4194304, required=False)
+
+    with self.argument_context('dls fs download') as c:
+        c.argument('overwrite', help='Indicates that, if the destination file 
or folder exists, it should be overwritten', action='store_true')
+        c.argument('thread_count', help='Specify the parallelism of the 
download. Default is the number of cores in the local machine.', type=int)
+        c.argument('chunk_size', help='Number of bytes for a chunk. Large 
files are split into chunks. Files smaller than this number will always be 
transferred in a single thread.', type=int, default=268435456, required=False)
+        c.argument('buffer_size', help='Number of bytes for internal buffer. 
This block cannot be bigger than a chunk and cannot be smaller than a block.', 
type=int, default=4194304, required=False)
+        c.argument('block_size', help='Number of bytes for a block. Within 
each chunk, we write a smaller block for each API call. This block cannot be 
bigger than a chunk.', type=int, default=4194304, required=False)
+
+    with self.argument_context('dls fs preview') as c:
+        c.argument('force', help='Indicates that, if the preview is larger 
than 1MB, still retrieve it. This can potentially be very slow, depending on 
how large the file is.', action='store_true')
+
+    with self.argument_context('dls fs join') as c:
+        c.argument('force', help='Indicates that, if the destination file 
already exists, it should be overwritten', action='store_true')
+        c.argument('source_paths', help='The list of files in the specified 
Data Lake Store account to join.', nargs='+')
+
+    with self.argument_context('dls fs move') as c:
+        c.argument('force', help='Indicates that, if the destination file or 
folder already exists, it should be overwritten and replaced with the file or 
folder being moved.', action='store_true')
+
+    with self.argument_context('dls fs set-expiry') as c:
+        c.argument('expiration_time', help='The absolute value of the 
expiration time expressed as milliseconds since the epoch.')
+
+    # filesystem access params
+    with self.argument_context('dls fs access') as c:
+        c.argument('acl_spec', help=" The ACL specification to set on the path 
in the format '[default:]user|group|other:[entity id or 
UPN]:r|-w|-x|-,[default:]user|group|other:[entity id or UPN]:r|-w|-x|-,...'.")
+
+    with self.argument_context('dls fs access set-permission') as c:
+        c.argument('permission', help='The octal representation of the 
permissions for user, group and mask (for example: 777 is full rwx for all 
entities)', type=int)
+
+    with self.argument_context('dls fs access remove-all') as c:
+        c.argument('default_acl', help='A switch that, if specified, indicates 
that the remove ACL operation should remove the default ACL of the folder. 
Otherwise the regular ACL is removed.', action='store_true')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_validators.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_validators.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/_validators.py       
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/_validators.py       
2018-01-05 22:11:35.000000000 +0100
@@ -2,10 +2,13 @@
 # Copyright (c) Microsoft Corporation. All rights reserved.
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
+
+from msrestazure.tools import parse_resource_id
+
+from knack.util import CLIError
+
 from azure.cli.core.commands.client_factory import get_mgmt_service_client
 from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
-from azure.cli.core.commands.arm import parse_resource_id
-from azure.cli.core.util import CLIError
 
 
 # Helpers
@@ -26,12 +29,12 @@
 
 
 # COMMAND NAMESPACE VALIDATORS
-def validate_resource_group_name(ns):
+def validate_resource_group_name(cmd, ns):
     if not ns.resource_group_name:
         try:
             account_name = ns.name
         except AttributeError:
             account_name = ns.account_name
-        client = 
get_mgmt_service_client(DataLakeStoreAccountManagementClient).account
+        client = get_mgmt_service_client(cmd.cli_ctx, 
DataLakeStoreAccountManagementClient).account
         group_name = _get_resource_group_from_account_name(client, 
account_name)
         ns.resource_group_name = group_name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/commands.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/commands.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/commands.py  
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/commands.py  
2018-01-05 22:11:35.000000000 +0100
@@ -4,59 +4,82 @@
 # 
--------------------------------------------------------------------------------------------
 
 # pylint: disable=line-too-long
-from azure.cli.core.commands import cli_command
-from azure.cli.core.profiles import supported_api_version, PROFILE_TYPE
-from azure.cli.command_modules.dls._client_factory import (cf_dls_account,
-                                                           
cf_dls_account_firewall,
-                                                           
cf_dls_account_trusted_provider)
-
-if not supported_api_version(PROFILE_TYPE, max_api='2017-03-09-profile'):
-    adls_format_path = 'azure.mgmt.datalake.store.operations.{}#{}.{}'
-    adls_custom_format_path = 'azure.cli.command_modules.dls.custom#{}'
+from azure.cli.core.commands import CliCommandType
+from azure.cli.command_modules.dls._client_factory import (
+    cf_dls_account,
+    cf_dls_account_firewall,
+    cf_dls_account_trusted_provider)
+
+
+def load_command_table(self, _):
+
+    adls_format_path = 'azure.mgmt.datalake.store.operations.{}#{}.{{}}'
+
+    dls_custom = 
CliCommandType(operations_tmpl='azure.cli.command_modules.dls.custom#{}')
+
+    dls_account_sdk = CliCommandType(
+        operations_tmpl=adls_format_path.format('account_operations', 
'AccountOperations'),
+        client_factory=cf_dls_account
+    )
+
+    dls_firewall_sdk = CliCommandType(
+        operations_tmpl=adls_format_path.format('firewall_rules_operations', 
'FirewallRulesOperations'),
+        client_factory=cf_dls_account
+    )
+
+    dls_provider_sdk = CliCommandType(
+        
operations_tmpl=adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations'),
+        client_factory=cf_dls_account_trusted_provider
+    )
 
     # account operations
-    cli_command(__name__, 'dls account create', 
adls_custom_format_path.format('create_adls_account'), cf_dls_account)
-    cli_command(__name__, 'dls account update', 
adls_custom_format_path.format('update_adls_account'), cf_dls_account)
-    cli_command(__name__, 'dls account list', 
adls_custom_format_path.format('list_adls_account'), cf_dls_account)
-    cli_command(__name__, 'dls account delete', 
adls_format_path.format('account_operations', 'AccountOperations', 'delete'), 
cf_dls_account)
-    cli_command(__name__, 'dls account show', 
adls_format_path.format('account_operations', 'AccountOperations', 'get'), 
cf_dls_account)
-    cli_command(__name__, 'dls account enable-key-vault', 
adls_format_path.format('account_operations', 'AccountOperations', 
'enable_key_vault'), cf_dls_account)
+    with self.command_group('dls account', dls_account_sdk, 
client_factory=cf_dls_account) as g:
+        g.custom_command('create', 'create_adls_account')
+        g.custom_command('update', 'update_adls_account')
+        g.custom_command('list', 'list_adls_account')
+        g.command('delete', 'delete')
+        g.command('show', 'get')
+        g.command('enable-key-vault', 'enable_key_vault')
 
     # account firewall operations
-    cli_command(__name__, 'dls account firewall create', 
adls_custom_format_path.format('add_adls_firewall_rule'), 
cf_dls_account_firewall)
-    cli_command(__name__, 'dls account firewall update', 
adls_format_path.format('firewall_rules_operations', 'FirewallRulesOperations', 
'update'), cf_dls_account_firewall)
-    cli_command(__name__, 'dls account firewall list', 
adls_format_path.format('firewall_rules_operations', 'FirewallRulesOperations', 
'list_by_account'), cf_dls_account_firewall)
-    cli_command(__name__, 'dls account firewall show', 
adls_format_path.format('firewall_rules_operations', 'FirewallRulesOperations', 
'get'), cf_dls_account_firewall)
-    cli_command(__name__, 'dls account firewall delete', 
adls_format_path.format('firewall_rules_operations', 'FirewallRulesOperations', 
'delete'), cf_dls_account_firewall)
+    with self.command_group('dls account firewall', dls_firewall_sdk, 
client_factory=cf_dls_account_firewall) as g:
+        g.custom_command('create', 'add_adls_firewall_rule')
+        g.command('update', 'update')
+        g.command('list', 'list_by_account')
+        g.command('show', 'get')
+        g.command('delete', 'delete')
 
     # account trusted id provider operations
-    cli_command(__name__, 'dls account trusted-provider create', 
adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations', 'create_or_update'), 
cf_dls_account_trusted_provider)
-    cli_command(__name__, 'dls account trusted-provider update', 
adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations', 'update'), cf_dls_account_trusted_provider)
-    cli_command(__name__, 'dls account trusted-provider list', 
adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations', 'list_by_account'), 
cf_dls_account_trusted_provider)
-    cli_command(__name__, 'dls account trusted-provider show', 
adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations', 'get'), cf_dls_account_trusted_provider)
-    cli_command(__name__, 'dls account trusted-provider delete', 
adls_format_path.format('trusted_id_providers_operations', 
'TrustedIdProvidersOperations', 'delete'), cf_dls_account_trusted_provider)
+    with self.command_group('dls account trusted-provider', dls_provider_sdk) 
as g:
+        g.command('create', 'create_or_update')
+        g.command('update', 'update')
+        g.command('list', 'list_by_account')
+        g.command('show', 'get')
+        g.command('delete', 'delete')
 
     # filesystem operations
-    cli_command(__name__, 'dls fs show', 
adls_custom_format_path.format('get_adls_item'))
-    cli_command(__name__, 'dls fs list', 
adls_custom_format_path.format('list_adls_items'))
-    cli_command(__name__, 'dls fs create', 
adls_custom_format_path.format('create_adls_item'))
-    cli_command(__name__, 'dls fs append', 
adls_custom_format_path.format('append_adls_item'))
-    cli_command(__name__, 'dls fs delete', 
adls_custom_format_path.format('remove_adls_item'))
-    cli_command(__name__, 'dls fs upload', 
adls_custom_format_path.format('upload_to_adls'))
-    cli_command(__name__, 'dls fs download', 
adls_custom_format_path.format('download_from_adls'))
-    cli_command(__name__, 'dls fs download', 
adls_custom_format_path.format('download_from_adls'))
-    cli_command(__name__, 'dls fs test', 
adls_custom_format_path.format('test_adls_item'))
-    cli_command(__name__, 'dls fs preview', 
adls_custom_format_path.format('preview_adls_item'))
-    cli_command(__name__, 'dls fs join', 
adls_custom_format_path.format('join_adls_items'))
-    cli_command(__name__, 'dls fs move', 
adls_custom_format_path.format('move_adls_item'))
-    cli_command(__name__, 'dls fs set-expiry', 
adls_custom_format_path.format('set_adls_item_expiry'))
-    cli_command(__name__, 'dls fs remove-expiry', 
adls_custom_format_path.format('remove_adls_item_expiry'))
+    with self.command_group('dls fs', dls_custom) as g:
+        g.command('show', 'get_adls_item')
+        g.command('list', 'list_adls_items')
+        g.command('create', 'create_adls_item')
+        g.command('append', 'append_adls_item')
+        g.command('delete', 'remove_adls_item')
+        g.command('upload', 'upload_to_adls')
+        g.command('download', 'download_from_adls')
+        g.command('download', 'download_from_adls')
+        g.command('test', 'test_adls_item')
+        g.command('preview', 'preview_adls_item')
+        g.command('join', 'join_adls_items')
+        g.command('move', 'move_adls_item')
+        g.command('set-expiry', 'set_adls_item_expiry')
+        g.command('remove-expiry', 'remove_adls_item_expiry')
 
     # filesystem permission operations
-    cli_command(__name__, 'dls fs access set-permission', 
adls_custom_format_path.format('set_adls_item_permissions'))
-    cli_command(__name__, 'dls fs access set-owner', 
adls_custom_format_path.format('set_adls_item_owner'))
-    cli_command(__name__, 'dls fs access show', 
adls_custom_format_path.format('get_adls_item_acl'))
-    cli_command(__name__, 'dls fs access set-entry', 
adls_custom_format_path.format('set_adls_item_acl_entry'))
-    cli_command(__name__, 'dls fs access set', 
adls_custom_format_path.format('set_adls_item_acl'))
-    cli_command(__name__, 'dls fs access remove-entry', 
adls_custom_format_path.format('remove_adls_item_acl_entry'))
-    cli_command(__name__, 'dls fs access remove-all', 
adls_custom_format_path.format('remove_adls_item_acl'))
+    with self.command_group('dls fs access', dls_custom) as g:
+        g.command('set-permission', 'set_adls_item_permissions')
+        g.command('set-owner', 'set_adls_item_owner')
+        g.command('show', 'get_adls_item_acl')
+        g.command('set-entry', 'set_adls_item_acl_entry')
+        g.command('set', 'set_adls_item_acl')
+        g.command('remove-entry', 'remove_adls_item_acl_entry')
+        g.command('remove-all', 'remove_adls_item_acl')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/custom.py 
new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/custom.py
--- old/azure-cli-dls-0.0.14/azure/cli/command_modules/dls/custom.py    
2017-09-23 01:47:00.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure/cli/command_modules/dls/custom.py    
2018-01-05 22:11:35.000000000 +0100
@@ -2,58 +2,55 @@
 # Copyright (c) Microsoft Corporation. All rights reserved.
 # Licensed under the MIT License. See License.txt in the project root for 
license information.
 # 
--------------------------------------------------------------------------------------------
-from azure.mgmt.datalake.store.models import 
(DataLakeStoreAccountUpdateParameters,
-                                              FirewallRule,
-                                              DataLakeStoreAccount,
-                                              EncryptionConfigType,
-                                              EncryptionIdentity,
-                                              EncryptionConfig,
-                                              EncryptionState,
-                                              KeyVaultMetaInfo,
-                                              UpdateEncryptionConfig,
-                                              UpdateKeyVaultMetaInfo)
+
+from knack.log import get_logger
+from knack.util import CLIError
+
+from azure.mgmt.datalake.store.models import (
+    DataLakeStoreAccountUpdateParameters,
+    FirewallRule,
+    DataLakeStoreAccount,
+    EncryptionConfigType,
+    EncryptionIdentity,
+    EncryptionConfig,
+    EncryptionState,
+    KeyVaultMetaInfo,
+    UpdateEncryptionConfig,
+    UpdateKeyVaultMetaInfo)
 
 from azure.datalake.store.enums import ExpiryOptionType
 from azure.datalake.store.multithread import (ADLUploader, ADLDownloader)
 from azure.cli.command_modules.dls._client_factory import (cf_dls_filesystem)
 from azure.cli.core.commands.client_factory import get_mgmt_service_client
-from azure.cli.core.util import CLIError
-import azure.cli.core.azlogging as azlogging
 from azure.cli.core.profiles import ResourceType
-from azure.cli.core.application import APPLICATION
 
-logger = azlogging.get_az_logger(__name__)
+
+logger = get_logger(__name__)
 
 
-def _update_progress(current, total):
-    hook = APPLICATION.get_progress_controller(det=True)
-    if total:
-        hook.add(message='Alive', value=current, total_val=total)
-        if total == current:
-            hook.end()
+def get_update_progress(cli_ctx):
 
+    def _update_progress(current, total):
+        hook = cli_ctx.get_progress_controller(det=True)
+        if total:
+            hook.add(message='Alive', value=current, total_val=total)
+            if total == current:
+                hook.end()
+    return _update_progress
 
-# account customiaztions
+
+# region account
 def list_adls_account(client, resource_group_name=None):
     account_list = 
client.list_by_resource_group(resource_group_name=resource_group_name) \
         if resource_group_name else client.list()
     return list(account_list)
 
 
-def create_adls_account(client,
-                        resource_group_name,
-                        account_name,
-                        location=None,
-                        default_group=None,
-                        tags=None,
-                        
encryption_type=EncryptionConfigType.service_managed.value,
-                        key_vault_id=None,
-                        key_name=None,
-                        key_version=None,
-                        disable_encryption=False,
-                        tier=None):
+def create_adls_account(cmd, client, resource_group_name, account_name, 
location=None, default_group=None, tags=None,
+                        
encryption_type=EncryptionConfigType.service_managed.value, key_vault_id=None, 
key_name=None,
+                        key_version=None, disable_encryption=False, tier=None):
 
-    location = location or _get_resource_group_location(resource_group_name)
+    location = location or _get_resource_group_location(cmd.cli_ctx, 
resource_group_name)
     create_params = DataLakeStoreAccount(location,
                                          tags=tags,
                                          default_group=default_group,
@@ -82,16 +79,8 @@
     return client.create(resource_group_name, account_name, 
create_params).result()
 
 
-def update_adls_account(client,
-                        account_name,
-                        resource_group_name,
-                        tags=None,
-                        default_group=None,
-                        firewall_state=None,
-                        allow_azure_ips=None,
-                        trusted_id_provider_state=None,
-                        tier=None,
-                        key_version=None):
+def update_adls_account(client, account_name, resource_group_name, tags=None, 
default_group=None, firewall_state=None,
+                        allow_azure_ips=None, trusted_id_provider_state=None, 
tier=None, key_version=None):
     update_params = DataLakeStoreAccountUpdateParameters(
         tags=tags,
         default_group=default_group,
@@ -106,9 +95,10 @@
             UpdateKeyVaultMetaInfo(key_version))
 
     return client.update(resource_group_name, account_name, 
update_params).result()
+# endregion
 
 
-# firewall customizations
+# region firewall
 def add_adls_firewall_rule(client,
                            account_name,
                            firewall_rule_name,
@@ -120,25 +110,20 @@
                                    account_name,
                                    firewall_rule_name,
                                    create_params)
+# endregion
+
 
+# region filesystem
+def get_adls_item(cmd, account_name, path):
+    return cf_dls_filesystem(cmd.cli_ctx, account_name).info(path)
 
-# filesystem customizations
-def get_adls_item(account_name,
-                  path):
-    return cf_dls_filesystem(account_name).info(path)
-
-
-def list_adls_items(account_name,
-                    path):
-    return cf_dls_filesystem(account_name).ls(path, detail=True)
-
-
-def create_adls_item(account_name,
-                     path,
-                     content=None,
-                     folder=False,
-                     force=False):
-    client = cf_dls_filesystem(account_name)
+
+def list_adls_items(cmd, account_name, path):
+    return cf_dls_filesystem(cmd.cli_ctx, account_name).ls(path, detail=True)
+
+
+def create_adls_item(cmd, account_name, path, content=None, folder=False, 
force=False):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if client.exists(path):
         if force:
             # only recurse if the user wants this to be a folder
@@ -162,10 +147,8 @@
         return client.touch(path)
 
 
-def append_adls_item(account_name,
-                     path,
-                     content):
-    client = cf_dls_filesystem(account_name)
+def append_adls_item(cmd, account_name, path, content):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if not client.exists(path):
         # pylint: disable=line-too-long
         raise CLIError('File at path: \'{}\' does not exist. Create the file 
before attempting to append to it.'.format(path))
@@ -176,16 +159,9 @@
         f.write(content)
 
 
-def upload_to_adls(account_name,
-                   source_path,
-                   destination_path,
-                   chunk_size,
-                   buffer_size,
-                   block_size,
-                   thread_count=None,
-                   overwrite=False,
-                   progress_callback=_update_progress):
-    client = cf_dls_filesystem(account_name)
+def upload_to_adls(cmd, account_name, source_path, destination_path, 
chunk_size, buffer_size, block_size,
+                   thread_count=None, overwrite=False, progress_callback=None):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     ADLUploader(
         client,
         destination_path,
@@ -195,25 +171,16 @@
         buffersize=buffer_size,
         blocksize=block_size,
         overwrite=overwrite,
-        progress_callback=progress_callback)
+        progress_callback=progress_callback or 
get_update_progress(cmd.cli_ctx))
+
+
+def remove_adls_item(cmd, account_name, path, recurse=False):
+    cf_dls_filesystem(cmd.cli_ctx, account_name).rm(path, recurse)
 
 
-def remove_adls_item(account_name,
-                     path,
-                     recurse=False):
-    cf_dls_filesystem(account_name).rm(path, recurse)
-
-
-def download_from_adls(account_name,
-                       source_path,
-                       destination_path,
-                       chunk_size,
-                       buffer_size,
-                       block_size,
-                       thread_count=None,
-                       overwrite=False,
-                       progress_callback=_update_progress):
-    client = cf_dls_filesystem(account_name)
+def download_from_adls(cmd, account_name, source_path, destination_path, 
chunk_size, buffer_size, block_size,
+                       thread_count=None, overwrite=False, 
progress_callback=None):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     ADLDownloader(
         client,
         source_path,
@@ -223,20 +190,15 @@
         buffersize=buffer_size,
         blocksize=block_size,
         overwrite=overwrite,
-        progress_callback=progress_callback)
+        progress_callback=progress_callback or 
get_update_progress(cmd.cli_ctx))
 
 
-def test_adls_item(account_name,
-                   path):
-    return cf_dls_filesystem(account_name).exists(path)
+def test_adls_item(cmd, account_name, path):
+    return cf_dls_filesystem(cmd.cli_ctx, account_name).exists(path)
 
 
-def preview_adls_item(account_name,
-                      path,
-                      length=None,
-                      offset=0,
-                      force=False):
-    client = cf_dls_filesystem(account_name)
+def preview_adls_item(cmd, account_name, path, length=None, offset=0, 
force=False):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if length:
         try:
             length = long(length)
@@ -258,31 +220,23 @@
     return client.read_block(path, offset, length)
 
 
-def join_adls_items(account_name,
-                    source_paths,
-                    destination_path,
-                    force=False):
-    client = cf_dls_filesystem(account_name)
+def join_adls_items(cmd, account_name, source_paths, destination_path, 
force=False):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if force and client.exists(destination_path):
         client.rm(destination_path)
 
     client.concat(destination_path, source_paths)
 
 
-def move_adls_item(account_name,
-                   source_path,
-                   destination_path,
-                   force=False):
-    client = cf_dls_filesystem(account_name)
+def move_adls_item(cmd, account_name, source_path, destination_path, 
force=False):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if force and client.exists(destination_path):
         client.rm(destination_path)
     client.mv(source_path, destination_path)
 
 
-def set_adls_item_expiry(account_name,
-                         path,
-                         expiration_time):
-    client = cf_dls_filesystem(account_name)
+def set_adls_item_expiry(cmd, account_name, path, expiration_time):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if client.info(path)['type'] != 'FILE':
         # pylint: disable=line-too-long
         raise CLIError('The specified path does not exist or is not a file. 
Please ensure the path points to a file and it exists. Path supplied: 
{}'.format(path))
@@ -295,69 +249,56 @@
     client.set_expiry(path, ExpiryOptionType.absolute.value, expiration_time)
 
 
-def remove_adls_item_expiry(account_name,
-                            path):
-    client = cf_dls_filesystem(account_name)
+def remove_adls_item_expiry(cmd, account_name, path):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if client.info(path)['type'] != 'FILE':
         # pylint: disable=line-too-long
         raise CLIError('The specified path does not exist or is not a file. 
Please ensure the path points to a file and it exists. Path supplied: 
{}'.format(path))
 
     client.set_expiry(path, ExpiryOptionType.never_expire.value)
+# endregion
 
 
-# filesystem permissions customizations
-def get_adls_item_acl(account_name,
-                      path):
-    client = cf_dls_filesystem(account_name)
+# region filesystem permissions
+def get_adls_item_acl(cmd, account_name, path):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     return client.get_acl_status(path)
 
 
-def remove_adls_item_acl(account_name,
-                         path,
-                         default_acl=False):
-    client = cf_dls_filesystem(account_name)
+def remove_adls_item_acl(cmd, account_name, path, default_acl=False):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     if default_acl:
         client.remove_default_acl(path)
     else:
         client.remove_acl(path)
 
 
-def remove_adls_item_acl_entry(account_name,
-                               path,
-                               acl_spec):
-    client = cf_dls_filesystem(account_name)
+def remove_adls_item_acl_entry(cmd, account_name, path, acl_spec):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     client.remove_acl_entries(path, acl_spec)
 
 
-def set_adls_item_acl(account_name,
-                      path,
-                      acl_spec):
-    client = cf_dls_filesystem(account_name)
+def set_adls_item_acl(cmd, account_name, path, acl_spec):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     client.set_acl(path, acl_spec)
 
 
-def set_adls_item_acl_entry(account_name,
-                            path,
-                            acl_spec):
-    client = cf_dls_filesystem(account_name)
+def set_adls_item_acl_entry(cmd, account_name, path, acl_spec):
+    client = cf_dls_filesystem(cmd.cli_ctx, account_name)
     client.modify_acl_entries(path, acl_spec)
 
 
-def set_adls_item_owner(account_name,
-                        path,
-                        owner=None,
-                        group=None):
-    cf_dls_filesystem(account_name).chown(path, owner, group)
+def set_adls_item_owner(cmd, account_name, path, owner=None, group=None):
+    cf_dls_filesystem(cmd.cli_ctx, account_name).chown(path, owner, group)
 
 
-def set_adls_item_permissions(account_name,
-                              path,
-                              permission):
-    cf_dls_filesystem(account_name).chmod(path, permission)
+def set_adls_item_permissions(cmd, account_name, path, permission):
+    cf_dls_filesystem(cmd.cli_ctx, account_name).chmod(path, permission)
+# endregion
 
 
 # helpers
-def _get_resource_group_location(resource_group_name):
-    client = get_mgmt_service_client(ResourceType.MGMT_RESOURCE_RESOURCES)
+def _get_resource_group_location(cli_ctx, resource_group_name):
+    client = get_mgmt_service_client(cli_ctx, 
ResourceType.MGMT_RESOURCE_RESOURCES)
     # pylint: disable=no-member
     return client.resource_groups.get(resource_group_name).location
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-cli-dls-0.0.14/azure_cli_dls.egg-info/PKG-INFO 
new/azure-cli-dls-0.0.19/azure_cli_dls.egg-info/PKG-INFO
--- old/azure-cli-dls-0.0.14/azure_cli_dls.egg-info/PKG-INFO    2017-09-23 
01:47:21.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure_cli_dls.egg-info/PKG-INFO    2018-01-05 
22:12:32.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: azure-cli-dls
-Version: 0.0.14
+Version: 0.0.19
 Summary: Microsoft Azure Command-Line Tools Data Lake Store Command Module
 Home-page: https://github.com/Azure/azure-cli
 Author: Microsoft Corporation
@@ -20,6 +20,28 @@
         
         Release History
         ===============
+        
+        0.0.19
+        ++++++
+        * Update for CLI core changes.
+        
+        0.0.18
+        ++++++
+        * Change the return type of the account list command: a list of 
DataLakeStoreAccount to a list of DataLakeStoreAccountBasic
+        * The properties of a Basic type is a strict subset of the properties 
of a regular type
+        
+        0.0.17
+        ++++++
+        * Minor fixes.
+        
+        0.0.16
+        ++++++
+        * minor fixes
+        
+        0.0.15 (2017-10-09)
+        +++++++++++++++++++
+        * minor fixes
+        
         0.0.14 (2017-09-22)
         +++++++++++++++++++
         * minor fixes
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-cli-dls-0.0.14/azure_cli_dls.egg-info/requires.txt 
new/azure-cli-dls-0.0.19/azure_cli_dls.egg-info/requires.txt
--- old/azure-cli-dls-0.0.14/azure_cli_dls.egg-info/requires.txt        
2017-09-23 01:47:21.000000000 +0200
+++ new/azure-cli-dls-0.0.19/azure_cli_dls.egg-info/requires.txt        
2018-01-05 22:12:32.000000000 +0100
@@ -1,4 +1,3 @@
-azure-mgmt-datalake-store==0.1.6
-azure-datalake-store==0.0.16
+azure-mgmt-datalake-store==0.2.0
+azure-datalake-store==0.0.17
 azure-cli-core
-azure-cli-command-modules-nspkg>=2.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-cli-dls-0.0.14/setup.py 
new/azure-cli-dls-0.0.19/setup.py
--- old/azure-cli-dls-0.0.14/setup.py   2017-09-23 01:47:20.000000000 +0200
+++ new/azure-cli-dls-0.0.19/setup.py   2018-01-05 22:11:35.000000000 +0100
@@ -16,7 +16,7 @@
     cmdclass = {}
 
 
-VERSION = "0.0.14"
+VERSION = "0.0.19"
 # The full list of classifiers is available at
 # https://pypi.python.org/pypi?%3Aaction=list_classifiers
 CLASSIFIERS = [
@@ -34,8 +34,8 @@
 ]
 
 DEPENDENCIES = [
-    'azure-mgmt-datalake-store==0.1.6',
-    'azure-datalake-store==0.0.16',
+    'azure-mgmt-datalake-store==0.2.0',
+    'azure-datalake-store==0.0.17',
     'azure-cli-core',
 ]
 


Reply via email to