Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
b6f61b9
Release for GA
ReneOv-MSFT Mar 4, 2026
ef1328d
Update sdk/batch/azure-compute-batch/CHANGELOG.md
ReneOv-MSFT Mar 4, 2026
adf1ca3
Release for GA
ReneOv-MSFT Mar 5, 2026
c34fd31
Merge branch 'renojeda/release/1.0.0' of https://github.com/Azure/azu…
ReneOv-MSFT Mar 5, 2026
38886dc
Other Changes subheader
ReneOv-MSFT Mar 5, 2026
7c1ad0e
WIP: Api-review
ReneOv-MSFT Mar 30, 2026
a1f7bbb
WIP: Api-review
ReneOv-MSFT Mar 31, 2026
05c8304
Update sdk/batch/azure-compute-batch/CHANGELOG.md
ReneOv-MSFT Mar 4, 2026
41c13b6
Other Changes subheader
ReneOv-MSFT Mar 5, 2026
17b3dec
WIP: Api-review
ReneOv-MSFT Mar 30, 2026
58d4543
WIP: Api-review
ReneOv-MSFT Mar 31, 2026
d5ecd96
API view review
ReneOv-MSFT Apr 13, 2026
193572c
API view review
ReneOv-MSFT Apr 13, 2026
875377b
Update sdk/batch/azure-compute-batch/CHANGELOG.md
ReneOv-MSFT Mar 4, 2026
d990d0e
Other Changes subheader
ReneOv-MSFT Mar 5, 2026
d482a93
WIP: Api-review
ReneOv-MSFT Mar 30, 2026
07609b4
WIP: Api-review
ReneOv-MSFT Mar 31, 2026
dff817b
API Review: AzureNamedKeyCredential
ReneOv-MSFT Apr 21, 2026
17f26fc
Add customization directory for required imports
ReneOv-MSFT Apr 23, 2026
17f1473
Update TypeSpec and run customization
ReneOv-MSFT Apr 24, 2026
0f221c7
Merge branch 'main' into renojeda/release/1.0.0
ReneOv-MSFT Apr 24, 2026
babac90
API-view review part 3
ReneOv-MSFT Apr 29, 2026
75c2da1
rene patch
wiboris Apr 30, 2026
3f33b09
Merge branch 'main' into renojeda/release/1.0.0
ReneOv May 12, 2026
24a963c
Update from main
ReneOv-MSFT May 18, 2026
d3ce00a
Merge branch 'main' into renojeda/release/1.0.0
ReneOv May 18, 2026
0548c83
Remove unused import
ReneOv-MSFT May 27, 2026
bf3addf
Merge branch 'renojeda/release/1.0.0' of https://github.com/Azure/azu…
ReneOv-MSFT May 27, 2026
10ef8d6
Merge branch 'main' into renojeda/release/1.0.0
ReneOv May 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion eng/versioning/version_client.txt
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ com.azure:azure-communication-messages;1.1.10;1.2.0-beta.2
com.azure:azure-communication-phonenumbers;1.4.4;1.5.0-beta.1
com.azure:azure-communication-rooms;1.2.7;1.3.0-beta.1
com.azure:azure-communication-sms;1.1.39;1.2.0-beta.1
com.azure:azure-compute-batch;1.0.0-beta.5;1.0.0-beta.6
com.azure:azure-compute-batch;1.0.0-beta.6;1.0.0
com.azure:azure-containers-containerregistry;1.2.23;1.3.0-beta.1
com.azure:azure-containers-containerregistry-perf;1.0.0-beta.1;1.0.0-beta.1
com.azure:azure-core;1.58.0;1.59.0-beta.1
Expand Down
24 changes: 20 additions & 4 deletions sdk/batch/azure-compute-batch/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
# Release History

## 1.0.0-beta.6 (2026-03-04)
## 1.0.0 (2026-03-27)

### Breaking Changes

- Name changes for timeout methods:
- `getTimeOutInSeconds()` -> `getTimeOut()`

