@azure-rest/batch 1.0.0-beta.2 → 1.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/LICENSE +4 -4
  2. package/README.md +4 -4
  3. package/dist/browser/batchClient.js +17 -22
  4. package/dist/browser/batchClient.js.map +1 -1
  5. package/dist/browser/clientDefinitions.d.ts +42 -2
  6. package/dist/browser/clientDefinitions.js.map +1 -1
  7. package/dist/browser/index.d.ts +0 -1
  8. package/dist/browser/index.js +0 -1
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/isUnexpected.d.ts +6 -1
  11. package/dist/browser/isUnexpected.js +11 -5
  12. package/dist/browser/isUnexpected.js.map +1 -1
  13. package/dist/browser/models.d.ts +199 -114
  14. package/dist/browser/models.js.map +1 -1
  15. package/dist/browser/outputModels.d.ts +196 -93
  16. package/dist/browser/outputModels.js.map +1 -1
  17. package/dist/browser/paginateHelper.d.ts +27 -2
  18. package/dist/browser/paginateHelper.js +69 -2
  19. package/dist/browser/paginateHelper.js.map +1 -1
  20. package/dist/browser/parameters.d.ts +444 -58
  21. package/dist/browser/parameters.js.map +1 -1
  22. package/dist/browser/responses.d.ts +113 -2
  23. package/dist/browser/responses.js.map +1 -1
  24. package/dist/commonjs/batchClient.js +17 -22
  25. package/dist/commonjs/batchClient.js.map +1 -1
  26. package/dist/commonjs/clientDefinitions.d.ts +42 -2
  27. package/dist/commonjs/clientDefinitions.js.map +1 -1
  28. package/dist/commonjs/credentials/batchSharedKeyCredentials.js +1 -2
  29. package/dist/commonjs/credentials/batchSharedKeyCredentials.js.map +1 -1
  30. package/dist/commonjs/index.d.ts +0 -1
  31. package/dist/commonjs/index.js +0 -1
  32. package/dist/commonjs/index.js.map +1 -1
  33. package/dist/commonjs/isUnexpected.d.ts +6 -1
  34. package/dist/commonjs/isUnexpected.js +11 -5
  35. package/dist/commonjs/isUnexpected.js.map +1 -1
  36. package/dist/commonjs/models.d.ts +199 -114
  37. package/dist/commonjs/models.js.map +1 -1
  38. package/dist/commonjs/outputModels.d.ts +196 -93
  39. package/dist/commonjs/outputModels.js.map +1 -1
  40. package/dist/commonjs/paginateHelper.d.ts +27 -2
  41. package/dist/commonjs/paginateHelper.js +70 -3
  42. package/dist/commonjs/paginateHelper.js.map +1 -1
  43. package/dist/commonjs/parameters.d.ts +444 -58
  44. package/dist/commonjs/parameters.js.map +1 -1
  45. package/dist/commonjs/responses.d.ts +113 -2
  46. package/dist/commonjs/responses.js.map +1 -1
  47. package/dist/commonjs/tsdoc-metadata.json +11 -11
  48. package/dist/esm/batchClient.js +17 -22
  49. package/dist/esm/batchClient.js.map +1 -1
  50. package/dist/esm/clientDefinitions.d.ts +42 -2
  51. package/dist/esm/clientDefinitions.js.map +1 -1
  52. package/dist/esm/credentials/batchSharedKeyCredentials.js +1 -2
  53. package/dist/esm/credentials/batchSharedKeyCredentials.js.map +1 -1
  54. package/dist/esm/index.d.ts +0 -1
  55. package/dist/esm/index.js +0 -1
  56. package/dist/esm/index.js.map +1 -1
  57. package/dist/esm/isUnexpected.d.ts +6 -1
  58. package/dist/esm/isUnexpected.js +11 -5
  59. package/dist/esm/isUnexpected.js.map +1 -1
  60. package/dist/esm/models.d.ts +199 -114
  61. package/dist/esm/models.js.map +1 -1
  62. package/dist/esm/outputModels.d.ts +196 -93
  63. package/dist/esm/outputModels.js.map +1 -1
  64. package/dist/esm/paginateHelper.d.ts +27 -2
  65. package/dist/esm/paginateHelper.js +69 -2
  66. package/dist/esm/paginateHelper.js.map +1 -1
  67. package/dist/esm/parameters.d.ts +444 -58
  68. package/dist/esm/parameters.js.map +1 -1
  69. package/dist/esm/responses.d.ts +113 -2
  70. package/dist/esm/responses.js.map +1 -1
  71. package/dist/react-native/batchClient.js +17 -22
  72. package/dist/react-native/batchClient.js.map +1 -1
  73. package/dist/react-native/clientDefinitions.d.ts +42 -2
  74. package/dist/react-native/clientDefinitions.js.map +1 -1
  75. package/dist/react-native/index.d.ts +0 -1
  76. package/dist/react-native/index.js +0 -1
  77. package/dist/react-native/index.js.map +1 -1
  78. package/dist/react-native/isUnexpected.d.ts +6 -1
  79. package/dist/react-native/isUnexpected.js +11 -5
  80. package/dist/react-native/isUnexpected.js.map +1 -1
  81. package/dist/react-native/models.d.ts +199 -114
  82. package/dist/react-native/models.js.map +1 -1
  83. package/dist/react-native/outputModels.d.ts +196 -93
  84. package/dist/react-native/outputModels.js.map +1 -1
  85. package/dist/react-native/paginateHelper.d.ts +27 -2
  86. package/dist/react-native/paginateHelper.js +69 -2
  87. package/dist/react-native/paginateHelper.js.map +1 -1
  88. package/dist/react-native/parameters.d.ts +444 -58
  89. package/dist/react-native/parameters.js.map +1 -1
  90. package/dist/react-native/responses.d.ts +113 -2
  91. package/dist/react-native/responses.js.map +1 -1
  92. package/package.json +26 -36
  93. package/dist/browser/batchClient.d.ts.map +0 -1
  94. package/dist/browser/clientDefinitions.d.ts.map +0 -1
  95. package/dist/browser/credentials/batchSharedKeyCredentials-browser.d.mts.map +0 -1
  96. package/dist/browser/index.d.ts.map +0 -1
  97. package/dist/browser/isUnexpected.d.ts.map +0 -1
  98. package/dist/browser/logger.d.ts.map +0 -1
  99. package/dist/browser/models.d.ts.map +0 -1
  100. package/dist/browser/outputModels.d.ts.map +0 -1
  101. package/dist/browser/paginateHelper.d.ts.map +0 -1
  102. package/dist/browser/parameters.d.ts.map +0 -1
  103. package/dist/browser/replacePoolPropertiesPolicy.d.ts +0 -11
  104. package/dist/browser/replacePoolPropertiesPolicy.d.ts.map +0 -1
  105. package/dist/browser/replacePoolPropertiesPolicy.js +0 -33
  106. package/dist/browser/replacePoolPropertiesPolicy.js.map +0 -1
  107. package/dist/browser/responses.d.ts.map +0 -1
  108. package/dist/commonjs/batchClient.d.ts.map +0 -1
  109. package/dist/commonjs/clientDefinitions.d.ts.map +0 -1
  110. package/dist/commonjs/credentials/batchSharedKeyCredentials.d.ts.map +0 -1
  111. package/dist/commonjs/index.d.ts.map +0 -1
  112. package/dist/commonjs/isUnexpected.d.ts.map +0 -1
  113. package/dist/commonjs/logger.d.ts.map +0 -1
  114. package/dist/commonjs/models.d.ts.map +0 -1
  115. package/dist/commonjs/outputModels.d.ts.map +0 -1
  116. package/dist/commonjs/paginateHelper.d.ts.map +0 -1
  117. package/dist/commonjs/parameters.d.ts.map +0 -1
  118. package/dist/commonjs/replacePoolPropertiesPolicy.d.ts +0 -11
  119. package/dist/commonjs/replacePoolPropertiesPolicy.d.ts.map +0 -1
  120. package/dist/commonjs/replacePoolPropertiesPolicy.js +0 -36
  121. package/dist/commonjs/replacePoolPropertiesPolicy.js.map +0 -1
  122. package/dist/commonjs/responses.d.ts.map +0 -1
  123. package/dist/esm/batchClient.d.ts.map +0 -1
  124. package/dist/esm/clientDefinitions.d.ts.map +0 -1
  125. package/dist/esm/credentials/batchSharedKeyCredentials.d.ts.map +0 -1
  126. package/dist/esm/index.d.ts.map +0 -1
  127. package/dist/esm/isUnexpected.d.ts.map +0 -1
  128. package/dist/esm/logger.d.ts.map +0 -1
  129. package/dist/esm/models.d.ts.map +0 -1
  130. package/dist/esm/outputModels.d.ts.map +0 -1
  131. package/dist/esm/paginateHelper.d.ts.map +0 -1
  132. package/dist/esm/parameters.d.ts.map +0 -1
  133. package/dist/esm/replacePoolPropertiesPolicy.d.ts +0 -11
  134. package/dist/esm/replacePoolPropertiesPolicy.d.ts.map +0 -1
  135. package/dist/esm/replacePoolPropertiesPolicy.js +0 -33
  136. package/dist/esm/replacePoolPropertiesPolicy.js.map +0 -1
  137. package/dist/esm/responses.d.ts.map +0 -1
  138. package/dist/react-native/batchClient.d.ts.map +0 -1
  139. package/dist/react-native/clientDefinitions.d.ts.map +0 -1
  140. package/dist/react-native/credentials/batchSharedKeyCredentials-react-native.d.mts.map +0 -1
  141. package/dist/react-native/index.d.ts.map +0 -1
  142. package/dist/react-native/isUnexpected.d.ts.map +0 -1
  143. package/dist/react-native/logger.d.ts.map +0 -1
  144. package/dist/react-native/models.d.ts.map +0 -1
  145. package/dist/react-native/outputModels.d.ts.map +0 -1
  146. package/dist/react-native/paginateHelper.d.ts.map +0 -1
  147. package/dist/react-native/parameters.d.ts.map +0 -1
  148. package/dist/react-native/replacePoolPropertiesPolicy.d.ts +0 -11
  149. package/dist/react-native/replacePoolPropertiesPolicy.d.ts.map +0 -1
  150. package/dist/react-native/replacePoolPropertiesPolicy.js +0 -33
  151. package/dist/react-native/replacePoolPropertiesPolicy.js.map +0 -1
  152. package/dist/react-native/responses.d.ts.map +0 -1
