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

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 (62) hide show
  1. package/dist/browser/batchClient.js +1 -1
  2. package/dist/browser/batchClient.js.map +1 -1
  3. package/dist/browser/clientDefinitions.d.ts +3 -43
  4. package/dist/browser/clientDefinitions.js.map +1 -1
  5. package/dist/browser/isUnexpected.d.ts +1 -6
  6. package/dist/browser/isUnexpected.js +0 -7
  7. package/dist/browser/isUnexpected.js.map +1 -1
  8. package/dist/browser/models.d.ts +105 -152
  9. package/dist/browser/models.js.map +1 -1
  10. package/dist/browser/outputModels.d.ts +165 -216
  11. package/dist/browser/outputModels.js.map +1 -1
  12. package/dist/browser/parameters.d.ts +1 -171
  13. package/dist/browser/parameters.js.map +1 -1
  14. package/dist/browser/responses.d.ts +1 -112
  15. package/dist/browser/responses.js.map +1 -1
  16. package/dist/commonjs/batchClient.js +1 -1
  17. package/dist/commonjs/batchClient.js.map +1 -1
  18. package/dist/commonjs/clientDefinitions.d.ts +3 -43
  19. package/dist/commonjs/clientDefinitions.js.map +1 -1
  20. package/dist/commonjs/isUnexpected.d.ts +1 -6
  21. package/dist/commonjs/isUnexpected.js +0 -7
  22. package/dist/commonjs/isUnexpected.js.map +1 -1
  23. package/dist/commonjs/models.d.ts +105 -152
  24. package/dist/commonjs/models.js.map +1 -1
  25. package/dist/commonjs/outputModels.d.ts +165 -216
  26. package/dist/commonjs/outputModels.js.map +1 -1
  27. package/dist/commonjs/parameters.d.ts +1 -171
  28. package/dist/commonjs/parameters.js.map +1 -1
  29. package/dist/commonjs/responses.d.ts +1 -112
  30. package/dist/commonjs/responses.js.map +1 -1
  31. package/dist/commonjs/tsdoc-metadata.json +1 -1
  32. package/dist/esm/batchClient.js +1 -1
  33. package/dist/esm/batchClient.js.map +1 -1
  34. package/dist/esm/clientDefinitions.d.ts +3 -43
  35. package/dist/esm/clientDefinitions.js.map +1 -1
  36. package/dist/esm/isUnexpected.d.ts +1 -6
  37. package/dist/esm/isUnexpected.js +0 -7
  38. package/dist/esm/isUnexpected.js.map +1 -1
  39. package/dist/esm/models.d.ts +105 -152
  40. package/dist/esm/models.js.map +1 -1
  41. package/dist/esm/outputModels.d.ts +165 -216
  42. package/dist/esm/outputModels.js.map +1 -1
  43. package/dist/esm/parameters.d.ts +1 -171
  44. package/dist/esm/parameters.js.map +1 -1
  45. package/dist/esm/responses.d.ts +1 -112
  46. package/dist/esm/responses.js.map +1 -1
  47. package/dist/react-native/batchClient.js +1 -1
  48. package/dist/react-native/batchClient.js.map +1 -1
  49. package/dist/react-native/clientDefinitions.d.ts +3 -43
  50. package/dist/react-native/clientDefinitions.js.map +1 -1
  51. package/dist/react-native/isUnexpected.d.ts +1 -6
  52. package/dist/react-native/isUnexpected.js +0 -7
  53. package/dist/react-native/isUnexpected.js.map +1 -1
  54. package/dist/react-native/models.d.ts +105 -152
  55. package/dist/react-native/models.js.map +1 -1
  56. package/dist/react-native/outputModels.d.ts +165 -216
  57. package/dist/react-native/outputModels.js.map +1 -1
  58. package/dist/react-native/parameters.d.ts +1 -171
  59. package/dist/react-native/parameters.js.map +1 -1
  60. package/dist/react-native/responses.d.ts +1 -112
  61. package/dist/react-native/responses.js.map +1 -1
  62. package/package.json +48 -39
@@ -141,6 +141,8 @@ export interface DataDiskOutput {
141
141
  caching?: CachingTypeOutput;
142
142
  /** The initial disk size in gigabytes. */
143
143
  diskSizeGB: number;
144
+ /** The managed disk parameters. */
145
+ managedDisk?: ManagedDiskOutput;
144
146
  /**
145
147
  * The storage Account type to be used for the data disk. If omitted, the default is "standard_lrs".
146
148
  *
@@ -148,6 +150,33 @@ export interface DataDiskOutput {
148
150
  */
149
151
  storageAccountType?: StorageAccountTypeOutput;
150
152
  }
153
+ /** The managed disk parameters. */
154
+ export interface ManagedDiskOutput {
155
+ /** Specifies the customer managed disk encryption set resource id for the managed disk. It can be set only in UserSubscription mode. */
156
+ diskEncryptionSet?: DiskEncryptionSetParametersOutput;
157
+ /**
158
+ * The storage account type for managed disk.
159
+ *
160
+ * Possible values: "standard_lrs", "premium_lrs", "standardssd_lrs"
161
+ */
162
+ storageAccountType?: StorageAccountTypeOutput;
163
+ /** Specifies the security profile settings for the managed disk. */
164
+ securityProfile?: BatchVmDiskSecurityProfileOutput;
165
+ }
166
+ /** The ARM resource id of the disk encryption set. */
167
+ export interface DiskEncryptionSetParametersOutput {
168
+ /** The ARM resource id of the disk encryption set. The resource must be in the same subscription as the Batch account. */
169
+ id?: string;
170
+ }
171
+ /** Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and required when using Confidential VMs. */
172
+ export interface BatchVmDiskSecurityProfileOutput {
173
+ /**
174
+ * 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.
175
+ *
176
+ * Possible values: "DiskWithVMGuestState", "NonPersistedTPM", "VMGuestStateOnly"
177
+ */
178
+ securityEncryptionType?: SecurityEncryptionTypesOutput;
179
+ }
151
180
  /** The configuration for container-enabled Pools. */