- Model suffix name change:
- `BatchAffinityInfo` -> `BatchAffinityDetails`
- `BatchJobExecutionInfo` -> `BatchJobExecutionDetails`
- All models following the `Batch[Object]Info` pattern -> `Batch[Object]Details`
- `VirtualMachineInfo` -> `VirtualMachineDetails`

### Other Changes

This is the first generally available release of the `azure-compute-batch` library. It includes all features and breaking changes introduced in `1.0.0-beta.6`.

Comment thread
ReneOv-MSFT marked this conversation as resolved.
## 1.0.0-beta.6 (2026-02-25)

### Features Added

Expand All @@ -17,13 +34,12 @@

- Added Properties:
- Added `ipv6Address` to `BatchNode`
- Added `Ipv6RemoteLoginIpAddress` and `Ipv6RemoteLoginPort` to `BatchNodeRemoteLoginSettings`
- Added `IpFamilies` and `IpTags` to `BatchPublicAddressConfiguration`
- Added `ipv6RemoteLoginIpAddress` and `ipv6RemoteLoginPort` to `BatchNodeRemoteLoginSettings`
- Added `ipFamilies` and `ipTags` to `BatchPublicAddressConfiguration`
- Added `JobDefaultOder` to `BatchTaskSchedulingPolicy`
Comment thread
ReneOv-MSFT marked this conversation as resolved.
- Added `ManagedDisk` to `DataDisk`
- Added `CustomerManagedKey` to `DiskEncryptionConfiguration`
- Added `DiskEncryptionSet` to `ManagedDisk`
- Added `DiskWithVMGuestStateValue` to `SecurityEncryptionTypes`
- Added `ProxyAgentSetting` to `SecurityProfile`
Comment thread
ReneOv-MSFT marked this conversation as resolved.

