Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
e8e955a
Add batch service sdk.
xingwu1 Mar 29, 2016
bf6f537
Fix batch client for optional overload null checks
jianghaolu Mar 30, 2016
dc05699
Add null checks to batch client optional wire parameters
jianghaolu Mar 30, 2016
01b8c79
Move parent to root
jianghaolu Mar 30, 2016
c9d7c28
Fix tests after renaming
jianghaolu Mar 31, 2016
e042fce
Update Batch SDK to newer version.
xingwu1 Mar 31, 2016
7850a34
Update the header of the files.
xingwu1 Apr 1, 2016
4e3d22d
Some refact suggestions to incorporate fluent interface
anuchandy Apr 2, 2016
9dd5420
Merge the batch credential classes.
xingwu1 Apr 8, 2016
819be16
Fix bugs in the addbulktasks function and use multiple-thread to impr…
xingwu1 Apr 25, 2016
62674dc
Use updated autorest tool to regenerate the code.
xingwu1 Apr 25, 2016
14b175d
Merge branch 'autorest' of github.com:Azure/azure-sdk-for-java into exp
jianghaolu May 4, 2016
dc3b763
Regenerate all projects and update hand-written code
jianghaolu May 4, 2016
8ddd9bc
Use Azure.Java for batch service
jianghaolu May 17, 2016
1ba74ec
Add user agent to every method
jianghaolu May 18, 2016
4622bd2
Regenerate all clients to use the correct user agents
jianghaolu May 19, 2016
e248296
Add checkstyle rules
jianghaolu May 19, 2016
0ba4063
Move checkstyle to build-tools
jianghaolu May 23, 2016
8805bc1
Renamed setXXX() to withXXX() for non top-level methods
Jun 2, 2016
6a97387
Some more renamings
jianghaolu Jun 6, 2016
0591240
Apply parameter mapping fix to batch clients
jianghaolu Jun 6, 2016
78e0788
Apply RestClient improvements and regenerate
jianghaolu Jun 16, 2016
f2f7474
Allow case-insensitive enums
jianghaolu Jun 16, 2016
637a510
Fixes #766 remove toValue() on enums
jianghaolu Jun 16, 2016
7e4eae5
Adding javadoc gen as a part of build since javadoc generation catche…
anuchandy Jun 28, 2016
8e864bd
Move non-top level classes out of implementation
jianghaolu Jun 28, 2016
ce42ae2
Merge pull request #921 from jianghaolu/move
Jun 29, 2016
0604138
Bump up version numbers for beta2 release
jianghaolu Jun 29, 2016
92182b9
Prepare for next development iteration
jianghaolu Jun 30, 2016
3da5588
Use latest authentication in test scope
jianghaolu Jun 30, 2016
1e01a49
Use beta2 for other packages
jianghaolu Jul 12, 2016
7b4a233
Prepare for next development iteration
jianghaolu Jul 12, 2016
1c79423
Change to fluent style setter.
xingwu1 Jul 7, 2016
aa8b3aa
Change wrapper SDK more fluent style
xingwu1 Jul 15, 2016
12d658e
Update comment
xingwu1 Jul 14, 2016
ca1b4fb
Update batch SDK with API version 2016-07-01.3.1
xingwu1 Jul 28, 2016
1473458
Regenerate with AutoRest fixes
jianghaolu Aug 2, 2016
9d35693
Bring Future like ServiceCall to SDK
jianghaolu Aug 3, 2016
d6df7ad
Regenerate with fixes
jianghaolu Aug 10, 2016
931447f
Generated code returns observables
jianghaolu Aug 26, 2016
1806e82
Keyvault refactoring
jianghaolu Aug 27, 2016
b444a84
Fix pagings with headers
jianghaolu Aug 27, 2016
abb3076
Add new API reactiveTask due to swagger spec change.
xingwu1 Sep 6, 2016
d756ffe
Generate beta2 runtime compatible batch data plane code
jianghaolu Sep 7, 2016
1bdf5cd
Fix batch interceptor bugs.
xingwu1 Oct 4, 2016
ab5bc49
[release] Bump up version to 1.0.0-beta3
jianghaolu Sep 29, 2016
a3655ba
[release] Prepare for next development iteration (1.0.0-beta4-SNAPSHOT)
jianghaolu Sep 28, 2016
56b216b
Add test cases for pool operation validation.
xingwu1 Oct 7, 2016
ecc3615
[release] Azure Batch 1.0.0-beta2.2
jianghaolu Oct 7, 2016
b5bb1e0
[release] Prepare for next development interation
jianghaolu Oct 7, 2016
f249299
Add comments to wrapper APIs.
xingwu1 Nov 10, 2016
4faadf3
Enable build in batch repo.
xingwu1 Nov 29, 2016
ebbe9e8
Update text.
xingwu1 Nov 29, 2016
c337214
Merge pull request #1 from xingwu1/master
xingwu1 Nov 29, 2016
5844071
Update AutoRest version and regenerate proxies
Dec 5, 2016
0537f95
Update docs in hand crafted classes
Dec 6, 2016
262d520
Incorporate review feedback
Dec 20, 2016
49f87f7
Regenerate proxy with beta2 AutoRest
Jan 4, 2017
963777b
Merge pull request #5 from jasper-schneider/docUpdates
jasper-schneider Jan 4, 2017
d7869bf
Update SDK to latest swagger spec and use newer client runtime.
xingwu1 Feb 9, 2017
b5f5657
Update method name to be simpler.
xingwu1 Feb 9, 2017
0abe87e
Regenerate with RC runtime (#1)
jianghaolu Feb 17, 2017
2af9a96
Add new test cases.
xingwu1 Feb 17, 2017
939af5b
Update to 1.0.0 release.
xingwu1 Feb 23, 2017
e3e815c
Merge pull request #7 from xingwu1/master
xingwu1 Feb 23, 2017
2f06e95
Update to correct SCM for pom.xml
xingwu1 Feb 24, 2017
3ee84e3
Merge pull request #8 from xingwu1/master
xingwu1 Feb 24, 2017
dd0fe9f
Add script for maven release
jianghaolu Feb 24, 2017
d20c7f9
Merge pull request #9 from jianghaolu/master
xingwu1 Feb 24, 2017
6613abe
Fix checking diff
jianghaolu Feb 24, 2017
b913508
Merge pull request #10 from jianghaolu/master
xingwu1 Feb 24, 2017
3550829
Change the SCM connection string.
xingwu1 Feb 24, 2017
de16733
[maven-release-plugin] prepare release v1.0.0-rc
xingwu1 Feb 24, 2017
615a550
[maven-release-plugin] prepare for next development iteration
xingwu1 Feb 24, 2017
48fabd0
Workaround the autorest bugs and Fix auth bug
xingwu1 Mar 15, 2017
68d6c56
Merge pull request #11 from xingwu1/master
xingwu1 Mar 15, 2017
e7b5779
Reverse the SCM connection to enable auto publish.
xingwu1 Mar 15, 2017
90ac33b
Merge pull request #13 from xingwu1/master
xingwu1 Mar 15, 2017
be62533
[maven-release-plugin] prepare release v1.0.0-rc2
azuresdkci Mar 15, 2017
f324cd3
[maven-release-plugin] prepare for next development iteration
azuresdkci Mar 15, 2017
16594e2
Update SDK with latest 1.0.1 runtime (#14)
xingwu1 Apr 7, 2017
446069e
[maven-release-plugin] prepare release v1.0.0
azuresdkci Apr 7, 2017
31c0081
[maven-release-plugin] prepare for next development iteration
azuresdkci Apr 7, 2017
e1a18db
SDK update for new swagger version (2017-05-01). (#15)
xingwu1 May 22, 2017
9ff3f89
[maven-release-plugin] prepare release v2.0.0
azuresdkci May 22, 2017
f193418
[maven-release-plugin] prepare for next development iteration
azuresdkci May 22, 2017
826482e
SDK release for 2017-06-01.5.1. (#16)
xingwu1 Jul 31, 2017
d0e6ef3
[maven-release-plugin] prepare release v2.1.0
azuresdkci Aug 1, 2017
ab3466d
[maven-release-plugin] prepare for next development iteration
azuresdkci Aug 1, 2017
33824c2
SDK release for API version 2017-09-01.6.0. (#18)
xingwu1 Oct 3, 2017
157248e
Fix typo in readme. (#19)
xingwu1 Oct 3, 2017
c3045e2
[maven-release-plugin] prepare release v3.0.0
azuresdkci Oct 3, 2017
03f9100
[maven-release-plugin] prepare for next development iteration
azuresdkci Oct 3, 2017
3493dda
Fixes to javadoc to be lint clean. (#20)
JonathanGiles Jan 22, 2018
bff0142
SDK release for API version 2018-03-01.6.1 (#21)
xingwu1 Mar 19, 2018
6651617
Change the release version to 3.1.0
xingwu1 Mar 19, 2018
e2bde08
[maven-release-plugin] prepare release v3.1.0
azuresdkci Mar 20, 2018
2cdcc82
[maven-release-plugin] prepare for next development iteration
azuresdkci Mar 20, 2018
ccb1269
Update README.md (#24)
JonathanGiles Apr 28, 2018
94c44b2
Change comments based on updated swagger spec (#23)
xingwu1 May 1, 2018
d0f1284
[maven-release-plugin] prepare release v3.2.0
azuresdkci May 2, 2018
b773f57
[maven-release-plugin] prepare for next development iteration
azuresdkci May 2, 2018
8fb0fac
createTasks should throw all RuntimeException happen in thread. (#25)
xingwu1 May 31, 2018
278d3ed
Update BulkTaskAdd Behavior to catch errors if chunks too large and …
bgklein Jun 5, 2018
54d86f3
[maven-release-plugin] prepare release v3.3.0
azuresdkci Jun 5, 2018
4f99499
[maven-release-plugin] prepare for next development iteration
azuresdkci Jun 5, 2018
25d60c7
Update to 4.0.0 for new Rest API (#28)
bgklein Aug 23, 2018
baa1021
[maven-release-plugin] prepare release v4.0.0
azuresdkci Aug 24, 2018
b0ef07e
[maven-release-plugin] prepare for next development iteration
azuresdkci Aug 24, 2018
0ca7e17
Add documentation for 4.0.1 release (#29)
bgklein Aug 31, 2018
8ba0d67
[maven-release-plugin] prepare release v4.0.1
azuresdkci Sep 4, 2018
0df7929
[maven-release-plugin] prepare for next development iteration
azuresdkci Sep 4, 2018
94ccd53
Update to Latest Rest API (#30)
bgklein Dec 19, 2018
0e17d4a
changing code structure
headshot786 Jan 5, 2019
d2b4349
Merge branch 'from-batch-repo' into batch-sdk-integration
weshaggard Feb 14, 2019
b079a7f
Migrating Azure Batch SDK + Integrating Batch live tests in Dev Ops +…
g2vinay Jan 13, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
59 changes: 43 additions & 16 deletions .azure-pipelines/client.test.live.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,49 @@ variables:
value: $(java-keyvault-test-arm-client-id)
- name: ARM_CLIENTKEY
value: $(java-keyvault-test-arm-client-key)
- name: AZURE_BATCH_ACCOUNT
value: $(java-batch-test-account-name)
- name: AZURE_BATCH_ACCESS_KEY
value: $(java-batch-test-account-access-key)
- name: STORAGE_ACCOUNT_NAME
value: $(java-batch-test-storage-account-name)
- name: STORAGE_ACCOUNT_KEY
value: $(java-batch-test-storage-account-key)


jobs:

- job: 'LiveTest'

strategy:
matrix:
AzureBatch:
pomFilePath: './batch/data-plane/pom.xml'
AzureKeyVault:
pomFilePath: './keyvault/data-plane/pom.xml'

pool:
vmImage: 'vs2017-win2016'

queue:
name: Hosted VS2017
steps:
# Adding -Dmaven.wagon.http.pool=false to the mvn command as a workaround to prevent build failures at maven artifacts downloading stage.
- bash: |
LOG_PARAMS='-Dorg.slf4j.simpleLogger.defaultLogLevel=error -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
mvn test -Dmaven.wagon.http.pool=false -Dsurefire.rerunFailingTestsCount=3 $LOG_PARAMS -f $(pomFile)
displayName: 'Run Live Tests'
env:
ARM_CLIENTID: $(ARM_CLIENTID)
ARM_CLIENTKEY: $(ARM_CLIENTKEY)
AZURE_TEST_MODE: RECORD

- task: PublishTestResults@2
inputs:
testResultsFormat: 'JUnit'
testResultsFiles: '**/TEST-*.xml'
steps:
- bash: |
LOG_PARAMS='-Dorg.slf4j.simpleLogger.defaultLogLevel=error -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
mvn test -Dmaven.wagon.http.pool=false -Dsurefire.rerunFailingTestsCount=3 $LOG_PARAMS -f $(pomFilePath)
displayName: 'Run Live Tests'
env:
ARM_CLIENTID: $(ARM_CLIENTID)
ARM_CLIENTKEY: $(ARM_CLIENTKEY)
AZURE_TEST_MODE: RECORD
AZURE_BATCH_ACCOUNT: $(AZURE_BATCH_ACCOUNT)
AZURE_BATCH_ACCESS_KEY: $(AZURE_BATCH_ACCESS_KEY)
STORAGE_ACCOUNT_KEY: $(STORAGE_ACCOUNT_KEY)
STORAGE_ACCOUNT_NAME: $(STORAGE_ACCOUNT_NAME)
AZURE_BATCH_ENDPOINT: https://servbatch.centralus.batch.azure.com

- task: PublishTestResults@2
inputs:
testResultsFormat: 'JUnit'
testResultsFiles: '**/TEST-*.xml'


53 changes: 53 additions & 0 deletions batch/data-plane/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
*.class
Comment thread
g2vinay marked this conversation as resolved.
Outdated

# Auth files
*.auth
*.azureauth

# Local checkstyle
*.checkstyle

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# Azure Tooling #
node_modules
packages

# Eclipse #
*.pydevproject
.project
.metadata
bin/**
tmp/**
tmp/**/*
*.tmp
*.bak
*.swp
*~.nib
local.properties
.classpath
.settings/
.loadpath

# Other Tooling #
.classpath
.project
target
.idea
*.iml

# Mac OS #
.DS_Store
.DS_Store?

# Windows #
Thumbs.db

# reduced pom files should not be included
dependency-reduced-pom.xml
8 changes: 8 additions & 0 deletions batch/data-plane/.travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
language: java

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need this travis.yml file?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noted this also. My thinking was that we would clean up docs, remove redundant files, etc after we get the repo imported.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine with follow-up clean-up.

Comment thread
g2vinay marked this conversation as resolved.
Outdated
sudo: false
jdk:
- oraclejdk8
- openjdk7
script:
- mvn install -DskipTests=true
- mvn package javadoc:aggregate -DskipTests=true
21 changes: 21 additions & 0 deletions batch/data-plane/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)
Comment thread
g2vinay marked this conversation as resolved.
Outdated

Copyright (c) 2015 Microsoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
141 changes: 141 additions & 0 deletions batch/data-plane/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
[![Build Status](https://travis-ci.org/Azure/azure-batch-sdk-for-java.svg?style=flat-square&label=build)](https://travis-ci.org/Azure/azure-batch-sdk-for-java)

## Azure Batch Libraries for Java

This README is based on the latest released version Azure Batch SDK (5.0.1). If you are looking for other releases, see the [More Information](#more-information) section below.

The Azure Batch Libraries for Java is a higher-level, object-oriented API for interacting with the Azure Batch service.


> **5.0.1** is a release that supports all features of Azure Batch service with API version "2018-12-01.8.1". We will be adding support for more new features and tweaking the API associated with Azure Batch service newer release.

**Azure Batch Authentication**

You need to create a Batch account through the [Azure portal](https://portal.azure.com) or Azure cli.

* Use the account name, key, and URL to create a `BatchSharedKeyCredentials` instance for authentication with the Azure Batch service.
The `BatchClient` class is the simplest entry point for creating and interacting with Azure Batch objects.

```java
BatchSharedKeyCredentials cred = new BatchSharedKeyCredentials(batchUri, batchAccount, batchKey);
BatchClient client = BatchClient.open(cred);
```

* The other way is using AAD (Azure Active Directory) authentication to create the client. See this [document](https://docs.microsoft.com/en-us/azure/batch/batch-aad-auth) for detail.

```java
BatchApplicationTokenCredentials cred = new BatchApplicationTokenCredentials(batchEndpoint, clientId, applicationSecret, applicationDomain, null, null);
BatchClient client = BatchClient.open(cred);
```

**Create a pool using an Azure Marketplace image**

You can create a pool of Azure virtual machines which can be used to execute tasks.

```java
System.out.println("Created a pool using an Azure Marketplace image.");

VirtualMachineConfiguration configuration = new VirtualMachineConfiguration();
configuration.withNodeAgentSKUId(skuId).withImageReference(imageRef);
client.poolOperations().createPool(poolId, poolVMSize, configuration, poolVMCount);

System.out.println("Created a Pool: " + poolId);
```

**Create a Job**

You can create a job by using the recently created pool.

```java
PoolInformation poolInfo = new PoolInformation();
poolInfo.withPoolId(poolId);
client.jobOperations().createJob(jobId, poolInfo);
```

# Sample Code

You can find sample code that illustrates Batch usage scenarios in https://github.com/azure/azure-batch-samples


# Download


**5.0.1**

If you are using released builds from 5.0.1, add the following to your POM file:

```xml
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-batch</artifactId>
<version>5.0.1</version>
</dependency>
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-client-runtime</artifactId>
<version>1.6.4</version>
</dependency>
```

# Pre-requisites

- A Java Developer Kit (JDK), v 1.7 or later
- Maven
- Azure Service Principal - see [how to create authentication info](./AUTH.md).


## Help

If you encounter any bugs with these libraries, please file issues via [Issues](https://github.com/Azure/azure-batch-sdk-for-java/issues) or checkout [StackOverflow for Azure Java SDK](http://stackoverflow.com/questions/tagged/azure-java-sdk).

# Contribute Code

If you would like to become an active contributor to this project please follow the instructions provided in [Microsoft Azure Projects Contribution Guidelines](http://azure.github.io/guidelines.html).

1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

# Build Code
To build the code open a console, navigate to the git repository, and run
```
maven build
```

# Test Code
To run tests, set the following environment variables:
* AZURE_BATCH_ENDPOINT
* CLIENT_ID
* APPLICATION_SECRET
* AZURE_BATCH_ACCOUNT
* AZURE_BATCH_ACCESS_KEY
* STORAGE_ACCOUNT_NAME
* STORAGE_ACCOUNT_KEY
Then run any test in src/test/java directory.

# More Information
* [Javadoc](http://azure.github.io/azure-sdk-for-java)
* [http://azure.com/java](http://azure.com/java)
* If you don't have a Microsoft Azure subscription you can get a FREE trial account [here](http://go.microsoft.com/fwlink/?LinkId=330212)

**Previous Releases and Corresponding Repo Branches**

| Version | SHA1 | Remarks |
|-------------------|-------------------------------------------------------------------------------------------|-------------------------------------------------------|
| 5.0.1 | [5.0.1](https://github.com/Azure/azure-batch-sdk-for-java/tree/master) | Tagged release for 5.0.1 version of Azure Batch libraries |
| 5.0.0 | [5.0.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v5.0.0) | Tagged release for 5.0.0 version of Azure Batch libraries |
| 4.0.1 | [4.0.1](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v4.0.1) | Tagged release for 4.0.1 version of Azure Batch libraries |
| 4.0.0 | [4.0.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v4.0.0) | Tagged release for 4.0.0 version of Azure Batch libraries |
| 3.2.0 | [3.2.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v3.2.0) | Tagged release for 3.2.0 version of Azure Batch libraries |
| 3.1.0 | [3.1.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v3.1.0) | Tagged release for 3.1.0 version of Azure Batch libraries |
| 3.0.0 | [3.0.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v3.0.0) | Tagged release for 3.0.0 version of Azure Batch libraries |
| 2.1.0 | [2.1.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v2.1.0) | Tagged release for 2.1.0 version of Azure Batch libraries |
| 2.0.0 | [2.0.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v2.0.0) | Tagged release for 2.0.0 version of Azure Batch libraries |
| 1.0.0 | [1.0.0](https://github.com/Azure/azure-batch-sdk-for-java/releases/tag/v1.0.0) | Tagged release for 1.0.0 version of Azure Batch libraries |
| 1.0.0-beta2 | [1.0.0-beta2](https://github.com/Azure/azure-sdk-for-java/tree/1.0.0-beta2) | Tagged release for 1.0.0-beta2 version of Azure Batch libraries |

---

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
80 changes: 80 additions & 0 deletions batch/data-plane/changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Azure Batch SDK for Java release notes

## Changes in 5.0.1
### Features
### Fixes
- Fix corrupt signing of 5.0.0 Java SDK binary

## Changes in 5.0.0
### Features
- **[Breaking]** Removed support for the `ChangeOSVersion` API on `CloudServiceConfiguration` pools.
- Removed `PoolOperations.ChangeOSVersion`.
- Renamed `TargetOSVersion` to `OSVersion` and removed `CurrentOSVersion` on `CloudPool`.
- Removed `PoolState.Upgrading` enum.
- **[Breaking]** Removed `DataEgressGiB` and `DataIngressGiB` from `PoolUsageMetrics`. These properties are no longer supported.
- **[Breaking]** ResourceFile improvements
- Added the ability specify an entire Azure Storage container in `ResourceFile`. There are now three supported modes for `ResourceFile`:
- `ResourceFile.withUrl` creates a `ResourceFile` pointing to a single HTTP URL.
- `ResourceFile.withStorageContainerUrl` creates a `ResourceFile` pointing to an Azure Blob Storage container.
- `ResourceFile.withAutoStorageContainer` creates a `ResourceFile` pointing to an Azure Blob Storage container in the Batch registered auto-storage account.
- The `BlobPrefix` property can be used to filter downloads from a storage container to only those matching the prefix.
- URLs provided to `ResourceFile` via the `ResourceFile.withUrl` method can now be any HTTP URL. Previously, these had to be an Azure Blob Storage URL.
- **[Breaking]** Removed `OSDisk` property from `VirtualMachineConfiguration`. This property is no longer supported.
- Pools which set the `DynamicVNetAssignmentScope` on `NetworkConfiguration` to be `DynamicVNetAssignmentScope.Job` can
now dynamically assign a Virtual Network to each node the job's tasks run on. The specific Virtual Network to join the nodes to is specified in
the new `JobNetworkConfiguration` property on `CloudJob` and `JobSpecification`.
- Note: This feature is in public preview. It is disabled for all Batch accounts except for those which have contacted us and requested to be in the pilot.
- The maximum lifetime of a task is now 180 days (previously it was 7).
- Added support on Windows pools for creating users with a specific login mode (either `Batch` or `Interactive`) via `WindowsUserConfiguration.LoginMode`.
- The default task retention time for all tasks is now 7 days, previously it was infinite.

### REST API version
This version of the Batch .NET client library targets version 2018-12-01.8.0 of the Azure Batch REST API.

## Changes in 4.0.1
### Fixes
- Fix missing signing of 4.0.0 Java SDK binary

## Changes in 4.0.0
### Features
- Added the functionality to get which version of the Azure Batch Node Agent(https://github.com/Azure/Batch/blob/master/changelogs/nodeagent/CHANGELOG.md) is running on nodes via the NodeAgentInformation property of ComputeNode.
- Added additional error handling to task add operations to prevent deadlock scenarios.
- Removed validation status from count operations.
- Updated adal, azure-client-runtime, and commons-codec dependencies.
- Update 'List' methods to return the lower layer PagedList object instead of the standard List.

### REST API version
This version of the Batch Java client library targets version 2018-08-01.7.1 of the Azure Batch REST API. See this [document](https://docs.microsoft.com/en-us/rest/api/batchservice/batch-service-rest-api-versioning#latest-version-2018-08-0171) for detail.

## Changes in 3.3.0
### Features
- `createTasks` rethrow `RuntimeException` catched by internal threads.
- `createTasks` handle `RequestSizeTooLarge` chunking errors for well behaved tasks.

## Changes in 3.2.0
### Features
- Update comments for some classes and properties.
- Added the `leavingPool` property to `NodeCounts` class.

## Changes in 3.1.0
### Features
- Added the ability to query pool node counts by state, via the new `listPoolNodeCounts` method on `PoolOperations`.
- Added the ability to upload Azure Batch node agent logs from a particular node, via the `uploadComputeNodeBatchServiceLogs` method on `ComputeNodeOperations`.
- This is intended for use in debugging by Microsoft support when there are problems on a node.

### REST API version
This version of the Batch Java client library targets version 2018-03-01.6.1 of the Azure Batch REST API. See this [document](https://docs.microsoft.com/en-us/rest/api/batchservice/batch-service-rest-api-versioning#latest-version-2018-03-0161) for detail.


## Changes in 3.0.0
### Features
- Added the ability to get a discount on Windows VM pricing if you have on-premises licenses for the OS SKUs you are deploying, via `licenseType` on `VirtualMachineConfiguration`.
- Added support for attaching empty data drives to `VirtualMachineConfiguration` based pools, via the new `dataDisks` property on `VirtualMachineConfiguration`.
- **[Breaking]** Custom images must now be deployed using a reference to an ARM Image, instead of pointing to .vhd files in blobs directly.
- The new `virtualMachineImageId` property on `ImageReference` contains the reference to the ARM Image, and `OSDisk.imageUris` no longer exists.
- Because of this, `imageReference` is now a required property of `VirtualMachineConfiguration`.
- **[Breaking]** Multi-instance tasks (created using `MultiInstanceSettings`) must now specify a `coordinationCommandLine`, and `numberOfInstances` is now optional and defaults to 1.
- Added support for tasks run using Docker containers. To run a task using a Docker container you must specify a `containerConfiguration` on the `VirtualMachineConfiguration` for a pool, and then add `taskContainerSettings` on the Task.

### REST API version
This version of the Batch Java client library targets version 2017-09-01.6.0 of the Azure Batch REST API. See this [document](https://docs.microsoft.com/en-us/rest/api/batchservice/batch-service-rest-api-versioning#latest-version-2017-09-0160) for detail.
Loading