152
181
  export interface BatchContainerConfigurationOutput {
153
182
  /**
@@ -186,9 +215,25 @@ export interface BatchNodeIdentityReferenceOutput {
186
215
  * Azure Compute Gallery Image.
187
216
  */
188
217
  export interface DiskEncryptionConfigurationOutput {
218
+ /** The Customer Managed Key reference to encrypt the OS Disk. Customer Managed Key will encrypt OS Disk by EncryptionAtRest, and by default we will encrypt the data disk as well. It can be used only when the pool is configured with an identity and OsDisk is set as one of the targets of DiskEncryption. */
219
+ customerManagedKey?: DiskCustomerManagedKeyOutput;
189
220
  /** The list of disk targets Batch Service will encrypt on the compute node. The list of disk targets Batch Service will encrypt on the compute node. */
190
221
  targets?: DiskEncryptionTargetOutput[];
191
222
  }
223
+ /** The Customer Managed Key reference to encrypt the Disk. */
224
+ export interface DiskCustomerManagedKeyOutput {
225
+ /** The reference of one of the pool identities to encrypt Disk. This identity will be used to access the KeyVault. */
226
+ identityReference?: BatchPoolIdentityReferenceOutput;
227
+ /** Fully versioned Key Url pointing to a key in KeyVault. Version segment of the Url is required regardless of rotationToLatestKeyVersionEnabled value. */
228
+ keyUrl?: string;
229
+ /** Set this flag to true to enable auto-updating of the Disk Encryption to the latest key version. Default is false. */
230
+ rotationToLatestKeyVersionEnabled?: boolean;
231
+ }
232
+ /** The reference of one of the pool identities to encrypt Disk. This identity will be used to access the key vault. */
233
+ export interface BatchPoolIdentityReferenceOutput {
234
+ /** The ARM resource id of the user assigned identity. This reference must be included in the pool identities. */
235
+ resourceId?: string;
236
+ }
192
237
  /**
193
238
  * For regional placement, nodes in the pool will be allocated in the same region.
194
239
  * For zonal placement, nodes in the pool will be spread across different zones
@@ -252,30 +297,12 @@ export interface BatchDiffDiskSettingsOutput {
252
297
  */
253
298
  placement?: DiffDiskPlacementOutput;
254
299
  }
255
- /** The managed disk parameters. */
256
- export interface ManagedDiskOutput {
257
- /**
258
- * The storage account type for managed disk.
259
- *
260
- * Possible values: "standard_lrs", "premium_lrs", "standardssd_lrs"
261
- */
262
- storageAccountType?: StorageAccountTypeOutput;
263
- /** Specifies the security profile settings for the managed disk. */
264
- securityProfile?: BatchVmDiskSecurityProfileOutput;
265
- }
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 BatchVmDiskSecurityProfileOutput {
268
- /**
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
- *
271
- * Possible values: "NonPersistedTPM", "VMGuestStateOnly"
272
- */
273
- securityEncryptionType?: SecurityEncryptionTypesOutput;
274
- }
275
300
  /** Specifies the security profile settings for the virtual machine or virtual machine scale set. */