### Breaking Changes
Expand Down
14 changes: 7 additions & 7 deletions sdk/batch/azure-compute-batch/MigrationGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -538,12 +538,12 @@ With `Azure-Compute-Batch`, you can call `createJob` with a parameter of type `B

```java com.azure.compute.batch.create-job.creates-a-basic-job
batchClient.createJob(
new BatchJobCreateParameters("jobId", new BatchPoolInfo().setPoolId("poolId")).setPriority(0), null);
new BatchJobCreateParameters("jobId", new BatchPoolDetails().setPoolId("poolId")).setPriority(0), null);
```

```java com.azure.compute.batch.create-job.creates-a-basic-job-async
batchAsyncClient.createJob(
new BatchJobCreateParameters("jobId", new BatchPoolInfo().setPoolId("poolId")).setPriority(0))
new BatchJobCreateParameters("jobId", new BatchPoolDetails().setPoolId("poolId")).setPriority(0))
.subscribe(unused -> System.out.println("Job created successfully"));
```

Expand Down Expand Up @@ -613,7 +613,7 @@ With `Azure-Compute-Batch`, you can call `replaceJob` directly on the client.

```java com.azure.compute.batch.replace-job.job-patch
batchClient.replaceJob("jobId",
new BatchJob(new BatchPoolInfo().setPoolId("poolId")).setPriority(100)
new BatchJob(new BatchPoolDetails().setPoolId("poolId")).setPriority(100)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("PT1H")).setMaxTaskRetryCount(-1)),
null, null);
Expand All @@ -636,7 +636,7 @@ batchClient.updateJob("jobId",
new BatchJobUpdateParameters().setPriority(100)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("PT1H")).setMaxTaskRetryCount(-1))
.setPoolInfo(new BatchPoolInfo().setPoolId("poolId")),
.setPoolInfo(new BatchPoolDetails().setPoolId("poolId")),
null, null);
```

Expand Down Expand Up @@ -803,7 +803,7 @@ With `Azure-Compute-Batch`, you can call `createJobSchedule` directly on the cli
```java com.azure.compute.batch.create-job-schedule.creates-a-basic-job-schedule
batchClient.createJobSchedule(new BatchJobScheduleCreateParameters("jobScheduleId",
new BatchJobScheduleConfiguration().setRecurrenceInterval(Duration.parse("PT5M")),
new BatchJobSpecification(new BatchPoolInfo().setPoolId("poolId"))), null);
new BatchJobSpecification(new BatchPoolDetails().setPoolId("poolId"))), null);
```

#### Get Job Schedule
Expand Down Expand Up @@ -878,7 +878,7 @@ With `Azure-Compute-Batch`, you can call `replaceJobSchedule` directly on the cl

```java com.azure.compute.batch.replace-job-schedule.job-schedule-patch
batchClient.replaceJobSchedule("jobScheduleId",
new BatchJobSchedule(new BatchJobSpecification(new BatchPoolInfo().setPoolId("poolId")).setPriority(0)
new BatchJobSchedule(new BatchJobSpecification(new BatchPoolDetails().setPoolId("poolId")).setPriority(0)
.setUsesTaskDependencies(false)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("P10675199DT2H48M5.4775807S"))
Expand Down Expand Up @@ -1204,7 +1204,7 @@ BatchNodeDeallocateParameters deallocateParams
= new BatchNodeDeallocateParameters().setNodeDeallocateOption(BatchNodeDeallocateOption.TERMINATE);

BatchNodeDeallocateOptions deallocateOptions
= new BatchNodeDeallocateOptions().setTimeOutInSeconds(Duration.ofSeconds(30))
= new BatchNodeDeallocateOptions().setTimeOut(Duration.ofSeconds(30))
.setParameters(deallocateParams);
SyncPoller<BatchNode, BatchNode> deallocatePoller = batchClient.beginDeallocateNode("poolId", "nodeId", deallocateOptions);

Expand Down
16 changes: 8 additions & 8 deletions sdk/batch/azure-compute-batch/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ Various documentation is available to help you get started
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-compute-batch</artifactId>
<version>1.0.0-beta.6</version>
<version>1.0.0</version>
</dependency>
```

Expand Down Expand Up @@ -415,12 +415,12 @@ The `createJob` method can be used to create a job.

```java com.azure.compute.batch.create-job.creates-a-basic-job
batchClient.createJob(
new BatchJobCreateParameters("jobId", new BatchPoolInfo().setPoolId("poolId")).setPriority(0), null);
new BatchJobCreateParameters("jobId", new BatchPoolDetails().setPoolId("poolId")).setPriority(0), null);
```

```java com.azure.compute.batch.create-job.creates-a-basic-job-async
batchAsyncClient.createJob(
new BatchJobCreateParameters("jobId", new BatchPoolInfo().setPoolId("poolId")).setPriority(0))
new BatchJobCreateParameters("jobId", new BatchPoolDetails().setPoolId("poolId")).setPriority(0))
.subscribe(unused -> System.out.println("Job created successfully"));
```

Expand Down Expand Up @@ -463,7 +463,7 @@ The `replaceJob` method can be used to replace an existing job.

```java com.azure.compute.batch.replace-job.job-patch
batchClient.replaceJob("jobId",
new BatchJob(new BatchPoolInfo().setPoolId("poolId")).setPriority(100)
new BatchJob(new BatchPoolDetails().setPoolId("poolId")).setPriority(100)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("PT1H")).setMaxTaskRetryCount(-1)),
null, null);
Expand All @@ -478,7 +478,7 @@ batchClient.updateJob("jobId",
new BatchJobUpdateParameters().setPriority(100)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("PT1H")).setMaxTaskRetryCount(-1))
.setPoolInfo(new BatchPoolInfo().setPoolId("poolId")),
.setPoolInfo(new BatchPoolDetails().setPoolId("poolId")),
null, null);
```

Expand Down Expand Up @@ -606,7 +606,7 @@ The `createJobSchedule` method with a parameter of type `BatchJobScheduleCreateP
```java com.azure.compute.batch.create-job-schedule.creates-a-basic-job-schedule
batchClient.createJobSchedule(new BatchJobScheduleCreateParameters("jobScheduleId",
new BatchJobScheduleConfiguration().setRecurrenceInterval(Duration.parse("PT5M")),
new BatchJobSpecification(new BatchPoolInfo().setPoolId("poolId"))), null);
new BatchJobSpecification(new BatchPoolDetails().setPoolId("poolId"))), null);
```