@@ -17,7 +17,7 @@ export interface BatchApplicationOutput {
17
17
  /** An error response received from the Azure Batch service. */
18
18
  export interface BatchErrorOutput {
19
19
  /** An identifier for the error. Codes are invariant and are intended to be consumed programmatically. */
20
- code: string;
20
+ code?: string;
21
21
  /** A message describing the error, intended to be suitable for display in a user interface. */
22
22
  message?: BatchErrorMessageOutput;
23
23
  /** A collection of key-value pairs containing additional details about the error. */
@@ -52,7 +52,7 @@ export interface BatchPoolUsageMetricsOutput {
52
52
  startTime: string;
53
53
  /** The end time of the aggregation interval covered by this entry. */
54
54
  endTime: string;
55
- /** The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). */
55
+ /** The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes). */
56
56
  vmSize: string;
57
57
  /** The total core hours used in the Pool during this aggregation interval. */
58
58
  totalCoreHours: number;
@@ -63,12 +63,12 @@ export interface BatchPoolUsageMetricsOutput {
63
63
  */
64
64
  export interface VirtualMachineConfigurationOutput {
65
65
  /** A reference to the Azure Virtual Machines Marketplace Image or the custom Virtual Machine Image to use. */
66
- imageReference: ImageReferenceOutput;
66
+ imageReference: BatchVmImageReferenceOutput;
67
67
  /** The SKU of the Batch Compute Node agent to be provisioned on Compute Nodes in the Pool. The Batch Compute Node agent is a program that runs on each Compute Node in the Pool, and provides the command-and-control interface between the Compute Node and the Batch service. There are different implementations of the Compute Node agent, known as SKUs, for different operating systems. You must specify a Compute Node agent SKU which matches the selected Image reference. To get the list of supported Compute Node agent SKUs along with their list of verified Image references, see the 'List supported Compute Node agent SKUs' operation. */
68
68
  nodeAgentSKUId: string;
69
69
  /** Windows operating system settings on the virtual machine. This property must not be specified if the imageReference property specifies a Linux OS Image. */
70
70
  windowsConfiguration?: WindowsConfigurationOutput;
71
- /** The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine. */
71
+ /** The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine. */
72
72
  dataDisks?: Array<DataDiskOutput>;
73
73
  /**
74
74
  * This only applies to Images that contain the Windows operating system, and
@@ -83,7 +83,7 @@ export interface VirtualMachineConfigurationOutput {
83
83
  */
84
84
  licenseType?: string;
85
85
  /** The container configuration for the Pool. If specified, setup is performed on each Compute Node in the Pool to allow Tasks to run in containers. All regular Tasks and Job manager Tasks run on this Pool must specify the containerSettings property, and all other Tasks may specify it. */
86
- containerConfiguration?: ContainerConfigurationOutput;
86
+ containerConfiguration?: BatchContainerConfigurationOutput;
87
87
  /** The disk encryption configuration for the pool. If specified, encryption is performed on each node in the pool during node provisioning. */
88
88
  diskEncryptionConfiguration?: DiskEncryptionConfigurationOutput;
89
89
  /** The node placement configuration for the pool. This configuration will specify rules on how nodes in the pool will be physically allocated. */
@@ -91,7 +91,7 @@ export interface VirtualMachineConfigurationOutput {
91
91
  /** The virtual machine extension for the pool. If specified, the extensions mentioned in this configuration will be installed on each node. */
92
92
  extensions?: Array<VMExtensionOutput>;
93
93
  /** Settings for the operating system disk of the Virtual Machine. */
94
- osDisk?: OSDiskOutput;
94
+ osDisk?: BatchOsDiskOutput;
95
95
  /** Specifies the security profile settings for the virtual machine or virtual machine scale set. */
96
96
  securityProfile?: SecurityProfileOutput;
97
97
  /** Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. The service artifact reference id in the form of /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} */
@@ -102,7 +102,7 @@ export interface VirtualMachineConfigurationOutput {
102
102
  * To get the list of all Azure Marketplace Image references verified by Azure Batch, see the
103
103
  * ' List Supported Images ' operation.
104
104
  */
105
- export interface ImageReferenceOutput {
105
+ export interface BatchVmImageReferenceOutput {
106
106
  /** The publisher of the Azure Virtual Machines Marketplace Image. For example, Canonical or MicrosoftWindowsServer. */
107
107
  publisher?: string;
108
108
  /** The offer type of the Azure Virtual Machines Marketplace Image. For example, UbuntuServer or WindowsServer. */
@@ -111,7 +111,7 @@ export interface ImageReferenceOutput {
111
111
  sku?: string;
112
112
  /** The version of the Azure Virtual Machines Marketplace Image. A value of 'latest' can be specified to select the latest version of an Image. If omitted, the default is 'latest'. */
113
113
  version?: string;
114
- /** The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. */
114
+ /** The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration. */
115
115
  virtualMachineImageId?: string;
116
116
  /** The specific version of the platform image or marketplace image used to create the node. This read-only field differs from 'version' only if the value specified for 'version' when the pool was created was 'latest'. */
117
117
  readonly exactVersion?: string;
@@ -149,7 +149,7 @@ export interface DataDiskOutput {
149
149
  storageAccountType?: StorageAccountTypeOutput;
150
150
  }
151
151
  /** The configuration for container-enabled Pools. */
152
- export interface ContainerConfigurationOutput {
152
+ export interface BatchContainerConfigurationOutput {
153
153
  /**
154
154
  * The container technology to be used.
155
155
  *
@@ -198,7 +198,7 @@ export interface BatchNodePlacementConfigurationOutput {
198
198
  /**
199
199
  * Node placement Policy type on Batch Pools. Allocation policy used by Batch Service to provision the nodes. If not specified, Batch will use the regional policy.
200
200
  *
201
- * Possible values: "Shared", "Startup", "VfsMounts", "Task", "JobPrep", "Applications"
201
+ * Possible values: "regional", "zonal"
202
202
  */
203
203
  policy?: BatchNodePlacementPolicyTypeOutput;
204
204
  }
@@ -224,9 +224,9 @@ export interface VMExtensionOutput {
224
224
  provisionAfterExtensions?: string[];
225
225
  }
226
226
  /** Settings for the operating system disk of the compute node (VM). */
227
- export interface OSDiskOutput {
227
+ export interface BatchOsDiskOutput {
228
228
  /** Specifies the ephemeral Disk Settings for the operating system disk used by the compute node (VM). */
229
- ephemeralOSDiskSettings?: DiffDiskSettingsOutput;
229
+ ephemeralOSDiskSettings?: BatchDiffDiskSettingsOutput;
230
230
  /**
231
231
  * Specifies the caching requirements. Possible values are: None, ReadOnly, ReadWrite. The default values are: None for Standard storage. ReadOnly for Premium storage.
232
232
  *
@@ -244,9 +244,9 @@ export interface OSDiskOutput {
244
244
  * Specifies the ephemeral Disk Settings for the operating system disk used by the
245
245
  * compute node (VM).
246
246
  */
247
- export interface DiffDiskSettingsOutput {
247
+ export interface BatchDiffDiskSettingsOutput {
248
248
  /**
249
- * Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
249
+ * Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
250
250
  *
251
251
  * Possible values: "cachedisk"
252
252
  */
@@ -261,10 +261,10 @@ export interface ManagedDiskOutput {
261
261
  */
262
262
  storageAccountType?: StorageAccountTypeOutput;
263
263
  /** Specifies the security profile settings for the managed disk. */
264
- securityProfile?: VMDiskSecurityProfileOutput;
264
+ securityProfile?: BatchVmDiskSecurityProfileOutput;
265
265
  }
266
266
  /** Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and required when using Confidential VMs. */
267
- export interface VMDiskSecurityProfileOutput {
267
+ export interface BatchVmDiskSecurityProfileOutput {
268
268
  /**
269
269
  * Specifies the EncryptionType of the managed disk. It is set to VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob. **Note**: It can be set for only Confidential VMs and is required when using Confidential VMs.
270
270
  *
@@ -275,18 +275,18 @@ export interface VMDiskSecurityProfileOutput {
275
275
  /** Specifies the security profile settings for the virtual machine or virtual machine scale set. */
276
276
  export interface SecurityProfileOutput {
277
277
  /** This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. For more information on encryption at host requirements, please refer to https://learn.microsoft.com/azure/virtual-machines/disk-encryption#supported-vm-sizes. */
278
- encryptionAtHost: boolean;
278
+ encryptionAtHost?: boolean;
279
279
  /**
280
280
  * Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings.
281
281
  *
282
282
  * Possible values: "trustedLaunch", "confidentialVM"
283
283
  */
284
- securityType: SecurityTypesOutput;
284
+ securityType?: SecurityTypesOutput;
285
285
  /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. Specifies the security settings like secure boot and vTPM used while creating the virtual machine. */
286
- uefiSettings: UefiSettingsOutput;
286
+ uefiSettings?: BatchUefiSettingsOutput;
287
287
  }
288
288
  /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. */
289
- export interface UefiSettingsOutput {
289
+ export interface BatchUefiSettingsOutput {
290
290
  /** Specifies whether secure boot should be enabled on the virtual machine. */
291
291
  secureBootEnabled?: boolean;
292
292
  /** Specifies whether vTPM should be enabled on the virtual machine. */
@@ -302,7 +302,7 @@ export interface ServiceArtifactReferenceOutput {
302
302
  }
303
303
  /** The network configuration for a Pool. */
304
304
  export interface NetworkConfigurationOutput {
305
- /** The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. Enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. */
305
+ /** The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration */
306
306
  subnetId?: string;
307
307
  /**
308
308
  * The scope of dynamic vnet assignment.
@@ -313,20 +313,20 @@ export interface NetworkConfigurationOutput {
313
313
  /** The configuration for endpoints on Compute Nodes in the Batch Pool. */
314
314
  endpointConfiguration?: BatchPoolEndpointConfigurationOutput;
315
315
  /** The Public IPAddress configuration for Compute Nodes in the Batch Pool. */
316
- publicIPAddressConfiguration?: PublicIpAddressConfigurationOutput;
316
+ publicIPAddressConfiguration?: BatchPublicIpAddressConfigurationOutput;
317
317
  /** Whether this pool should enable accelerated networking. Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview. */
318
318
  enableAcceleratedNetworking?: boolean;
319
319
  }
320
320
  /** The endpoint configuration for a Pool. */
321
321
  export interface BatchPoolEndpointConfigurationOutput {
322
322
  /** A list of inbound NAT Pools that can be used to address specific ports on an individual Compute Node externally. The maximum number of inbound NAT Pools per Batch Pool is 5. If the maximum number of inbound NAT Pools is exceeded the request fails with HTTP status code 400. This cannot be specified if the IPAddressProvisioningType is NoPublicIPAddresses. */
323
- inboundNATPools: Array<InboundNatPoolOutput>;
323
+ inboundNATPools: Array<BatchInboundNatPoolOutput>;
324
324
  }
325
325
  /**
326
326
  * A inbound NAT Pool that can be used to address specific ports on Compute Nodes
327
327
  * in a Batch Pool externally.
328
328
  */
329
- export interface InboundNatPoolOutput {
329
+ export interface BatchInboundNatPoolOutput {
330
330
  /** The name of the endpoint. The name must be unique within a Batch Pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400. */
331
331
  name: string;
332
332
  /**
@@ -335,7 +335,7 @@ export interface InboundNatPoolOutput {
335
335
  * Possible values: "tcp", "udp"
336
336
  */
337
337
  protocol: InboundEndpointProtocolOutput;
338
- /** The port number on the Compute Node. This must be unique within a Batch Pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400. */
338
+ /** The port number on the Compute Node. This must be unique within a Batch Pool. Acceptable values are between 1 and 65535 except for 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400. */
339
339
  backendPort: number;
340
340
  /** The first port number in the range of external ports that will be used to provide inbound access to the backendPort on individual Compute Nodes. Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a Pool must be distinct and cannot overlap. Each range must contain at least 40 ports. If any reserved or overlapping values are provided the request fails with HTTP status code 400. */
341
341
  frontendPortRangeStart: number;
@@ -360,7 +360,7 @@ export interface NetworkSecurityGroupRuleOutput {
360
360
  sourcePortRanges?: string[];
361
361
  }
362
362
  /** The public IP Address configuration of the networking configuration of a Pool. */
363
- export interface PublicIpAddressConfigurationOutput {
363
+ export interface BatchPublicIpAddressConfigurationOutput {
364
364
  /**
365
365
  * The provisioning type for Public IP Addresses for the Pool. The default value is BatchManaged.
366
366
  *
@@ -386,7 +386,7 @@ export interface PublicIpAddressConfigurationOutput {
386
386
  * block Batch from being able to re-run the StartTask.
387
387
  */
388
388
  export interface BatchStartTaskOutput {
389
- /** The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
389
+ /** The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
390
390
  commandLine: string;
391
391
  /** The settings for the container under which the StartTask runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files. */
392
392
  containerSettings?: BatchTaskContainerSettingsOutput;
@@ -423,7 +423,7 @@ export interface ContainerHostBatchBindMountEntryOutput {
423
423
  /**
424
424
  * The path which be mounted to container customer can select.
425
425
  *
426
- * Possible values: "regional", "zonal"
426
+ * Possible values: "Shared", "Startup", "VfsMounts", "Task", "JobPrep", "Applications"
427
427
  */
428
428
  source?: ContainerHostDataPathOutput;
429
429
  /** Mount this source path as read-only mode or not. Default value is false (read/write mode). For Linux, if you mount this path as a read/write mode, this does not mean that all users in container have the read/write access for the path, it depends on the access in host VM. If this path is mounted read-only, all users within the container will not be able to modify the path. */
@@ -463,7 +463,7 @@ export interface UserIdentityOutput {
463
463
  /** Specifies the options for the auto user that runs an Azure Batch Task. */
464
464
  export interface AutoUserSpecificationOutput {
465
465
  /**
466
- * The scope for the auto user. The default value is pool. If the pool is running Windows, a value of Task should be specified if stricter isolation between tasks is required, such as if the task mutates the registry in a way which could impact other tasks.
466
+ * The scope for the auto user. The default value is pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by StartTasks.
467
467
  *
468
468
  * Possible values: "task", "pool"
469
469
  */
@@ -475,6 +475,23 @@ export interface AutoUserSpecificationOutput {
475
475
  */
476
476
  elevationLevel?: ElevationLevelOutput;
477
477
  }
478
+ /** A reference to a Certificate to be installed on Compute Nodes in a Pool. Warning: This object is deprecated and will be removed after February, 2024. Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead. */
479
+ export interface BatchCertificateReferenceOutput {
480
+ /** The thumbprint of the Certificate. */
481
+ thumbprint: string;
482
+ /** The algorithm with which the thumbprint is associated. This must be sha1. */
483
+ thumbprintAlgorithm: string;
484
+ /**
485
+ * The location of the Certificate store on the Compute Node into which to install the Certificate. The default value is currentuser. This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.
486
+ *
487
+ * Possible values: "currentuser", "localmachine"
488
+ */
489
+ storeLocation?: BatchCertificateStoreLocationOutput;
490
+ /** The name of the Certificate store on the Compute Node into which to install the Certificate. This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My. */
491
+ storeName?: string;
492
+ /** Which user Accounts on the Compute Node should have access to the private data of the Certificate. You can specify more than one visibility in this collection. The default is all Accounts. */
493
+ visibility?: BatchCertificateVisibilityOutput[];
494
+ }
478
495
  /** A reference to an Package to be deployed to Compute Nodes. */
479
496
  export interface BatchApplicationPackageReferenceOutput {
480
497
  /** The ID of the application to deploy. When creating a pool, the package's application ID must be fully qualified (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). */
@@ -533,7 +550,7 @@ export interface WindowsUserConfigurationOutput {
533
550
  * The Batch service does not assign any meaning to this metadata; it is solely
534
551
  * for the use of user code.
535
552
  */
536
- export interface MetadataItemOutput {
553
+ export interface BatchMetadataItemOutput {
537
554
  /** The name of the metadata item. */
538
555
  name: string;
539
556
  /** The value of the metadata item. */
@@ -593,10 +610,10 @@ export interface CifsMountConfigurationOutput {
593
610
  export interface AzureFileShareConfigurationOutput {
594
611
  /** The Azure Storage account name. */
595
612
  accountName: string;
596
- /** The Azure Files URL. This is of the form 'https://{account}.file.core.windows.net/'. */
597
- azureFileUrl: string;
598
613
  /** The Azure Storage account key. */
599
614
  accountKey: string;
615
+ /** The Azure Files URL. This is of the form 'https://{account}.file.core.windows.net/'. */
616
+ azureFileUrl: string;
600
617
  /** The relative path on the compute node where the file system will be mounted. All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable. */
601
618
  relativeMountPath: string;
602
619
  /** Additional command line options to pass to the mount command. These are 'net use' options in Windows and 'mount' options in Linux. */
@@ -680,7 +697,7 @@ export interface BatchPoolOutput {
680
697
  readonly allocationState?: AllocationStateOutput;
681
698
  /** The time at which the Pool entered its current allocation state. */
682
699
  readonly allocationStateTransitionTime?: string;
683
- /** The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). */
700
+ /** The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). */
684
701
  readonly vmSize?: string;
685
702
  /** The virtual machine configuration for the Pool. This property must be specified. */
686
703
  readonly virtualMachineConfiguration?: VirtualMachineConfigurationOutput;
@@ -712,6 +729,13 @@ export interface BatchPoolOutput {
712
729
  readonly networkConfiguration?: NetworkConfigurationOutput;
713
730
  /** A Task specified to run on each Compute Node as it joins the Pool. */
714
731
  startTask?: BatchStartTaskOutput;
732
+ /**
733
+ * For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location.
734
+ * For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location.
735
+ * For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.
736
+ * Warning: This property is deprecated and will be removed after February, 2024. Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead.
737
+ */
738
+ readonly certificateReferences?: Array<BatchCertificateReferenceOutput>;
715
739
  /** The list of Packages to be installed on each Compute Node in the Pool. Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool. */
716
740
  readonly applicationPackageReferences?: Array<BatchApplicationPackageReferenceOutput>;
717
741
  /** The number of task slots that can be used to run concurrent tasks on a single compute node in the pool. The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256. */
@@ -721,7 +745,7 @@ export interface BatchPoolOutput {
721
745
  /** The list of user Accounts to be created on each Compute Node in the Pool. */
722
746
  readonly userAccounts?: Array<UserAccountOutput>;
723
747
  /** A list of name-value pairs associated with the Pool as metadata. */
724
- readonly metadata?: Array<MetadataItemOutput>;
748
+ readonly metadata?: Array<BatchMetadataItemOutput>;
725
749
  /** Utilization and resource usage statistics for the entire lifetime of the Pool. This property is populated only if the BatchPool was retrieved with an expand clause including the 'stats' attribute; otherwise it is null. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes. */
726
750
  readonly stats?: BatchPoolStatisticsOutput;
727
751
  /** A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, CIFS/SMB, and Blobfuse. */
@@ -816,9 +840,9 @@ export interface BatchPoolResourceStatisticsOutput {
816
840
  /** The peak used disk space in GiB across all Compute Nodes in the Pool. */
817
841
  peakDiskGiB: number;
818
842
  /** The total number of disk read operations across all Compute Nodes in the Pool. */
819
- diskReadIOps: number;
843
+ diskReadIOps: string;
820
844
  /** The total number of disk write operations across all Compute Nodes in the Pool. */
821
- diskWriteIOps: number;
845
+ diskWriteIOps: string;
822
846
  /** The total amount of data in GiB of disk reads across all Compute Nodes in the Pool. */
823
847
  diskReadGiB: number;
824
848
  /** The total amount of data in GiB of disk writes across all Compute Nodes in the Pool. */
@@ -837,10 +861,10 @@ export interface BatchPoolIdentityOutput {
837
861
  */
838
862
  type: BatchPoolIdentityTypeOutput;
839
863
  /** The list of user identities associated with the Batch account. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */
840
- userAssignedIdentities?: Array<UserAssignedIdentityOutput>;
864
+ userAssignedIdentities?: Array<BatchUserAssignedIdentityOutput>;
841
865
  }
842
866
  /** The user assigned Identity */
843
- export interface UserAssignedIdentityOutput {
867
+ export interface BatchUserAssignedIdentityOutput {
844
868
  /** The ARM resource id of the user assigned identity. */
845
869
  resourceId: string;
846
870
  /** The client id of the user assigned identity. */
@@ -863,7 +887,7 @@ export interface BatchSupportedImageOutput {
863
887
  /** The ID of the Compute Node agent SKU which the Image supports. */
864
888
  nodeAgentSKUId: string;
865
889
  /** The reference to the Azure Virtual Machine's Marketplace Image. */
866
- imageReference: ImageReferenceOutput;
890
+ imageReference: BatchVmImageReferenceOutput;
867
891
  /**
868
892
  * The type of operating system (e.g. Windows or Linux) of the Image.
869
893
  *
@@ -989,17 +1013,17 @@ export interface BatchJobOutput {
989
1013
  *
990
1014
  * Possible values: "noaction", "terminatejob"
991
1015
  */
992
- onAllTasksComplete?: OnAllBatchTasksCompleteOutput;
1016
+ onAllTasksComplete?: BatchAllTasksCompleteModeOutput;
993
1017
  /**
994
1018
  * The action the Batch service should take when any Task in the Job fails. A Task is considered to have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error. The default is noaction.
995
1019
  *
996
1020
  * Possible values: "noaction", "performexitoptionsjobaction"
997
1021
  */
998
- readonly onTaskFailure?: OnBatchTaskFailureOutput;
1022
+ readonly onTaskFailure?: BatchTaskFailureModeOutput;
999
1023
  /** The network configuration for the Job. */
1000
1024
  readonly networkConfiguration?: BatchJobNetworkConfigurationOutput;
1001
1025
  /** A list of name-value pairs associated with the Job as metadata. The Batch service does not assign any meaning to metadata; it is solely for the use of user code. */
1002
- metadata?: Array<MetadataItemOutput>;
1026
+ metadata?: Array<BatchMetadataItemOutput>;
1003
1027
  /** The execution information for the Job. */
1004
1028
  readonly executionInfo?: BatchJobExecutionInfoOutput;
1005
1029
  /** Resource usage statistics for the entire lifetime of the Job. This property is populated only if the BatchJob was retrieved with an expand clause including the 'stats' attribute; otherwise it is null. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes. */
@@ -1042,7 +1066,7 @@ export interface BatchJobManagerTaskOutput {
1042
1066
  id: string;
1043
1067
  /** The display name of the Job Manager Task. It need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
1044
1068
  displayName?: string;
1045
- /** The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1069
+ /** The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1046
1070
  commandLine: string;
1047
1071
  /** The settings for the container under which the Job Manager Task runs. If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files. */
1048
1072
  containerSettings?: BatchTaskContainerSettingsOutput;
@@ -1100,11 +1124,11 @@ export interface OutputFileBlobContainerDestinationOutput {
1100
1124
  containerUrl: string;
1101
1125
  /** The reference to the user assigned identity to use to access Azure Blob Storage specified by containerUrl. The identity must have write access to the Azure Blob Storage container. */
1102
1126
  identityReference?: BatchNodeIdentityReferenceOutput;
1103
- /** A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types. */
1104
- uploadHeaders?: Array<HttpHeaderOutput>;
1127
+ /** A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types. */
1128
+ uploadHeaders?: Array<OutputFileUploadHeaderOutput>;
1105
1129
  }
1106
1130
  /** An HTTP header name-value pair */
1107
- export interface HttpHeaderOutput {
1131
+ export interface OutputFileUploadHeaderOutput {
1108
1132
  /** The case-insensitive name of the header to be used while uploading output files. */
1109
1133
  name: string;
1110
1134
  /** The value of the header to be used while uploading output files. */
@@ -1137,7 +1161,7 @@ export interface BatchTaskConstraintsOutput {
1137
1161
  */
1138
1162
  export interface AuthenticationTokenSettingsOutput {
1139
1163
  /** The Batch resources to which the token grants access. The authentication token grants access to a limited set of Batch service operations. Currently the only supported value for the access property is 'job', which grants access to all operations related to the Job which contains the Task. */
1140
- access?: AccessScopeOutput[];
1164
+ access?: BatchAccessScopeOutput[];
1141
1165
  }
1142
1166
  /**
1143
1167
  * A Job Preparation Task to run before any Tasks of the Job on any given Compute Node.
@@ -1170,7 +1194,7 @@ export interface AuthenticationTokenSettingsOutput {
1170
1194
  export interface BatchJobPreparationTaskOutput {
1171
1195
  /** A string that uniquely identifies the Job Preparation Task within the Job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobpreparation'. No other Task in the Job can have the same ID as the Job Preparation Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobPreparationTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict). */
1172
1196
  id?: string;
1173
- /** The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1197
+ /** The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1174
1198
  commandLine: string;
1175
1199
  /** The settings for the container under which the Job Preparation Task runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files. */
1176
1200
  containerSettings?: BatchTaskContainerSettingsOutput;
@@ -1208,7 +1232,7 @@ export interface BatchJobPreparationTaskOutput {
1208
1232
  export interface BatchJobReleaseTaskOutput {
1209
1233
  /** A string that uniquely identifies the Job Release Task within the Job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobrelease'. No other Task in the Job can have the same ID as the Job Release Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobReleaseTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict). */
1210
1234
  id?: string;
1211
- /** The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1235
+ /** The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1212
1236
  commandLine: string;
1213
1237
  /** The settings for the container under which the Job Release Task runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files. */
1214
1238
  containerSettings?: BatchTaskContainerSettingsOutput;
@@ -1252,7 +1276,7 @@ export interface BatchAutoPoolSpecificationOutput {
1252
1276
  export interface BatchPoolSpecificationOutput {
1253
1277
  /** The display name for the Pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
1254
1278
  displayName?: string;
1255
- /** The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). */
1279
+ /** The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes). */
1256
1280
  vmSize: string;
1257
1281
  /** The virtual machine configuration for the Pool. This property must be specified. */
1258
1282
  virtualMachineConfiguration?: VirtualMachineConfigurationOutput;
@@ -1280,12 +1304,18 @@ export interface BatchPoolSpecificationOutput {
1280
1304
  networkConfiguration?: NetworkConfigurationOutput;
1281
1305
  /** A Task to run on each Compute Node as it joins the Pool. The Task runs when the Compute Node is added to the Pool or when the Compute Node is restarted. */
1282
1306
  startTask?: BatchStartTaskOutput;
1307
+ /**
1308
+ * For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.
1309
+ * Warning: This property is deprecated and will be removed after February, 2024.
1310
+ * Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead.
1311
+ */
1312
+ certificateReferences?: Array<BatchCertificateReferenceOutput>;
1283
1313
  /** The list of Packages to be installed on each Compute Node in the Pool. When creating a pool, the package's application ID must be fully qualified (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}). Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool. */
1284
1314
  applicationPackageReferences?: Array<BatchApplicationPackageReferenceOutput>;
1285
1315
  /** The list of user Accounts to be created on each Compute Node in the Pool. */
1286
1316
  userAccounts?: Array<UserAccountOutput>;
1287
1317
  /** A list of name-value pairs associated with the Pool as metadata. The Batch service does not assign any meaning to metadata; it is solely for the use of user code. */
1288
- metadata?: Array<MetadataItemOutput>;
1318
+ metadata?: Array<BatchMetadataItemOutput>;
1289
1319
  /** A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, CIFS/SMB, and Blobfuse. */
1290
1320
  mountConfiguration?: Array<MountConfigurationOutput>;
1291
1321
  /**
@@ -1299,10 +1329,10 @@ export interface BatchPoolSpecificationOutput {
1299
1329
  }
1300
1330
  /** The network configuration for the Job. */
1301
1331
  export interface BatchJobNetworkConfigurationOutput {
1302
- /** The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. */
1332
+ /** The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. */
1303
1333
  subnetId: string;
1304
1334
  /** Whether to withdraw Compute Nodes from the virtual network to DNC when the job is terminated or deleted. If true, nodes will remain joined to the virtual network to DNC. If false, nodes will automatically withdraw when the job ends. Defaults to false. */
1305
- skipWithdrawFromVNet: boolean;
1335
+ skipWithdrawFromVNet?: boolean;
1306
1336
  }
1307
1337
  /** Contains information about the execution of a Job in the Azure Batch service. */
1308
1338
  export interface BatchJobExecutionInfoOutput {
@@ -1324,7 +1354,7 @@ export interface BatchJobSchedulingErrorOutput {
1324
1354
  *
1325
1355
  * Possible values: "usererror", "servererror"
1326
1356
  */
1327
- category: ErrorCategoryOutput;
1357
+ category: BatchErrorSourceCategoryOutput;
1328
1358
  /** An identifier for the Job scheduling error. Codes are invariant and are intended to be consumed programmatically. */
1329
1359
  code?: string;
1330
1360
  /** A message describing the Job scheduling error, intended to be suitable for display in a user interface. */
@@ -1347,19 +1377,19 @@ export interface BatchJobStatisticsOutput {
1347
1377
  /** The total wall clock time of all Tasks in the Job. The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If a Task was retried, this includes the wall clock time of all the Task retries. */
1348
1378
  wallClockTime: string;
1349
1379
  /** The total number of disk read operations made by all Tasks in the Job. */
1350
- readIOps: number;
1380
+ readIOps: string;
1351
1381
  /** The total number of disk write operations made by all Tasks in the Job. */
1352
- writeIOps: number;
1382
+ writeIOps: string;
1353
1383
  /** The total amount of data in GiB read from disk by all Tasks in the Job. */
1354
1384
  readIOGiB: number;
1355
1385
  /** The total amount of data in GiB written to disk by all Tasks in the Job. */
1356
1386
  writeIOGiB: number;
1357
1387
  /** The total number of Tasks successfully completed in the Job during the given time range. A Task completes successfully if it returns exit code 0. */
1358
- numSucceededTasks: number;
1388
+ numSucceededTasks: string;
1359
1389
  /** The total number of Tasks in the Job that failed during the given time range. A Task fails if it exhausts its maximum retry count without returning exit code 0. */
1360
- numFailedTasks: number;
1390
+ numFailedTasks: string;
1361
1391
  /** The total number of retries on all the Tasks in the Job during the given time range. */
1362
- numTaskRetries: number;
1392
+ numTaskRetries: string;
1363
1393
  /** The total wait time of all Tasks in the Job. The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.) This value is only reported in the Account lifetime statistics; it is not included in the Job statistics. */
1364
1394
  waitTime: string;
1365
1395
  }
@@ -1445,7 +1475,7 @@ export interface BatchTaskFailureInfoOutput {
1445
1475
  *
1446
1476
  * Possible values: "usererror", "servererror"
1447
1477
  */
1448
- category: ErrorCategoryOutput;
1478
+ category: BatchErrorSourceCategoryOutput;
1449
1479
  /** An identifier for the Task error. Codes are invariant and are intended to be consumed programmatically. */
1450
1480
  code?: string;
1451
1481
  /** A message describing the Task error, intended to be suitable for display in a user interface. */
@@ -1518,6 +1548,64 @@ export interface BatchTaskSlotCountsOutput {
1518
1548
  /** The number of TaskSlots for failed Tasks. */
1519
1549
  failed: number;
1520
1550
  }
1551
+ /**
1552
+ * A Certificate that can be installed on Compute Nodes and can be used to
1553
+ * authenticate operations on the machine.
1554
+ */
1555
+ export interface BatchCertificateOutput {
1556
+ /** The X.509 thumbprint of the Certificate. This is a sequence of up to 40 hex digits (it may include spaces but these are removed). */
1557
+ thumbprint: string;
1558
+ /** The algorithm used to derive the thumbprint. This must be sha1. */
1559
+ thumbprintAlgorithm: string;
1560
+ /** The URL of the Certificate. */
1561
+ readonly url?: string;
1562
+ /**
1563
+ * The state of the Certificate.
1564
+ *
1565
+ * Possible values: "active", "deleting", "deletefailed"
1566
+ */
1567
+ readonly state?: BatchCertificateStateOutput;
1568
+ /** The time at which the Certificate entered its current state. */
1569
+ readonly stateTransitionTime?: string;
1570
+ /**
1571
+ * The previous state of the Certificate. This property is not set if the Certificate is in its initial active state.
1572
+ *
1573
+ * Possible values: "active", "deleting", "deletefailed"
1574
+ */
1575
+ readonly previousState?: BatchCertificateStateOutput;
1576
+ /** The time at which the Certificate entered its previous state. This property is not set if the Certificate is in its initial Active state. */
1577
+ readonly previousStateTransitionTime?: string;
1578
+ /** The public part of the Certificate as a base-64 encoded .cer file. */
1579
+ readonly publicData?: string;
1580
+ /** The error that occurred on the last attempt to delete this Certificate. This property is set only if the Certificate is in the DeleteFailed state. */
1581
+ readonly deleteCertificateError?: BatchCertificateDeleteErrorOutput;
1582
+ /** The base64-encoded contents of the Certificate. The maximum size is 10KB. */
1583
+ data: string;
1584
+ /**
1585
+ * The format of the Certificate data.
1586
+ *
1587
+ * Possible values: "pfx", "cer"
1588
+ */
1589
+ certificateFormat?: BatchCertificateFormatOutput;
1590
+ /** The password to access the Certificate's private key. This must be omitted if the Certificate format is cer. */
1591
+ password?: string;
1592
+ }
1593
+ /** An error encountered by the Batch service when deleting a Certificate. */
1594
+ export interface BatchCertificateDeleteErrorOutput {
1595
+ /** An identifier for the Certificate deletion error. Codes are invariant and are intended to be consumed programmatically. */
1596
+ code?: string;
1597
+ /** A message describing the Certificate deletion error, intended to be suitable for display in a user interface. */
1598
+ message?: string;
1599
+ /** A list of additional error details related to the Certificate deletion error. This list includes details such as the active Pools and Compute Nodes referencing this Certificate. However, if a large number of resources reference the Certificate, the list contains only about the first hundred. */
1600
+ values?: Array<NameValuePairOutput>;
1601
+ }
1602
+ /** The result of listing the Certificates in the Account. */
1603
+ export interface BatchCertificateListResultOutput {
1604
+ /** The list of Certificates. */
1605
+ value?: Array<BatchCertificateOutput>;
1606
+ /** The URL to get the next set of results. */
1607
+ "odata.nextLink"?: string;
1608
+ }
1521
1609
  /**
1522
1610
  * A Job Schedule that allows recurring Jobs by specifying when to run Jobs and a
1523
1611
  * specification used to create each Job.
@@ -1558,7 +1646,7 @@ export interface BatchJobScheduleOutput {
1558
1646
  /** Information about Jobs that have been and will be run under this schedule. */
1559
1647
  readonly executionInfo?: BatchJobScheduleExecutionInfoOutput;
1560
1648
  /** A list of name-value pairs associated with the schedule as metadata. The Batch service does not assign any meaning to metadata; it is solely for the use of user code. */
1561
- metadata?: Array<MetadataItemOutput>;
1649
+ metadata?: Array<BatchMetadataItemOutput>;
1562
1650
  /** The lifetime resource usage statistics for the Job Schedule. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes. */
1563
1651
  readonly stats?: BatchJobScheduleStatisticsOutput;
1564
1652
  }
@@ -1593,13 +1681,13 @@ export interface BatchJobSpecificationOutput {
1593
1681
  *
1594
1682
  * Possible values: "noaction", "terminatejob"
1595
1683
  */
1596
- onAllTasksComplete?: OnAllBatchTasksCompleteOutput;
1684
+ onAllTasksComplete?: BatchAllTasksCompleteModeOutput;
1597
1685
  /**
1598
1686
  * The action the Batch service should take when any Task fails in a Job created under this schedule. A Task is considered to have failed if it have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error. The default is noaction.
1599
1687
  *
1600
1688
  * Possible values: "noaction", "performexitoptionsjobaction"
1601
1689
  */
1602
- onTaskFailure?: OnBatchTaskFailureOutput;
1690
+ onTaskFailure?: BatchTaskFailureModeOutput;
1603
1691
  /** The network configuration for the Job. */
1604
1692
  networkConfiguration?: BatchJobNetworkConfigurationOutput;
1605
1693
  /** The execution constraints for Jobs created under this schedule. */
@@ -1615,7 +1703,7 @@ export interface BatchJobSpecificationOutput {
1615
1703
  /** The Pool on which the Batch service runs the Tasks of Jobs created under this schedule. */
1616
1704
  poolInfo: BatchPoolInfoOutput;
1617
1705
  /** A list of name-value pairs associated with each Job created under this schedule as metadata. The Batch service does not assign any meaning to metadata; it is solely for the use of user code. */
1618
- metadata?: Array<MetadataItemOutput>;
1706
+ metadata?: Array<BatchMetadataItemOutput>;
1619
1707
  }
1620
1708
  /**
1621
1709
  * Contains information about Jobs that have been and will be run under a Job
@@ -1651,19 +1739,19 @@ export interface BatchJobScheduleStatisticsOutput {
1651
1739
  /** The total wall clock time of all the Tasks in all the Jobs created under the schedule. The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If a Task was retried, this includes the wall clock time of all the Task retries. */
1652
1740
  wallClockTime: string;
1653
1741
  /** The total number of disk read operations made by all Tasks in all Jobs created under the schedule. */
1654
- readIOps: number;
1742
+ readIOps: string;
1655
1743
  /** The total number of disk write operations made by all Tasks in all Jobs created under the schedule. */
1656
- writeIOps: number;
1744
+ writeIOps: string;
1657
1745
  /** The total gibibytes read from disk by all Tasks in all Jobs created under the schedule. */
1658
1746
  readIOGiB: number;
1659
1747
  /** The total gibibytes written to disk by all Tasks in all Jobs created under the schedule. */
1660
1748
  writeIOGiB: number;
1661
1749
  /** The total number of Tasks successfully completed during the given time range in Jobs created under the schedule. A Task completes successfully if it returns exit code 0. */
1662
- numSucceededTasks: number;
1750
+ numSucceededTasks: string;
1663
1751
  /** The total number of Tasks that failed during the given time range in Jobs created under the schedule. A Task fails if it exhausts its maximum retry count without returning exit code 0. */
1664
- numFailedTasks: number;
1752
+ numFailedTasks: string;
1665
1753
  /** The total number of retries during the given time range on all Tasks in all Jobs created under the schedule. */
1666
- numTaskRetries: number;
1754
+ numTaskRetries: string;
1667
1755
  /** The total wait time of all Tasks in all Jobs created under the schedule. The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.). This value is only reported in the Account lifetime statistics; it is not included in the Job statistics. */
1668
1756
  waitTime: string;
1669
1757
  }
@@ -1704,7 +1792,7 @@ export interface ExitOptionsOutput {
1704
1792
  *
1705
1793
  * Possible values: "none", "disable", "terminate"
1706
1794
  */
1707
- jobAction?: BatchJobActionOutput;
1795
+ jobAction?: BatchJobActionKindOutput;
1708
1796
  /**
1709
1797
  * An action that the Batch service performs on Tasks that depend on this Task. Possible values are 'satisfy' (allowing dependent tasks to progress) and 'block' (dependent tasks continue to wait). Batch does not yet support cancellation of dependent tasks.
1710
1798
  *
@@ -1728,7 +1816,7 @@ export interface ExitCodeRangeMappingOutput {
1728
1816
  * A locality hint that can be used by the Batch service to select a Compute Node
1729
1817
  * on which to start a Task.
1730
1818
  */
1731
- export interface AffinityInfoOutput {
1819
+ export interface BatchAffinityInfoOutput {
1732
1820
  /** An opaque string representing the location of a Compute Node or a Task that has run previously. You can pass the affinityId of a Node to indicate that this Task needs to run on that Compute Node. Note that this is just a soft affinity. If the target Compute Node is busy or unavailable at the time the Task is scheduled, then the Task will be scheduled elsewhere. */
1733
1821
  affinityId: string;
1734
1822
  }
@@ -1816,7 +1904,7 @@ export interface BatchTaskOutput {
1816
1904
  readonly previousState?: BatchTaskStateOutput;
1817
1905
  /** The time at which the Task entered its previous state. This property is not set if the Task is in its initial Active state. */
1818
1906
  readonly previousStateTransitionTime?: string;
1819
- /** The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1907
+ /** The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using "cmd /c MyCommand" in Windows or "/bin/sh -c MyCommand" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables). */
1820
1908
  readonly commandLine?: string;
1821
1909
  /** The settings for the container under which the Task runs. If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files. */
1822
1910
  readonly containerSettings?: BatchTaskContainerSettingsOutput;
@@ -1827,7 +1915,7 @@ export interface BatchTaskOutput {
1827
1915
  /** A list of environment variable settings for the Task. */
1828
1916
  readonly environmentSettings?: Array<EnvironmentSettingOutput>;
1829
1917
  /** A locality hint that can be used by the Batch service to select a Compute Node on which to start the new Task. */
1830
- readonly affinityInfo?: AffinityInfoOutput;
1918
+ readonly affinityInfo?: BatchAffinityInfoOutput;
1831
1919
  /** The execution constraints that apply to this Task. */
1832
1920
  constraints?: BatchTaskConstraintsOutput;
1833
1921
  /** The number of scheduling slots that the Task requires to run. The default is 1. A Task can only be scheduled to run on a compute node if the node has enough free scheduling slots available. For multi-instance Tasks, this must be 1. */
@@ -1906,9 +1994,9 @@ export interface BatchTaskStatisticsOutput {
1906
1994
  /** The total wall clock time of the Task. The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If the Task was retried, this includes the wall clock time of all the Task retries. */
1907
1995
  wallClockTime: string;
1908
1996
  /** The total number of disk read operations made by the Task. */
1909
- readIOps: number;
1997
+ readIOps: string;
1910
1998
  /** The total number of disk write operations made by the Task. */
1911
- writeIOps: number;
1999
+ writeIOps: string;
1912
2000
  /** The total gibibytes read from disk by the Task. */
1913
2001
  readIOGiB: number;
1914
2002
  /** The total gibibytes written to disk by the Task. */
@@ -1916,13 +2004,13 @@ export interface BatchTaskStatisticsOutput {
1916
2004
  /** The total wait time of the Task. The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.). */
1917
2005
  waitTime: string;
1918
2006
  }
1919
- /** The result of adding a collection of Tasks to a Job. */
1920
- export interface BatchTaskAddCollectionResultOutput {
1921
- /** The results of the add Task collection operation. */
1922
- value?: Array<BatchTaskAddResultOutput>;
2007
+ /** The result of creating a collection of Tasks to a Job. */
2008
+ export interface BatchCreateTaskCollectionResultOutput {
2009
+ /** The results of the create Task collection operation. */
2010
+ value?: Array<BatchTaskCreateResultOutput>;
1923
2011
  }
1924
- /** Result for a single Task added as part of an add Task collection operation. */
1925
- export interface BatchTaskAddResultOutput {
2012
+ /** Result for a single Task created as part of an add Task collection operation. */
2013
+ export interface BatchTaskCreateResultOutput {
1926
2014
  /**
1927
2015
  * The status of the add Task request.
1928
2016
  *
@@ -2048,7 +2136,7 @@ export interface BatchNodeOutput {
2048
2136
  ipAddress?: string;
2049
2137
  /** An identifier which can be passed when adding a Task to request that the Task be scheduled on this Compute Node. Note that this is just a soft affinity. If the target Compute Node is busy or unavailable at the time the Task is scheduled, then the Task will be scheduled elsewhere. */
2050
2138
  affinityId?: string;
2051
- /** The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes). */
2139
+ /** The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes). */
2052
2140
  vmSize?: string;
2053
2141
  /** The total number of Job Tasks completed on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks. */
2054
2142
  totalTasksRun?: number;
@@ -2064,6 +2152,13 @@ export interface BatchNodeOutput {
2064
2152
  startTask?: BatchStartTaskOutput;
2065
2153
  /** Runtime information about the execution of the StartTask on the Compute Node. */
2066
2154
  startTaskInfo?: BatchStartTaskInfoOutput;
2155
+ /**
2156
+ * For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location.
2157
+ * For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location.
2158
+ * For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.
2159
+ * Warning: This property is deprecated and will be removed after February, 2024. Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead.
2160
+ */
2161
+ certificateReferences?: Array<BatchCertificateReferenceOutput>;
2067
2162
  /** The list of errors that are currently being encountered by the Compute Node. */
2068
2163
  errors?: Array<BatchNodeErrorOutput>;
2069
2164
  /** Whether this Compute Node is a dedicated Compute Node. If false, the Compute Node is a Spot/Low-priority Compute Node. */
@@ -2169,7 +2264,7 @@ export interface BatchNodeAgentInfoOutput {
2169
2264
  /** Info about the current state of the virtual machine. */
2170
2265
  export interface VirtualMachineInfoOutput {
2171
2266
  /** The reference to the Azure Virtual Machine's Marketplace Image. */
2172
- imageReference?: ImageReferenceOutput;
2267
+ imageReference?: BatchVmImageReferenceOutput;
2173
2268
  /** The resource ID of the Compute Node's current Virtual Machine Scale Set VM. Only defined if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'. */
2174
2269
  scaleSetVmResourceId?: string;
2175
2270
  }
@@ -2268,6 +2363,10 @@ export type ContainerHostDataPathOutput = string;
2268
2363
  export type AutoUserScopeOutput = string;
2269
2364
  /** Alias for ElevationLevelOutput */
2270
2365
  export type ElevationLevelOutput = string;
2366
+ /** Alias for BatchCertificateStoreLocationOutput */
2367
+ export type BatchCertificateStoreLocationOutput = string;
2368
+ /** Alias for BatchCertificateVisibilityOutput */
2369
+ export type BatchCertificateVisibilityOutput = string;
2271
2370
  /** Alias for BatchNodeFillTypeOutput */
2272
2371
  export type BatchNodeFillTypeOutput = string;
2273
2372
  /** Alias for LoginModeOutput */
@@ -2290,26 +2389,30 @@ export type ImageVerificationTypeOutput = string;
2290
2389
  export type BatchJobStateOutput = string;
2291
2390
  /** Alias for OutputFileUploadConditionOutput */
2292
2391
  export type OutputFileUploadConditionOutput = string;
2293
- /** Alias for AccessScopeOutput */
2294
- export type AccessScopeOutput = string;
2392
+ /** Alias for BatchAccessScopeOutput */
2393
+ export type BatchAccessScopeOutput = string;
2295
2394
  /** Alias for BatchPoolLifetimeOptionOutput */
2296
2395
  export type BatchPoolLifetimeOptionOutput = string;
2297
- /** Alias for OnAllBatchTasksCompleteOutput */
2298
- export type OnAllBatchTasksCompleteOutput = string;
2299
- /** Alias for OnBatchTaskFailureOutput */
2300
- export type OnBatchTaskFailureOutput = string;
2301
- /** Alias for ErrorCategoryOutput */
2302
- export type ErrorCategoryOutput = string;
2396
+ /** Alias for BatchAllTasksCompleteModeOutput */
2397
+ export type BatchAllTasksCompleteModeOutput = string;
2398
+ /** Alias for BatchTaskFailureModeOutput */
2399
+ export type BatchTaskFailureModeOutput = string;
2400
+ /** Alias for BatchErrorSourceCategoryOutput */
2401
+ export type BatchErrorSourceCategoryOutput = string;
2303
2402
  /** Alias for BatchJobPreparationTaskStateOutput */
2304
2403
  export type BatchJobPreparationTaskStateOutput = string;
2305
2404
  /** Alias for BatchTaskExecutionResultOutput */
2306
2405
  export type BatchTaskExecutionResultOutput = string;
2307
2406
  /** Alias for BatchJobReleaseTaskStateOutput */
2308
2407
  export type BatchJobReleaseTaskStateOutput = string;
2408
+ /** Alias for BatchCertificateStateOutput */
2409
+ export type BatchCertificateStateOutput = string;
2410
+ /** Alias for BatchCertificateFormatOutput */
2411
+ export type BatchCertificateFormatOutput = string;
2309
2412
  /** Alias for BatchJobScheduleStateOutput */
2310
2413
  export type BatchJobScheduleStateOutput = string;
2311
- /** Alias for BatchJobActionOutput */
2312
- export type BatchJobActionOutput = string;
2414
+ /** Alias for BatchJobActionKindOutput */
2415
+ export type BatchJobActionKindOutput = string;
2313
2416
  /** Alias for DependencyActionOutput */
2314
2417
  export type DependencyActionOutput = string;
2315
2418
  /** Alias for BatchTaskStateOutput */