276
301
  export interface SecurityProfileOutput {
277
302
  /** 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
303
  encryptionAtHost?: boolean;
304
+ /** Specifies ProxyAgent settings while creating the virtual machine. */
305
+ proxyAgentSettings?: ProxyAgentSettingsOutput;
279
306
  /**
280
307
  * Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings.
281
308
  *
@@ -285,6 +312,26 @@ export interface SecurityProfileOutput {
285
312
  /** 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
313
  uefiSettings?: BatchUefiSettingsOutput;
287
314
  }
315
+ /** Specifies ProxyAgent settings while creating the virtual machine. */
316
+ export interface ProxyAgentSettingsOutput {
317
+ /** Specifies whether Metadata Security Protocol feature should be enabled on the virtual machine or virtual machine scale set. Default is False. */
318
+ enabled?: boolean;
319
+ /** Settings for the IMDS endpoint. */
320
+ imds?: HostEndpointSettingsOutput;
321
+ /** Settings for the WireServer endpoint. */
322
+ wireServer?: HostEndpointSettingsOutput;
323
+ }
324
+ /** Specifies particular host endpoint settings. */
325
+ export interface HostEndpointSettingsOutput {
326
+ /** Specifies the reference to the InVMAccessControlProfileVersion resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/inVMAccessControlProfiles/{profile}/versions/{version}. */
327
+ inVMAccessControlProfileReferenceId?: string;
328
+ /**
329
+ * Specifies the access control policy execution mode.
330
+ *
331
+ * Possible values: "Audit", "Enforce"
332
+ */
333
+ mode?: HostEndpointSettingsModeTypesOutput;
334
+ }
288
335
  /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. */
289
336
  export interface BatchUefiSettingsOutput {
290
337
  /** Specifies whether secure boot should be enabled on the virtual machine. */
@@ -367,8 +414,19 @@ export interface BatchPublicIpAddressConfigurationOutput {
367
414
  * Possible values: "batchmanaged", "usermanaged", "nopublicipaddresses"
368
415
  */
369
416
  provision?: IpAddressProvisioningTypeOutput;
417
+ /** The IP families used to specify IP versions available to the pool. IP families are used to determine single-stack or dual-stack pools. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. */
418
+ ipFamilies?: IPFamilyOutput[];
370
419
  /** The list of public IPs which the Batch service will use when provisioning Compute Nodes. The number of IPs specified here limits the maximum size of the Pool - 100 dedicated nodes or 100 Spot/Low-priority nodes can be allocated for each public IP. For example, a pool needing 250 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}. */
371
420
  ipAddressIds?: string[];
421
+ /** A list of IP tags associated with the public IP addresses of the Pool. IP tags are used to categorize and filter public IP addresses for billing and management purposes. */
422
+ ipTags?: Array<IPTagOutput>;
423
+ }
424
+ /** Contains the IP tag associated with the public IP address. */
425
+ export interface IPTagOutput {
426
+ /** The IP Tag type. Example: FirstPartyUsage. */
427
+ ipTagType?: string;
428
+ /** The value of the IP tag associated with the public IP. Example: SQL. */
429
+ tag?: string;
372
430
  }
373
431
  /**
374
432
  * Batch will retry Tasks when a recovery operation is triggered on a Node.
@@ -463,7 +521,7 @@ export interface UserIdentityOutput {
463
521
  /** Specifies the options for the auto user that runs an Azure Batch Task. */
464
522
  export interface AutoUserSpecificationOutput {
465
523
  /**
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.
524
+ * 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.
467
525
  *
468
526
  * Possible values: "task", "pool"
469
527
  */
@@ -475,23 +533,6 @@ export interface AutoUserSpecificationOutput {
475
533
  */
476
534
  elevationLevel?: ElevationLevelOutput;
477
535
  }
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
- }
495
536
  /** A reference to an Package to be deployed to Compute Nodes. */
496
537
  export interface BatchApplicationPackageReferenceOutput {
497
538
  /** 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}). */
@@ -501,6 +542,12 @@ export interface BatchApplicationPackageReferenceOutput {
501
542
  }
502
543
  /** Specifies how Tasks should be distributed across Compute Nodes. */
503
544
  export interface BatchTaskSchedulingPolicyOutput {
545
+ /**
546
+ * The order for scheduling tasks from different jobs with the same priority. If not specified, the default is none.
547
+ *
548
+ * Possible values: "none", "creationtime"
549
+ */
550
+ jobDefaultOrder?: BatchJobDefaultOrderOutput;
504
551
  /**
505
552
  * How Tasks are distributed across Compute Nodes in a Pool. If not specified, the default is spread.
506
553
  *
@@ -670,25 +717,25 @@ export interface BatchPoolListResultOutput {
670
717
  /** A Pool in the Azure Batch service. */
671
718
  export interface BatchPoolOutput {
672
719
  /** A string that uniquely identifies the Pool within the Account. The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case). */
673
- readonly id?: string;
674
- /** 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. */
720
+ readonly id: string;
721
+ /** The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
675
722
  readonly displayName?: string;
676
723
  /** The URL of the Pool. */
677
- readonly url?: string;
724
+ readonly url: string;
678
725
  /** The ETag of the Pool. This is an opaque string. You can use it to detect whether the Pool has changed between requests. In particular, you can be pass the ETag when updating a Pool to specify that your changes should take effect only if nobody else has modified the Pool in the meantime. */
679
- readonly eTag?: string;
726
+ readonly eTag: string;
680
727
  /** The last modified time of the Pool. This is the last time at which the Pool level data, such as the targetDedicatedNodes or enableAutoscale settings, changed. It does not factor in node-level changes such as a Compute Node changing state. */
681
- readonly lastModified?: string;
728
+ readonly lastModified: string;
682
729
  /** The creation time of the Pool. */
683
- readonly creationTime?: string;
730
+ readonly creationTime: string;
684
731
  /**
685
732
  * The current state of the Pool.
686
733
  *
687
734
  * Possible values: "active", "deleting"
688
735
  */
689
- readonly state?: BatchPoolStateOutput;
736
+ readonly state: BatchPoolStateOutput;
690
737
  /** The time at which the Pool entered its current state. */
691
- readonly stateTransitionTime?: string;
738
+ readonly stateTransitionTime: string;
692
739
  /**
693
740
  * Whether the Pool is resizing.
694
741
  *
@@ -697,20 +744,18 @@ export interface BatchPoolOutput {
697
744
  readonly allocationState?: AllocationStateOutput;
698
745
  /** The time at which the Pool entered its current allocation state. */
699
746
  readonly allocationStateTransitionTime?: string;
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). */
701
- readonly vmSize?: string;
747
+ /** The size of 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). */
748
+ readonly vmSize: string;
702
749
  /** The virtual machine configuration for the Pool. This property must be specified. */
703
750
  readonly virtualMachineConfiguration?: VirtualMachineConfigurationOutput;
704
751
  /** The timeout for allocation of Compute Nodes to the Pool. This is the timeout for the most recent resize operation. (The initial sizing when the Pool is created counts as a resize.) The default value is 15 minutes. */
705
752
  readonly resizeTimeout?: string;
706
753
  /** A list of errors encountered while performing the last resize on the Pool. This property is set only if one or more errors occurred during the last Pool resize, and only when the Pool allocationState is Steady. */
707
754
  readonly resizeErrors?: Array<ResizeErrorOutput>;
708
- /** The user-specified tags associated with the pool. The user-defined tags to be associated with the Azure Batch Pool. When specified, these tags are propagated to the backing Azure resources associated with the pool. This property can only be specified when the Batch account was created with the poolAllocationMode property set to 'UserSubscription'. */
709
- readonly resourceTags?: Record<string, string>;
710
755
  /** The number of dedicated Compute Nodes currently in the Pool. */
711
- readonly currentDedicatedNodes?: number;
756
+ readonly currentDedicatedNodes: number;
712
757
  /** The number of Spot/Low-priority Compute Nodes currently in the Pool. Spot/Low-priority Compute Nodes which have been preempted are included in this count. */
713
- readonly currentLowPriorityNodes?: number;
758
+ readonly currentLowPriorityNodes: number;
714
759
  /** The desired number of dedicated Compute Nodes in the Pool. */
715
760
  readonly targetDedicatedNodes?: number;
716
761
  /** The desired number of Spot/Low-priority Compute Nodes in the Pool. */
@@ -723,19 +768,12 @@ export interface BatchPoolOutput {
723
768
  readonly autoScaleEvaluationInterval?: string;
724
769
  /** The results and errors from the last execution of the autoscale formula. This property is set only if the Pool automatically scales, i.e. enableAutoScale is true. */
725
770
  readonly autoScaleRun?: AutoScaleRunOutput;
726
- /** Whether the Pool permits direct communication between Compute Nodes. This imposes restrictions on which Compute Nodes can be assigned to the Pool. Specifying this value can reduce the chance of the requested number of Compute Nodes to be allocated in the Pool. */
771
+ /** Whether the Pool permits direct communication between Compute Nodes. Enabling inter-node communication limits the maximum size of the Pool due to deployment restrictions on the Compute Nodes of the Pool. This may result in the Pool not reaching its desired size. The default value is false. */
727
772
  readonly enableInterNodeCommunication?: boolean;
728
773
  /** The network configuration for the Pool. */
729
774
  readonly networkConfiguration?: NetworkConfigurationOutput;
730
775
  /** A Task specified to run on each Compute Node as it joins the Pool. */
731
776
  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>;
739
777
  /** 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. */
740
778
  readonly applicationPackageReferences?: Array<BatchApplicationPackageReferenceOutput>;
741
779
  /** 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. */
@@ -748,22 +786,10 @@ export interface BatchPoolOutput {
748
786
  readonly metadata?: Array<BatchMetadataItemOutput>;
749
787
  /** 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. */
750
788
  readonly stats?: BatchPoolStatisticsOutput;
751
- /** A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, CIFS/SMB, and Blobfuse. */
789
+ /** Mount storage using specified file system for the entire lifetime of the pool. Mount the storage using Azure fileshare, NFS, CIFS or Blobfuse based file system. */
752
790
  readonly mountConfiguration?: Array<MountConfigurationOutput>;
753
791
  /** The identity of the Batch pool, if configured. The list of user identities associated with the Batch pool. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */
754
792
  readonly identity?: BatchPoolIdentityOutput;
755
- /**
756
- * The desired node communication mode for the pool. If omitted, the default value is Default.
757
- *
758
- * Possible values: "default", "classic", "simplified"
759
- */
760
- targetNodeCommunicationMode?: BatchNodeCommunicationModeOutput;
761
- /**
762
- * The current state of the pool communication mode.
763
- *
764
- * Possible values: "default", "classic", "simplified"
765
- */
766
- readonly currentNodeCommunicationMode?: BatchNodeCommunicationModeOutput;
767
793
  /** The upgrade policy for the Pool. Describes an upgrade policy - automatic, manual, or rolling. */
768
794
  upgradePolicy?: UpgradePolicyOutput;
769
795
  }
@@ -961,27 +987,27 @@ export interface BatchNodeCountsOutput {
961
987
  /** An Azure Batch Job. */
962
988
  export interface BatchJobOutput {
963
989
  /** A string that uniquely identifies the Job within the Account. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case). */
964
- readonly id?: string;
990
+ readonly id: string;
965
991
  /** The display name for the Job. */
966
992
  readonly displayName?: string;
967
993
  /** Whether Tasks in the Job can define dependencies on each other. The default is false. */
968
994
  readonly usesTaskDependencies?: boolean;
969
995
  /** The URL of the Job. */
970
- readonly url?: string;
996
+ readonly url: string;
971
997
  /** The ETag of the Job. This is an opaque string. You can use it to detect whether the Job has changed between requests. In particular, you can be pass the ETag when updating a Job to specify that your changes should take effect only if nobody else has modified the Job in the meantime. */
972
- readonly eTag?: string;
998
+ readonly eTag: string;
973
999
  /** The last modified time of the Job. This is the last time at which the Job level data, such as the Job state or priority, changed. It does not factor in task-level changes such as adding new Tasks or Tasks changing state. */
974
- readonly lastModified?: string;
1000
+ readonly lastModified: string;
975
1001
  /** The creation time of the Job. */
976
- readonly creationTime?: string;
1002
+ readonly creationTime: string;
977
1003
  /**
978
1004
  * The current state of the Job.
979
1005
  *
980
1006
  * Possible values: "active", "disabling", "disabled", "enabling", "terminating", "completed", "deleting"
981
1007
  */
982
- readonly state?: BatchJobStateOutput;
1008
+ readonly state: BatchJobStateOutput;
983
1009
  /** The time at which the Job entered its current state. */
984
- readonly stateTransitionTime?: string;
1010
+ readonly stateTransitionTime: string;
985
1011
  /**
986
1012
  * The previous state of the Job. This property is not set if the Job is in its initial Active state.
987
1013
  *
@@ -992,9 +1018,9 @@ export interface BatchJobOutput {
992
1018
  readonly previousStateTransitionTime?: string;
993
1019
  /** The priority of the Job. Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0. */
994
1020
  priority?: number;
995
- /** Whether Tasks in this job can be preempted by other high priority jobs. If the value is set to True, other high priority jobs submitted to the system will take precedence and will be able requeue tasks from this job. You can update a job's allowTaskPreemption after it has been created using the update job API. */
1021
+ /** Whether Tasks in this job can be preempted by other high priority jobs. (This property is not available by default. Please contact support for more information) If the value is set to True, other high priority jobs submitted to the system will take precedence and will be able requeue tasks from this job. You can update a job's allowTaskPreemption after it has been created using the update job API. */
996
1022
  allowTaskPreemption?: boolean;
997
- /** The maximum number of tasks that can be executed in parallel for the job. The value of maxParallelTasks must be -1 or greater than 0 if specified. If not specified, the default value is -1, which means there's no limit to the number of tasks that can be run at once. You can update a job's maxParallelTasks after it has been created using the update job API. */
1023
+ /** The maximum number of tasks that can be executed in parallel for the job. (This property is not available by default. Please contact support for more information) The value of maxParallelTasks must be -1 or greater than 0 if specified. If not specified, the default value is -1, which means there's no limit to the number of tasks that can be run at once. You can update a job's maxParallelTasks after it has been created using the update job API. */
998
1024
  maxParallelTasks?: number;
999
1025
  /** The execution constraints for the Job. */
1000
1026
  constraints?: BatchJobConstraintsOutput;
@@ -1020,7 +1046,7 @@ export interface BatchJobOutput {
1020
1046
  * Possible values: "noaction", "performexitoptionsjobaction"
1021
1047
  */
1022
1048
  readonly onTaskFailure?: BatchTaskFailureModeOutput;
1023
- /** The network configuration for the Job. */
1049
+ /** (This property is not available by default. Please contact support for more information) The network configuration for the Job. */
1024
1050
  readonly networkConfiguration?: BatchJobNetworkConfigurationOutput;
1025
1051
  /** 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. */
1026
1052
  metadata?: Array<BatchMetadataItemOutput>;
@@ -1286,8 +1312,6 @@ export interface BatchPoolSpecificationOutput {
1286
1312
  taskSchedulingPolicy?: BatchTaskSchedulingPolicyOutput;
1287
1313
  /** The timeout for allocation of Compute Nodes to the Pool. This timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). */
1288
1314
  resizeTimeout?: string;
1289
- /** The user-specified tags associated with the pool.The user-defined tags to be associated with the Azure Batch Pool. When specified, these tags are propagated to the backing Azure resources associated with the pool. This property can only be specified when the Batch account was created with the poolAllocationMode property set to 'UserSubscription'. */
1290
- resourceTags?: string;
1291
1315
  /** The desired number of dedicated Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both. */
1292
1316
  targetDedicatedNodes?: number;
1293
1317
  /** The desired number of Spot/Low-priority Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both. */
@@ -1304,12 +1328,6 @@ export interface BatchPoolSpecificationOutput {
1304
1328
  networkConfiguration?: NetworkConfigurationOutput;
1305
1329
  /** 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. */
1306
1330
  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>;
1313
1331
  /** 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. */
1314
1332
  applicationPackageReferences?: Array<BatchApplicationPackageReferenceOutput>;
1315
1333
  /** The list of user Accounts to be created on each Compute Node in the Pool. */
@@ -1318,16 +1336,10 @@ export interface BatchPoolSpecificationOutput {
1318
1336
  metadata?: Array<BatchMetadataItemOutput>;
1319
1337
  /** A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, CIFS/SMB, and Blobfuse. */
1320
1338
  mountConfiguration?: Array<MountConfigurationOutput>;
1321
- /**
1322
- * The desired node communication mode for the pool. If omitted, the default value is Default.
1323
- *
1324
- * Possible values: "default", "classic", "simplified"
1325
- */
1326
- targetNodeCommunicationMode?: BatchNodeCommunicationModeOutput;
1327
1339
  /** The upgrade policy for the Pool. Describes an upgrade policy - automatic, manual, or rolling. */
1328
1340
  upgradePolicy?: UpgradePolicyOutput;
1329
1341
  }
1330
- /** The network configuration for the Job. */
1342
+ /** (This property is not available by default. Please contact support for more information) The network configuration for the Job. */
1331
1343
  export interface BatchJobNetworkConfigurationOutput {
1332
1344
  /** 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. */
1333
1345
  subnetId: string;
@@ -1548,89 +1560,31 @@ export interface BatchTaskSlotCountsOutput {
1548
1560
  /** The number of TaskSlots for failed Tasks. */
1549
1561
  failed: number;
1550
1562
  }
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
- }
1609
1563
  /**
1610
1564
  * A Job Schedule that allows recurring Jobs by specifying when to run Jobs and a
1611
1565
  * specification used to create each Job.
1612
1566
  */
1613
1567
  export interface BatchJobScheduleOutput {
1614
1568
  /** A string that uniquely identifies the schedule within the Account. */
1615
- readonly id?: string;
1569
+ readonly id: string;
1616
1570
  /** The display name for the schedule. */
1617
1571
  readonly displayName?: string;
1618
1572
  /** The URL of the Job Schedule. */
1619
- readonly url?: string;
1573
+ readonly url: string;
1620
1574
  /** The ETag of the Job Schedule. This is an opaque string. You can use it to detect whether the Job Schedule has changed between requests. In particular, you can be pass the ETag with an Update Job Schedule request to specify that your changes should take effect only if nobody else has modified the schedule in the meantime. */
1621
- readonly eTag?: string;
1575
+ readonly eTag: string;
1622
1576
  /** The last modified time of the Job Schedule. This is the last time at which the schedule level data, such as the Job specification or recurrence information, changed. It does not factor in job-level changes such as new Jobs being created or Jobs changing state. */
1623
- readonly lastModified?: string;
1577
+ readonly lastModified: string;
1624
1578
  /** The creation time of the Job Schedule. */
1625
- readonly creationTime?: string;
1579
+ readonly creationTime: string;
1626
1580
  /**
1627
1581
  * The current state of the Job Schedule.
1628
1582
  *
1629
1583
  * Possible values: "active", "completed", "disabled", "terminating", "deleting"
1630
1584
  */
1631
- readonly state?: BatchJobScheduleStateOutput;
1585
+ readonly state: BatchJobScheduleStateOutput;
1632
1586
  /** The time at which the Job Schedule entered the current state. */
1633
- readonly stateTransitionTime?: string;
1587
+ readonly stateTransitionTime: string;
1634
1588
  /**
1635
1589
  * The previous state of the Job Schedule. This property is not present if the Job Schedule is in its initial active state.
1636
1590
  *
@@ -1644,7 +1598,7 @@ export interface BatchJobScheduleOutput {
1644
1598
  /** The details of the Jobs to be created on this schedule. */
1645
1599
  jobSpecification: BatchJobSpecificationOutput;
1646
1600
  /** Information about Jobs that have been and will be run under this schedule. */
1647
- readonly executionInfo?: BatchJobScheduleExecutionInfoOutput;
1601
+ readonly executionInfo: BatchJobScheduleExecutionInfoOutput;
1648
1602
  /** 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. */
1649
1603
  metadata?: Array<BatchMetadataItemOutput>;
1650
1604
  /** 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. */
@@ -1668,9 +1622,9 @@ export interface BatchJobScheduleConfigurationOutput {
1668
1622
  export interface BatchJobSpecificationOutput {
1669
1623
  /** The priority of Jobs created under this schedule. Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0. This priority is used as the default for all Jobs under the Job Schedule. You can update a Job's priority after it has been created using by using the update Job API. */
1670
1624
  priority?: number;
1671
- /** Whether Tasks in this job can be preempted by other high priority jobs. If the value is set to True, other high priority jobs submitted to the system will take precedence and will be able requeue tasks from this job. You can update a job's allowTaskPreemption after it has been created using the update job API. */
1625
+ /** Whether Tasks in this job can be preempted by other high priority jobs. (This property is not available by default. Please contact support for more information) If the value is set to True, other high priority jobs submitted to the system will take precedence and will be able requeue tasks from this job. You can update a job's allowTaskPreemption after it has been created using the update job API. */
1672
1626
  allowTaskPreemption?: boolean;
1673
- /** The maximum number of tasks that can be executed in parallel for the job. The value of maxParallelTasks must be -1 or greater than 0 if specified. If not specified, the default value is -1, which means there's no limit to the number of tasks that can be run at once. You can update a job's maxParallelTasks after it has been created using the update job API. */
1627
+ /** The maximum number of tasks that can be executed in parallel for the job. (This property is not available by default. Please contact support for more information) The value of maxParallelTasks must be -1 or greater than 0 if specified. If not specified, the default value is -1, which means there's no limit to the number of tasks that can be run at once. You can update a job's maxParallelTasks after it has been created using the update job API. */
1674
1628
  maxParallelTasks?: number;
1675
1629
  /** The display name for Jobs created under this schedule. The name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
1676
1630
  displayName?: string;
@@ -1688,7 +1642,7 @@ export interface BatchJobSpecificationOutput {
1688
1642
  * Possible values: "noaction", "performexitoptionsjobaction"
1689
1643
  */
1690
1644
  onTaskFailure?: BatchTaskFailureModeOutput;
1691
- /** The network configuration for the Job. */
1645
+ /** (This property is not available by default. Please contact support for more information) The network configuration for the Job. */
1692
1646
  networkConfiguration?: BatchJobNetworkConfigurationOutput;
1693
1647
  /** The execution constraints for Jobs created under this schedule. */
1694
1648
  constraints?: BatchJobConstraintsOutput;
@@ -1875,17 +1829,17 @@ export interface BatchTaskListResultOutput {
1875
1829
  */
1876
1830
  export interface BatchTaskOutput {
1877
1831
  /** A string that uniquely identifies the Task within the Job. The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. */
1878
- readonly id?: string;
1832
+ readonly id: string;
1879
1833
  /** A display name for the Task. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
1880
1834
  readonly displayName?: string;
1881
1835
  /** The URL of the Task. */
1882
- readonly url?: string;
1836
+ readonly url: string;
1883
1837
  /** The ETag of the Task. This is an opaque string. You can use it to detect whether the Task has changed between requests. In particular, you can be pass the ETag when updating a Task to specify that your changes should take effect only if nobody else has modified the Task in the meantime. */
1884
- readonly eTag?: string;
1838
+ readonly eTag: string;
1885
1839
  /** The last modified time of the Task. */
1886
- readonly lastModified?: string;
1840
+ readonly lastModified: string;
1887
1841
  /** The creation time of the Task. */
1888
- readonly creationTime?: string;
1842
+ readonly creationTime: string;
1889
1843
  /** How the Batch service should respond when the Task completes. */
1890
1844
  readonly exitConditions?: ExitConditionsOutput;
1891
1845
  /**
@@ -1893,9 +1847,9 @@ export interface BatchTaskOutput {
1893
1847
  *
1894
1848
  * Possible values: "active", "preparing", "running", "completed"
1895
1849
  */
1896
- readonly state?: BatchTaskStateOutput;
1850
+ readonly state: BatchTaskStateOutput;
1897
1851
  /** The time at which the Task entered its current state. */
1898
- readonly stateTransitionTime?: string;
1852
+ readonly stateTransitionTime: string;
1899
1853
  /**
1900
1854
  * The previous state of the Task. This property is not set if the Task is in its initial Active state.
1901
1855
  *
@@ -1905,7 +1859,7 @@ export interface BatchTaskOutput {
1905
1859
  /** The time at which the Task entered its previous state. This property is not set if the Task is in its initial Active state. */
1906
1860
  readonly previousStateTransitionTime?: string;
1907
1861
  /** 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). */
1908
- readonly commandLine?: string;
1862
+ readonly commandLine: string;
1909
1863
  /** 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. */
1910
1864
  readonly containerSettings?: BatchTaskContainerSettingsOutput;
1911
1865
  /** A list of files that the Batch service will download to the Compute Node before running the command line. For multi-instance Tasks, the resource files will only be downloaded to the Compute Node on which the primary Task is executed. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers. */
@@ -2111,64 +2065,59 @@ export interface FilePropertiesOutput {
2111
2065
  /** A Compute Node in the Batch service. */
2112
2066
  export interface BatchNodeOutput {
2113
2067
  /** The ID of the Compute Node. Every Compute Node that is added to a Pool is assigned a unique ID. Whenever a Compute Node is removed from a Pool, all of its local files are deleted, and the ID is reclaimed and could be reused for new Compute Nodes. */
2114
- id?: string;
2068
+ readonly id: string;
2115
2069
  /** The URL of the Compute Node. */
2116
- url?: string;
2070
+ readonly url: string;
2117
2071
  /**
2118
2072
  * The current state of the Compute Node. The Spot/Low-priority Compute Node has been preempted. Tasks which were running on the Compute Node when it was preempted will be rescheduled when another Compute Node becomes available.
2119
2073
  *
2120
2074
  * Possible values: "idle", "rebooting", "reimaging", "running", "unusable", "creating", "starting", "waitingforstarttask", "starttaskfailed", "unknown", "leavingpool", "offline", "preempted", "upgradingos", "deallocated", "deallocating"
2121
2075
  */
2122
- state?: BatchNodeStateOutput;
2076
+ readonly state: BatchNodeStateOutput;
2123
2077
  /**
2124
2078
  * Whether the Compute Node is available for Task scheduling.
2125
2079
  *
2126
2080
  * Possible values: "enabled", "disabled"
2127
2081
  */
2128
- schedulingState?: SchedulingStateOutput;
2082
+ readonly schedulingState?: SchedulingStateOutput;
2129
2083
  /** The time at which the Compute Node entered its current state. */
2130
- stateTransitionTime?: string;
2084
+ readonly stateTransitionTime: string;
2131
2085
  /** The last time at which the Compute Node was started. This property may not be present if the Compute Node state is unusable. */
2132
- lastBootTime?: string;
2086
+ readonly lastBootTime: string;
2133
2087
  /** The time at which this Compute Node was allocated to the Pool. This is the time when the Compute Node was initially allocated and doesn't change once set. It is not updated when the Compute Node is service healed or preempted. */
2134
- allocationTime?: string;
2088
+ readonly allocationTime: string;
2135
2089
  /** The IP address that other Nodes can use to communicate with this Compute Node. Every Compute Node that is added to a Pool is assigned a unique IP address. Whenever a Compute Node is removed from a Pool, all of its local files are deleted, and the IP address is reclaimed and could be reused for new Compute Nodes. */
2136
- ipAddress?: string;
2090
+ readonly ipAddress: string;
2091
+ /** The IPv6 address that other Nodes can use to communicate with this Compute Node. Every Compute Node that is added to a Pool is assigned a unique IP address. Whenever a Compute Node is removed from a Pool, all of its local files are deleted, and the IP address is reclaimed and could be reused for new Compute Nodes. This property will not be present if the Pool is not configured for IPv6. */
2092
+ readonly ipv6Address: string;
2137
2093
  /** 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. */
2138
- affinityId?: string;
2094
+ readonly affinityId: string;
2139
2095
  /** 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). */
2140
- vmSize?: string;
2096
+ readonly vmSize: string;
2141
2097
  /** 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. */
2142
- totalTasksRun?: number;
2098
+ readonly totalTasksRun: number;
2143
2099
  /** The total number of currently running Job Tasks on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks. */
2144
- runningTasksCount?: number;
2100
+ readonly runningTasksCount?: number;
2145
2101
  /** The total number of scheduling slots used by currently running Job Tasks on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks. */
2146
- runningTaskSlotsCount?: number;
2102
+ readonly runningTaskSlotsCount?: number;
2147
2103
  /** The total number of Job Tasks which completed successfully (with exitCode 0) on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks. */
2148
- totalTasksSucceeded?: number;
2104
+ readonly totalTasksSucceeded?: number;
2149
2105
  /** A list of Tasks whose state has recently changed. This property is present only if at least one Task has run on this Compute Node since it was assigned to the Pool. */
2150
- recentTasks?: Array<BatchTaskInfoOutput>;
2106
+ readonly recentTasks?: Array<BatchTaskInfoOutput>;
2151
2107
  /** The Task specified to run on the Compute Node as it joins the Pool. */
2152
- startTask?: BatchStartTaskOutput;
2108
+ readonly startTask?: BatchStartTaskOutput;
2153
2109
  /** Runtime information about the execution of the StartTask on the Compute Node. */
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>;
2110
+ readonly startTaskInfo?: BatchStartTaskInfoOutput;
2162
2111
  /** The list of errors that are currently being encountered by the Compute Node. */
2163
- errors?: Array<BatchNodeErrorOutput>;
2112
+ readonly errors?: Array<BatchNodeErrorOutput>;
2164
2113
  /** Whether this Compute Node is a dedicated Compute Node. If false, the Compute Node is a Spot/Low-priority Compute Node. */
2165
- isDedicated?: boolean;
2114
+ readonly isDedicated?: boolean;
2166
2115
  /** The endpoint configuration for the Compute Node. */
2167
- endpointConfiguration?: BatchNodeEndpointConfigurationOutput;
2116
+ readonly endpointConfiguration?: BatchNodeEndpointConfigurationOutput;
2168
2117
  /** Information about the Compute Node agent version and the time the Compute Node upgraded to a new version. */
2169
- nodeAgentInfo?: BatchNodeAgentInfoOutput;
2118
+ readonly nodeAgentInfo: BatchNodeAgentInfoOutput;
2170
2119
  /** Info about the current state of the virtual machine. */
2171
- virtualMachineInfo?: VirtualMachineInfoOutput;
2120
+ readonly virtualMachineInfo: VirtualMachineInfoOutput;
2172
2121
  }
2173
2122
  /** Information about a Task running on a Compute Node. */
2174
2123
  export interface BatchTaskInfoOutput {
@@ -2270,6 +2219,10 @@ export interface VirtualMachineInfoOutput {
2270
2219
  }
2271
2220
  /** The remote login settings for a Compute Node. */
2272
2221
  export interface BatchNodeRemoteLoginSettingsOutput {
2222
+ /** The IPv6 address used for remote login to the Compute Node. */
2223
+ ipv6RemoteLoginIPAddress?: string;
2224
+ /** The port used for remote login to the Compute Node. */
2225
+ ipv6RemoteLoginPort?: number;
2273
2226
  /** The IP address used for remote login to the Compute Node. */
2274
2227
  remoteLoginIPAddress: string;
2275
2228
  /** The port used for remote login to the Compute Node. */
@@ -2335,6 +2288,8 @@ export interface BatchNodeVMExtensionListResultOutput {
2335
2288
  export type CachingTypeOutput = string;
2336
2289
  /** Alias for StorageAccountTypeOutput */
2337
2290
  export type StorageAccountTypeOutput = string;
2291
+ /** Alias for SecurityEncryptionTypesOutput */
2292
+ export type SecurityEncryptionTypesOutput = string;
2338
2293
  /** Alias for ContainerTypeOutput */
2339
2294
  export type ContainerTypeOutput = string;
2340
2295
  /** Alias for DiskEncryptionTargetOutput */
@@ -2343,8 +2298,8 @@ export type DiskEncryptionTargetOutput = string;
2343
2298
  export type BatchNodePlacementPolicyTypeOutput = string;
2344
2299
  /** Alias for DiffDiskPlacementOutput */
2345
2300
  export type DiffDiskPlacementOutput = string;
2346
- /** Alias for SecurityEncryptionTypesOutput */
2347
- export type SecurityEncryptionTypesOutput = string;
2301
+ /** Alias for HostEndpointSettingsModeTypesOutput */
2302
+ export type HostEndpointSettingsModeTypesOutput = string;
2348
2303
  /** Alias for SecurityTypesOutput */
2349
2304
  export type SecurityTypesOutput = string;
2350
2305
  /** Alias for DynamicVNetAssignmentScopeOutput */
@@ -2355,6 +2310,8 @@ export type InboundEndpointProtocolOutput = string;
2355
2310
  export type NetworkSecurityGroupRuleAccessOutput = string;
2356
2311
  /** Alias for IpAddressProvisioningTypeOutput */
2357
2312
  export type IpAddressProvisioningTypeOutput = string;
2313
+ /** Alias for IPFamilyOutput */
2314
+ export type IPFamilyOutput = string;
2358
2315
  /** Alias for ContainerWorkingDirectoryOutput */
2359
2316
  export type ContainerWorkingDirectoryOutput = string;
2360
2317
  /** Alias for ContainerHostDataPathOutput */
@@ -2363,16 +2320,12 @@ export type ContainerHostDataPathOutput = string;
2363
2320
  export type AutoUserScopeOutput = string;
2364
2321
  /** Alias for ElevationLevelOutput */
2365
2322
  export type ElevationLevelOutput = string;
2366
- /** Alias for BatchCertificateStoreLocationOutput */
2367
- export type BatchCertificateStoreLocationOutput = string;
2368
- /** Alias for BatchCertificateVisibilityOutput */
2369
- export type BatchCertificateVisibilityOutput = string;
2323
+ /** Alias for BatchJobDefaultOrderOutput */
2324
+ export type BatchJobDefaultOrderOutput = string;
2370
2325
  /** Alias for BatchNodeFillTypeOutput */
2371
2326
  export type BatchNodeFillTypeOutput = string;
2372
2327
  /** Alias for LoginModeOutput */
2373
2328
  export type LoginModeOutput = string;
2374
- /** Alias for BatchNodeCommunicationModeOutput */
2375
- export type BatchNodeCommunicationModeOutput = string;
2376
2329
  /** Alias for UpgradeModeOutput */
2377
2330
  export type UpgradeModeOutput = string;
2378
2331
  /** Alias for BatchPoolStateOutput */
@@ -2405,10 +2358,6 @@ export type BatchJobPreparationTaskStateOutput = string;
2405
2358
  export type BatchTaskExecutionResultOutput = string;
2406
2359
  /** Alias for BatchJobReleaseTaskStateOutput */
2407
2360
  export type BatchJobReleaseTaskStateOutput = string;
2408
- /** Alias for BatchCertificateStateOutput */
2409
- export type BatchCertificateStateOutput = string;
2410
- /** Alias for BatchCertificateFormatOutput */
2411
- export type BatchCertificateFormatOutput = string;
2412
2361
  /** Alias for BatchJobScheduleStateOutput */
2413
2362
  export type BatchJobScheduleStateOutput = string;
2414
2363
  /** Alias for BatchJobActionKindOutput */