#### Get Job Schedule
Expand Down Expand Up @@ -650,7 +650,7 @@ The `replaceJobSchedule` method can be used to replace a job schedule.

```java com.azure.compute.batch.replace-job-schedule.job-schedule-patch
batchClient.replaceJobSchedule("jobScheduleId",
new BatchJobSchedule(new BatchJobSpecification(new BatchPoolInfo().setPoolId("poolId")).setPriority(0)
new BatchJobSchedule(new BatchJobSpecification(new BatchPoolDetails().setPoolId("poolId")).setPriority(0)
.setUsesTaskDependencies(false)
.setConstraints(
new BatchJobConstraints().setMaxWallClockTime(Duration.parse("P10675199DT2H48M5.4775807S"))
Expand Down Expand Up @@ -858,7 +858,7 @@ BatchNodeDeallocateParameters deallocateParams
= new BatchNodeDeallocateParameters().setNodeDeallocateOption(BatchNodeDeallocateOption.TERMINATE);

BatchNodeDeallocateOptions deallocateOptions
= new BatchNodeDeallocateOptions().setTimeOutInSeconds(Duration.ofSeconds(30))
= new BatchNodeDeallocateOptions().setTimeOut(Duration.ofSeconds(30))
.setParameters(deallocateParams);
SyncPoller<BatchNode, BatchNode> deallocatePoller = batchClient.beginDeallocateNode("poolId", "nodeId", deallocateOptions);

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import com.azure.autorest.customization.Customization;
import com.azure.autorest.customization.LibraryCustomization;
import com.github.javaparser.ast.NodeList;
import com.github.javaparser.ast.type.ClassOrInterfaceType;
import org.slf4j.Logger;

public class BatchClientBuilderCustomization extends Customization {
@Override
public void customize(LibraryCustomization customization, Logger logger) {
customization.getClass("com.azure.compute.batch", "BatchClientBuilder").customizeAst(ast -> {
// Add AzureNamedKeyCredentialTrait imports to BatchClientBuilder
ast.addImport("com.azure.core.client.traits.AzureNamedKeyCredentialTrait");

ast.getClassByName("BatchClientBuilder").ifPresent(clazz -> {
NodeList<ClassOrInterfaceType> implementedTypes = clazz.getImplementedTypes();
boolean hasKeyCredentialTrait = implementedTypes.stream()
.filter(implementedType -> implementedType.getNameAsString().equals("AzureNamedKeyCredentialTrait"))
.findFirst()
.isPresent();
if (!hasKeyCredentialTrait) {
clazz.addImplementedType("AzureNamedKeyCredentialTrait<BatchClientBuilder>");
}
});
});
}
}
21 changes: 21 additions & 0 deletions sdk/batch/azure-compute-batch/customization/src/main/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>com.azure</groupId>
<artifactId>azure-code-customization-parent</artifactId>
<version>1.0.0-beta.1</version> <!-- {x-version-update;com.azure:azure-code-customization-parent;current} -->
<relativePath>../../../parents/azure-code-customization-parent</relativePath>
</parent>

<name>Microsoft Azure client library for Batch</name>
<description>This package contains the Microsoft Azure Batch client library.</description>

<groupId>com.azure.tools</groupId>
<artifactId>azure-compute-batch-customization</artifactId>
<version>1.0.0-beta.1</version>
<packaging>jar</packaging>
</project>
6 changes: 3 additions & 3 deletions sdk/batch/azure-compute-batch/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@

<groupId>com.azure</groupId>
<artifactId>azure-compute-batch</artifactId>
<version>1.0.0-beta.6</version> <!-- {x-version-update;com.azure:azure-compute-batch;current} -->
<version>1.0.0</version> <!-- {x-version-update;com.azure:azure-compute-batch;current} -->
<packaging>jar</packaging>

<name>Microsoft Azure SDK for Batch Client</name>
<description>This package contains Microsoft Azure Batch Track 2 data plane client library.</description>
<name>Microsoft Azure client library for Batch Client</name>
<description>This package contains the Microsoft Azure Batch Track 2 data plane client library.</description>
<url>https://github.com/Azure/azure-sdk-for-java</url>

<licenses>
Expand Down
Loading