Skip to main content

Microsoft Azure Batch Extended Features

Project description

Microsoft Azure Batch Extensions

This project is a preview build of the Microsoft Azure command-line interface to demonstrate proposed features in Azure Batch. For further details on the Azure CLI, please check the official documentation.

The purpose of this project is to allow customers to try out proposed Batch features and provide feedback to help shape the direction of the Batch service. The features presented here may not be compatible with other Batch client SDKs and tools, nor will they necessarily be adopted into the core Batch service.

As these features are still in preview, they will be updated regularly, and refined based on customer feedback. Unfortunately this may result in occasional breaking changes, though every effort will be made to keep this to a minimum.



Samples for all of the preview features can be found in samples.

SDK Installation

$ pip install azure-batch-extensions

CLI Extensions Installation

In order to make use of these features, you must have the Azure CLI installed. You can find futher instructions in the official documentation and in the Azure CLI GitHub repository.

This extension package can be installed to supplement the existing Azure CLI Batch commands. It can be installed using the CLI extension tools (recommended):

$ az extension add -n azure-batch-cli-extensions

Each release of the CLI ships with a specific version of the azure-batch-cli-extensions. This is considered the official version for the CLI release. If you would like to install a different version you can specify any release listed at To add a specific extension version and pin to it:

$ az extension add --source

Uninstall CLI extensions

The CLI extensions can be removed using the az extension remove command:

$ az extension remove -n azure-batch-cli-extensions

Azure Batch account requirements

In order to make use of the new features previewed here, you will need an Azure Batch account with a linked storage account. For more information on this, see Create an Azure Batch account using the Azure Portal.


This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact with any additional questions or comments.

Developer Installation

Preparing your machine

  1. Install Python 3.5.x from Please note that the version of Python that comes preinstalled on OSX is 2.7.

  2. Clone your repository and check out the master branch.

  3. Create a new virtual environment “env” for Python 3.5 in the root of your clone. You can do this by running:


python -m venv <clone root>\env

OSX/Ubuntu (bash)

python –m venv <clone root>/env
  1. Activate the env virtual environment by running:


<clone root>\env\scripts\activate.bat

OSX/Ubuntu (bash)

. <clone root>/env/bin/activate
  1. Install the dependencies and load the command module as a local package using pip.

python scripts/

SDK Release History

9.0.0 (2022-08-30)

  • Update to match latest Python SDK taking associated breaking changes.

8.0.0 (2020-06-15)

  • Update to match latest Python SDK taking associated breaking changes.

7.0.0 (2019-08-20)

  • Update to match latest Python SDK taking associated breaking changes.

  • Add support in template parsing to support ARM object syntax.

6.0.1 (2019-06-20)

  • Align to Python SDK for breaking changes to shared models

5.0.5 (2019-02-25)

  • Fix bug in blobSource conversion to httpUrl

5.0.4 (2019-02-25)

  • Fix bug where specifying a mergeTask in a template would cause task add failures.

5.0.3 (2019-02-19)

  • Fix bug where blobSource was no longer an attribute of ExtendedResourceFile

  • Improve test coverage

5.0.2 (2019-02-15)

  • Fix bug where apiVersion became required

5.0.1 (2019-02-15)

  • Fix bug where knack.get_logger was used instead of logging.getLogger

5.0.0 (2019-02-01)

  • Align to Python SDK for breaking changes to shared models

  • This also includes collapsing all models into one models file. Models should now be imported from the models namespace and not from their individual files.

4.0.2 (2018-10-06)

  • Move ExtendedTaskOperation feature to standard Azure Batch SDK

4.0.1 (2018-10-04)

  • Clean up code to meet Python standards

4.0.0 (2018-08-29)

  • Breaking Model signatures are now using only keywords-arguments syntax. Each positional argument must be rewritten as a keyword argument.

3.1.2 (2018-08-22)

  • Fix bug related to mis-configured endpoints for storage operations.

3.1.1 (2018-7-19)

  • Enable using cloud shell AAD token for extension SDK

  • Fix bug on using default thread count to submit tasks on the machine with odd number CPU cores

3.1.0 (2018-7-17)

  • Align to Python SDK for shared models

3.0.0 (2018-6-20)

  • Update add_collection function of ExtendedTaskOperations to retry failed requests due to server errors.

  • Update add_collection function of ExtendedTaskOperations to track failed requests due to client errors and raise a CreateTasksErrorException if any occured.

  • Elements of input template/json can be case insensitive.

  • Escape in parameter json file doesn’t need double escape.

  • The callback of file operations include file name.

2.0.0 (2018-6-1)

  • Rename the namespace to azext.batch

1.1.2 (2018-5-21)

  • Update add_collection function of ExtendedTaskOperations to handle RequestBodyTooLarge error for well behaved tasks.

  • Update add_collection function of ExtendedTaskOperations to enable degrees of parallelism.

1.1.1 (2018-4-10)

  • Using azure-storage-blob as dependency

  • Expand template only accept JSON dictionary object

  • Minor bugs fix

1.0.1 (2017-10-10)

  • Better support for unicode in Python 2.7

1.0.0 (2017-10-03)

  • Support for Batch SDK version 4.0

  • Added support for extended common_resource_files in MultiInstanceSettings

  • Added support for native containers in tasks (including RepeatTask in a task factory)

0.2.0 (2017-07-29)

  • Support for Batch SDK version 3.1

  • Fix bug with pool OS version detection

  • Download from file group now supports prefix

  • Support detection of Linux command using /bin/sh

0.1.1 (2017-07-10)

  • Fix to support azure-cli-core v2.0.11

0.1.0 (2017-06-28)

  • Initial preview release.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

azure-batch-extensions-9.0.0.tar.gz (79.2 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page