diff --git a/sdk/batch/arm-batch/LICENSE.txt b/sdk/batch/arm-batch/LICENSE.txt index a70e8cf66038..ea8fb1516028 100644 --- a/sdk/batch/arm-batch/LICENSE.txt +++ b/sdk/batch/arm-batch/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2018 Microsoft +Copyright (c) 2020 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/batch/arm-batch/README.md b/sdk/batch/arm-batch/README.md index 290c100c9267..9825078d24fc 100644 --- a/sdk/batch/arm-batch/README.md +++ b/sdk/batch/arm-batch/README.md @@ -9,7 +9,7 @@ This package contains an isomorphic SDK for BatchManagementClient. ### How to Install -``` +```bash npm install @azure/arm-batch ``` @@ -19,13 +19,14 @@ npm install @azure/arm-batch ##### Install @azure/ms-rest-nodeauth -``` -npm install @azure/ms-rest-nodeauth +- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. +```bash +npm install @azure/ms-rest-nodeauth@"^3.0.0" ``` ##### Sample code -```ts +```typescript import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; @@ -49,7 +50,7 @@ msRestNodeAuth.interactiveLogin().then((creds) => { ##### Install @azure/ms-rest-browserauth -``` +```bash npm install @azure/ms-rest-browserauth ``` @@ -99,5 +100,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fbatch%2Farm-batch%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/batch/arm-batch/README.png) diff --git a/sdk/batch/arm-batch/package.json b/sdk/batch/arm-batch/package.json index 7429dddfb759..1ea06ecd78eb 100644 --- a/sdk/batch/arm-batch/package.json +++ b/sdk/batch/arm-batch/package.json @@ -4,9 +4,9 @@ "description": "BatchManagementClient Library with typescript type definitions for node.js and browser.", "version": "4.0.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", - "tslib": "^1.9.3" + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" }, "keywords": [ "node", @@ -20,18 +20,19 @@ "module": "./esm/batchManagementClient.js", "types": "./esm/batchManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", - "rollup": "^0.66.2", - "rollup-plugin-node-resolve": "^3.4.0", - "uglify-js": "^3.4.9" + "typescript": "^3.5.3", + "rollup": "^1.18.0", + "rollup-plugin-node-resolve": "^5.2.0", + "rollup-plugin-sourcemaps": "^0.4.2", + "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/batch/arm-batch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/batch/arm-batch", "repository": { "type": "git", - "url": "https://github.com/azure/azure-sdk-for-js.git" + "url": "https://github.com/Azure/azure-sdk-for-js.git" }, "bugs": { - "url": "https://github.com/azure/azure-sdk-for-js/issues" + "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", @@ -43,6 +44,7 @@ "esm/**/*.d.ts", "esm/**/*.d.ts.map", "src/**/*.ts", + "README.md", "rollup.config.js", "tsconfig.json" ], diff --git a/sdk/batch/arm-batch/rollup.config.js b/sdk/batch/arm-batch/rollup.config.js index 75e829947f0f..8d1bc25e71ac 100644 --- a/sdk/batch/arm-batch/rollup.config.js +++ b/sdk/batch/arm-batch/rollup.config.js @@ -1,10 +1,16 @@ +import rollup from "rollup"; import nodeResolve from "rollup-plugin-node-resolve"; +import sourcemaps from "rollup-plugin-sourcemaps"; + /** - * @type {import('rollup').RollupFileOptions} + * @type {rollup.RollupFileOptions} */ const config = { - input: './esm/batchManagementClient.js', - external: ["@azure/ms-rest-js", "@azure/ms-rest-azure-js"], + input: "./esm/batchManagementClient.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], output: { file: "./dist/arm-batch.js", format: "umd", @@ -16,16 +22,16 @@ const config = { }, banner: `/* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */` }, plugins: [ - nodeResolve({ module: true }) + nodeResolve({ mainFields: ['module', 'main'] }), + sourcemaps() ] }; + export default config; diff --git a/sdk/batch/arm-batch/src/batchManagementClient.ts b/sdk/batch/arm-batch/src/batchManagementClient.ts index b921e4ae2937..e5c88e5186c8 100644 --- a/sdk/batch/arm-batch/src/batchManagementClient.ts +++ b/sdk/batch/arm-batch/src/batchManagementClient.ts @@ -23,6 +23,8 @@ class BatchManagementClient extends BatchManagementClientContext { location: operations.Location; operations: operations.Operations; certificate: operations.CertificateOperations; + privateLinkResource: operations.PrivateLinkResourceOperations; + privateEndpointConnection: operations.PrivateEndpointConnectionOperations; pool: operations.PoolOperations; /** @@ -40,6 +42,8 @@ class BatchManagementClient extends BatchManagementClientContext { this.location = new operations.Location(this); this.operations = new operations.Operations(this); this.certificate = new operations.CertificateOperations(this); + this.privateLinkResource = new operations.PrivateLinkResourceOperations(this); + this.privateEndpointConnection = new operations.PrivateEndpointConnectionOperations(this); this.pool = new operations.PoolOperations(this); } } diff --git a/sdk/batch/arm-batch/src/batchManagementClientContext.ts b/sdk/batch/arm-batch/src/batchManagementClientContext.ts index 0116fb7ba18f..c1ca39bae298 100644 --- a/sdk/batch/arm-batch/src/batchManagementClientContext.ts +++ b/sdk/batch/arm-batch/src/batchManagementClientContext.ts @@ -13,7 +13,7 @@ import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-batch"; -const packageVersion = "0.1.0"; +const packageVersion = "4.0.0"; export class BatchManagementClientContext extends msRestAzure.AzureServiceClient { credentials: msRest.ServiceClientCredentials; @@ -45,7 +45,7 @@ export class BatchManagementClientContext extends msRestAzure.AzureServiceClient super(credentials, options); - this.apiVersion = '2017-09-01'; + this.apiVersion = '2020-09-01'; this.acceptLanguage = 'en-US'; this.longRunningOperationRetryTimeout = 30; this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; diff --git a/sdk/batch/arm-batch/src/models/applicationOperationsMappers.ts b/sdk/batch/arm-batch/src/models/applicationOperationsMappers.ts index 97048ac844f6..5a3c50ebbc1b 100644 --- a/sdk/batch/arm-batch/src/models/applicationOperationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/applicationOperationsMappers.ts @@ -1,19 +1,72 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { - ApplicationCreateParameters, Application, ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, + BaseResource, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCreateOrUpdateParameters, + CertificateReference, + CIFSMountConfiguration, CloudError, - ApplicationUpdateParameters, - ListApplicationsResult + CloudServiceConfiguration, + ContainerConfiguration, + ContainerRegistry, + DataDisk, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, + FixedScaleSettings, + ImageReference, + InboundNatPool, + KeyVaultProperties, + KeyVaultReference, + LinuxUserConfiguration, + ListApplicationsResult, + MetadataItem, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, + ResourceFile, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, + UserIdentity, + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/applicationPackageOperationsMappers.ts b/sdk/batch/arm-batch/src/models/applicationPackageOperationsMappers.ts index eae5abb1fca9..a498cd5da71f 100644 --- a/sdk/batch/arm-batch/src/models/applicationPackageOperationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/applicationPackageOperationsMappers.ts @@ -1,16 +1,73 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { ActivateApplicationPackageParameters, + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, + BaseResource, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCreateOrUpdateParameters, + CertificateReference, + CIFSMountConfiguration, CloudError, - ApplicationPackage + CloudServiceConfiguration, + ContainerConfiguration, + ContainerRegistry, + DataDisk, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, + FixedScaleSettings, + ImageReference, + InboundNatPool, + KeyVaultProperties, + KeyVaultReference, + LinuxUserConfiguration, + ListApplicationPackagesResult, + MetadataItem, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, + ResourceFile, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, + UserIdentity, + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/batchAccountOperationsMappers.ts b/sdk/batch/arm-batch/src/models/batchAccountOperationsMappers.ts index b864b899da67..4488249bd7f1 100644 --- a/sdk/batch/arm-batch/src/models/batchAccountOperationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/batchAccountOperationsMappers.ts @@ -1,61 +1,78 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { - BatchAccountCreateParameters, + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, AutoStorageBaseProperties, - KeyVaultReference, - BatchAccount, - Resource, - BaseResource, AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, + BaseResource, + BatchAccount, BatchAccountCreateHeaders, - CloudError, - BatchAccountUpdateParameters, + BatchAccountCreateParameters, BatchAccountDeleteHeaders, + BatchAccountIdentity, + BatchAccountKeys, BatchAccountListResult, BatchAccountRegenerateKeyParameters, - BatchAccountKeys, - ProxyResource, + BatchAccountUpdateParameters, Certificate, - DeleteCertificateError, CertificateCreateOrUpdateParameters, - Pool, - DeploymentConfiguration, + CertificateReference, + CIFSMountConfiguration, + CloudError, CloudServiceConfiguration, - VirtualMachineConfiguration, - ImageReference, - OSDisk, - WindowsConfiguration, + ContainerConfiguration, + ContainerRegistry, DataDisk, - ScaleSettings, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, FixedScaleSettings, - AutoScaleSettings, - AutoScaleRun, - AutoScaleRunError, - NetworkConfiguration, - PoolEndpointConfiguration, + ImageReference, InboundNatPool, - NetworkSecurityGroupRule, - TaskSchedulingPolicy, - UserAccount, + KeyVaultProperties, + KeyVaultReference, LinuxUserConfiguration, MetadataItem, - StartTask, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, ResourceFile, - EnvironmentSetting, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, UserIdentity, - AutoUserSpecification, - CertificateReference, - ApplicationPackageReference, - ResizeOperationStatus, - ResizeError + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/certificateOperationsMappers.ts b/sdk/batch/arm-batch/src/models/certificateOperationsMappers.ts index d6bdab0a770e..65fd32d7dd8f 100644 --- a/sdk/batch/arm-batch/src/models/certificateOperationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/certificateOperationsMappers.ts @@ -1,60 +1,77 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { - ListCertificatesResult, - Certificate, - ProxyResource, + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, BaseResource, - DeleteCertificateError, - CloudError, - CertificateCreateOrUpdateParameters, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCancelDeletionHeaders, CertificateCreateHeaders, - CertificateUpdateHeaders, + CertificateCreateOrUpdateParameters, CertificateDeleteHeaders, CertificateGetHeaders, - CertificateCancelDeletionHeaders, - Resource, - Pool, - DeploymentConfiguration, + CertificateReference, + CertificateUpdateHeaders, + CIFSMountConfiguration, + CloudError, CloudServiceConfiguration, - VirtualMachineConfiguration, - ImageReference, - OSDisk, - WindowsConfiguration, + ContainerConfiguration, + ContainerRegistry, DataDisk, - ScaleSettings, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, FixedScaleSettings, - AutoScaleSettings, - AutoScaleRun, - AutoScaleRunError, - NetworkConfiguration, - PoolEndpointConfiguration, + ImageReference, InboundNatPool, - NetworkSecurityGroupRule, - TaskSchedulingPolicy, - UserAccount, + KeyVaultProperties, + KeyVaultReference, LinuxUserConfiguration, + ListCertificatesResult, MetadataItem, - StartTask, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, ResourceFile, - EnvironmentSetting, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, UserIdentity, - AutoUserSpecification, - CertificateReference, - ApplicationPackageReference, - ResizeOperationStatus, - ResizeError, - BatchAccount, - KeyVaultReference, - AutoStorageProperties, - AutoStorageBaseProperties + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/index.ts b/sdk/batch/arm-batch/src/models/index.ts index ca1259a449ac..6db72910d857 100644 --- a/sdk/batch/arm-batch/src/models/index.ts +++ b/sdk/batch/arm-batch/src/models/index.ts @@ -1,11 +1,9 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; @@ -13,2007 +11,2089 @@ import * as msRest from "@azure/ms-rest-js"; export { BaseResource, CloudError }; - /** - * @interface - * An interface representing AutoStorageBaseProperties. * The properties related to the auto-storage account. - * */ export interface AutoStorageBaseProperties { /** - * @member {string} storageAccountId The resource ID of the storage account - * to be used for auto-storage account. + * The resource ID of the storage account to be used for auto-storage account. */ storageAccountId: string; } /** - * @interface - * An interface representing KeyVaultReference. + * KeyVault configuration when using an encryption KeySource of Microsoft.KeyVault. + */ +export interface KeyVaultProperties { + /** + * Full path to the versioned secret. Example + * https://mykeyvault.vault.azure.net/keys/testkey/6e34a81fef704045975661e297a4c053. To be usable + * the following prerequisites must be met: + * + * The Batch Account has a System Assigned identity + * The account identity has been granted Key/Get, Key/Unwrap and Key/Wrap permissions + * The KeyVault has soft-delete and purge protection enabled + */ + keyIdentifier?: string; +} + +/** + * Configures how customer data is encrypted inside the Batch account. By default, accounts are + * encrypted using a Microsoft managed key. For additional control, a customer-managed key can be + * used instead. + */ +export interface EncryptionProperties { + /** + * Type of the key source. Possible values include: 'Microsoft.Batch', 'Microsoft.KeyVault' + */ + keySource?: KeySource; + /** + * Additional details when using Microsoft.KeyVault + */ + keyVaultProperties?: KeyVaultProperties; +} + +/** * Identifies the Azure key vault associated with a Batch account. - * */ export interface KeyVaultReference { /** - * @member {string} id The resource ID of the Azure key vault associated with - * the Batch account. + * The resource ID of the Azure key vault associated with the Batch account. */ id: string; /** - * @member {string} url The URL of the Azure key vault associated with the - * Batch account. + * The URL of the Azure key vault associated with the Batch account. */ url: string; } /** - * @interface - * An interface representing BatchAccountCreateParameters. + * The identity of the Batch account, if configured. This is only used when the user specifies + * 'Microsoft.KeyVault' as their Batch account encryption configuration. + */ +export interface BatchAccountIdentity { + /** + * The principal id of the Batch account. This property will only be provided for a system + * assigned identity. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly principalId?: string; + /** + * The tenant id associated with the Batch account. This property will only be provided for a + * system assigned identity. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly tenantId?: string; + /** + * The type of identity used for the Batch account. Possible values include: 'SystemAssigned', + * 'None' + */ + type: ResourceIdentityType; +} + +/** * Parameters supplied to the Create operation. - * */ export interface BatchAccountCreateParameters { /** - * @member {string} location The region in which to create the account. + * The region in which to create the account. */ location: string; /** - * @member {{ [propertyName: string]: string }} [tags] The user-specified - * tags associated with the account. + * The user-specified tags associated with the account. */ tags?: { [propertyName: string]: string }; /** - * @member {AutoStorageBaseProperties} [autoStorage] The properties related - * to the auto-storage account. + * The properties related to the auto-storage account. */ autoStorage?: AutoStorageBaseProperties; /** - * @member {PoolAllocationMode} [poolAllocationMode] The allocation mode to - * use for creating pools in the Batch account. The pool allocation mode also - * affects how clients may authenticate to the Batch Service API. If the mode - * is BatchService, clients may authenticate using access keys or Azure - * Active Directory. If the mode is UserSubscription, clients must use Azure - * Active Directory. The default is BatchService. Possible values include: - * 'BatchService', 'UserSubscription' + * The allocation mode to use for creating pools in the Batch account. The pool allocation mode + * also affects how clients may authenticate to the Batch Service API. If the mode is + * BatchService, clients may authenticate using access keys or Azure Active Directory. If the + * mode is UserSubscription, clients must use Azure Active Directory. The default is + * BatchService. Possible values include: 'BatchService', 'UserSubscription' */ poolAllocationMode?: PoolAllocationMode; /** - * @member {KeyVaultReference} [keyVaultReference] A reference to the Azure - * key vault associated with the Batch account. + * A reference to the Azure key vault associated with the Batch account. */ keyVaultReference?: KeyVaultReference; + /** + * The network access type for accessing Azure Batch account. If not specified, the default value + * is 'enabled'. Possible values include: 'Enabled', 'Disabled'. Default value: 'Enabled'. + */ + publicNetworkAccess?: PublicNetworkAccessType; + /** + * The encryption configuration for the Batch account. Configures how customer data is encrypted + * inside the Batch account. By default, accounts are encrypted using a Microsoft managed key. + * For additional control, a customer-managed key can be used instead. + */ + encryption?: EncryptionProperties; + /** + * The identity of the Batch account. + */ + identity?: BatchAccountIdentity; } /** - * @interface - * An interface representing AutoStorageProperties. - * Contains information about the auto-storage account associated with a Batch - * account. - * - * @extends AutoStorageBaseProperties + * Contains information about the auto-storage account associated with a Batch account. */ export interface AutoStorageProperties extends AutoStorageBaseProperties { /** - * @member {Date} lastKeySync The UTC time at which storage keys were last - * synchronized with the Batch account. + * The UTC time at which storage keys were last synchronized with the Batch account. */ lastKeySync: Date; } /** - * @interface - * An interface representing Resource. + * A VM Family and its associated core quota for the Batch account. + */ +export interface VirtualMachineFamilyCoreQuota { + /** + * The Virtual Machine family name. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * The core quota for the VM family for the Batch account. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly coreQuota?: number; +} + +/** + * The private endpoint of the private endpoint connection. + */ +export interface PrivateEndpoint { + /** + * The ARM resource identifier of the private endpoint. This is of the form + * /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/privateEndpoints/{privateEndpoint}. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; +} + +/** + * The private link service connection state of the private endpoint connection + */ +export interface PrivateLinkServiceConnectionState { + /** + * The status for the private endpoint connection of Batch account. Possible values include: + * 'Approved', 'Pending', 'Rejected', 'Disconnected' + */ + status: PrivateLinkServiceConnectionStatus; + /** + * Description of the private Connection state. + */ + description?: string; + /** + * Action required on the private connection state. **NOTE: This property will not be serialized. + * It can only be populated by the server.** + */ + readonly actionRequired?: string; +} + +/** + * A definition of an Azure resource. + */ +export interface ProxyResource extends BaseResource { + /** + * The ID of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * The name of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * The type of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * The ETag of the resource, used for concurrency statements. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly etag?: string; +} + +/** + * Contains information about a private link resource. + */ +export interface PrivateEndpointConnection extends ProxyResource { + /** + * The provisioning state of the private endpoint connection. Possible values include: + * 'Succeeded', 'Updating', 'Failed' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; + /** + * The ARM resource identifier of the private endpoint. + */ + privateEndpoint?: PrivateEndpoint; + /** + * The private link service connection state of the private endpoint connection. + */ + privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; +} + +/** * A definition of an Azure resource. - * - * @extends BaseResource */ export interface Resource extends BaseResource { /** - * @member {string} [id] The ID of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The ID of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** - * @member {string} [name] The name of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The name of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** - * @member {string} [type] The type of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The type of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** - * @member {string} [location] The location of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The location of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly location?: string; /** - * @member {{ [propertyName: string]: string }} [tags] The tags of the - * resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The tags of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly tags?: { [propertyName: string]: string }; } /** - * @interface - * An interface representing BatchAccount. * Contains information about an Azure Batch account. - * - * @extends Resource */ export interface BatchAccount extends Resource { /** - * @member {string} [accountEndpoint] The account endpoint used to interact - * with the Batch service. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The account endpoint used to interact with the Batch service. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly accountEndpoint?: string; /** - * @member {ProvisioningState} [provisioningState] The provisioned state of - * the resource. Possible values include: 'Invalid', 'Creating', 'Deleting', - * 'Succeeded', 'Failed', 'Cancelled' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The provisioned state of the resource. Possible values include: 'Invalid', 'Creating', + * 'Deleting', 'Succeeded', 'Failed', 'Cancelled' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: ProvisioningState; /** - * @member {PoolAllocationMode} [poolAllocationMode] The allocation mode to - * use for creating pools in the Batch account. Possible values include: + * The allocation mode to use for creating pools in the Batch account. Possible values include: * 'BatchService', 'UserSubscription' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly poolAllocationMode?: PoolAllocationMode; /** - * @member {KeyVaultReference} [keyVaultReference] A reference to the Azure - * key vault associated with the Batch account. **NOTE: This property will - * not be serialized. It can only be populated by the server.** + * A reference to the Azure key vault associated with the Batch account. **NOTE: This property + * will not be serialized. It can only be populated by the server.** */ readonly keyVaultReference?: KeyVaultReference; /** - * @member {AutoStorageProperties} [autoStorage] The properties and status of - * any auto-storage account associated with the Batch account. **NOTE: This - * property will not be serialized. It can only be populated by the server.** + * The network interface type for accessing Azure Batch service and Batch account operations. If + * not specified, the default value is 'enabled'. Possible values include: 'Enabled', 'Disabled' + * **NOTE: This property will not be serialized. It can only be populated by the server.**. + * Default value: 'Enabled'. + */ + readonly publicNetworkAccess?: PublicNetworkAccessType; + /** + * List of private endpoint connections associated with the Batch account + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** + * The properties and status of any auto-storage account associated with the Batch account. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly autoStorage?: AutoStorageProperties; /** - * @member {number} [dedicatedCoreQuota] The dedicated core quota for this - * Batch account. **NOTE: This property will not be serialized. It can only - * be populated by the server.** + * The encryption configuration for the Batch account. Configures how customer data is encrypted + * inside the Batch account. By default, accounts are encrypted using a Microsoft managed key. + * For additional control, a customer-managed key can be used instead. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly encryption?: EncryptionProperties; + /** + * The dedicated core quota for the Batch account. For accounts with PoolAllocationMode set to + * UserSubscription, quota is managed on the subscription so this value is not returned. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly dedicatedCoreQuota?: number; /** - * @member {number} [lowPriorityCoreQuota] The low-priority core quota for - * this Batch account. **NOTE: This property will not be serialized. It can - * only be populated by the server.** + * The low-priority core quota for the Batch account. For accounts with PoolAllocationMode set to + * UserSubscription, quota is managed on the subscription so this value is not returned. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lowPriorityCoreQuota?: number; /** - * @member {number} [poolQuota] The pool quota for this Batch account. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * A list of the dedicated core quota per Virtual Machine family for the Batch account. For + * accounts with PoolAllocationMode set to UserSubscription, quota is managed on the subscription + * so this value is not returned. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly dedicatedCoreQuotaPerVMFamily?: VirtualMachineFamilyCoreQuota[]; + /** + * A value indicating whether the core quota for the Batch Account is enforced per Virtual + * Machine family or not. Batch is transitioning its core quota system for dedicated cores to be + * enforced per Virtual Machine family. During this transitional phase, the dedicated core quota + * per Virtual Machine family may not yet be enforced. If this flag is false, dedicated core + * quota is enforced via the old dedicatedCoreQuota property on the account and does not consider + * Virtual Machine family. If this flag is true, dedicated core quota is enforced via the + * dedicatedCoreQuotaPerVMFamily property on the account, and the old dedicatedCoreQuota does not + * apply. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly dedicatedCoreQuotaPerVMFamilyEnforced?: boolean; + /** + * The pool quota for the Batch account. **NOTE: This property will not be serialized. It can + * only be populated by the server.** */ readonly poolQuota?: number; /** - * @member {number} [activeJobAndJobScheduleQuota] The active job and job - * schedule quota for this Batch account. **NOTE: This property will not be + * The active job and job schedule quota for the Batch account. **NOTE: This property will not be * serialized. It can only be populated by the server.** */ readonly activeJobAndJobScheduleQuota?: number; + /** + * The identity of the Batch account. + */ + identity?: BatchAccountIdentity; } /** - * @interface - * An interface representing BatchAccountUpdateParameters. * Parameters for updating an Azure Batch account. - * */ export interface BatchAccountUpdateParameters { /** - * @member {{ [propertyName: string]: string }} [tags] The user-specified - * tags associated with the account. + * The user-specified tags associated with the account. */ tags?: { [propertyName: string]: string }; /** - * @member {AutoStorageBaseProperties} [autoStorage] The properties related - * to the auto-storage account. + * The properties related to the auto-storage account. */ autoStorage?: AutoStorageBaseProperties; + /** + * The encryption configuration for the Batch account. Configures how customer data is encrypted + * inside the Batch account. By default, accounts are encrypted using a Microsoft managed key. + * For additional control, a customer-managed key can be used instead. + */ + encryption?: EncryptionProperties; + /** + * The identity of the Batch account. + */ + identity?: BatchAccountIdentity; } /** - * @interface - * An interface representing BatchAccountRegenerateKeyParameters. * Parameters supplied to the RegenerateKey operation. - * */ export interface BatchAccountRegenerateKeyParameters { /** - * @member {AccountKeyType} keyName The type of account key to regenerate. - * Possible values include: 'Primary', 'Secondary' + * The type of account key to regenerate. Possible values include: 'Primary', 'Secondary' */ keyName: AccountKeyType; } /** - * @interface - * An interface representing BatchAccountKeys. * A set of Azure Batch account keys. - * */ export interface BatchAccountKeys { /** - * @member {string} [accountName] The Batch account name. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The Batch account name. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly accountName?: string; /** - * @member {string} [primary] The primary key associated with the account. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The primary key associated with the account. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly primary?: string; /** - * @member {string} [secondary] The secondary key associated with the - * account. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The secondary key associated with the account. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly secondary?: string; } /** - * @interface - * An interface representing ActivateApplicationPackageParameters. * Parameters for an activating an application package. - * */ export interface ActivateApplicationPackageParameters { /** - * @member {string} format The format of the application package binary file. + * The format of the application package binary file. */ format: string; } /** - * @interface - * An interface representing ApplicationCreateParameters. - * Parameters for adding an Application. - * + * Contains information about an application in a Batch account. */ -export interface ApplicationCreateParameters { +export interface Application extends ProxyResource { + /** + * The display name for the application. + */ + displayName?: string; /** - * @member {boolean} [allowUpdates] A value indicating whether packages - * within the application may be overwritten using the same version string. + * A value indicating whether packages within the application may be overwritten using the same + * version string. */ allowUpdates?: boolean; /** - * @member {string} [displayName] The display name for the application. + * The package to use if a client requests the application but does not specify a version. This + * property can only be set to the name of an existing package. */ - displayName?: string; + defaultVersion?: string; } /** - * @interface - * An interface representing ApplicationPackage. - * An application package which represents a particular version of an - * application. - * + * An application package which represents a particular version of an application. */ -export interface ApplicationPackage { - /** - * @member {string} [id] The ID of the application. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly id?: string; +export interface ApplicationPackage extends ProxyResource { /** - * @member {string} [version] The version of the application package. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly version?: string; - /** - * @member {PackageState} [state] The current state of the application - * package. Possible values include: 'Pending', 'Active', 'Unmapped' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The current state of the application package. Possible values include: 'Pending', 'Active' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly state?: PackageState; /** - * @member {string} [format] The format of the application package, if the - * package is active. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The format of the application package, if the package is active. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly format?: string; /** - * @member {string} [storageUrl] The URL for the application package in Azure - * Storage. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The URL for the application package in Azure Storage. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly storageUrl?: string; /** - * @member {Date} [storageUrlExpiry] The UTC time at which the Azure Storage - * URL will expire. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The UTC time at which the Azure Storage URL will expire. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly storageUrlExpiry?: Date; /** - * @member {Date} [lastActivationTime] The time at which the package was last - * activated, if the package is active. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The time at which the package was last activated, if the package is active. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastActivationTime?: Date; } /** - * @interface - * An interface representing Application. - * Contains information about an application in a Batch account. - * - */ -export interface Application { - /** - * @member {string} [id] A string that uniquely identifies the application - * within the account. - */ - id?: string; - /** - * @member {string} [displayName] The display name for the application. - */ - displayName?: string; - /** - * @member {ApplicationPackage[]} [packages] The list of packages under this - * application. - */ - packages?: ApplicationPackage[]; - /** - * @member {boolean} [allowUpdates] A value indicating whether packages - * within the application may be overwritten using the same version string. - */ - allowUpdates?: boolean; - /** - * @member {string} [defaultVersion] The package to use if a client requests - * the application but does not specify a version. - */ - defaultVersion?: string; -} - -/** - * @interface - * An interface representing ApplicationUpdateParameters. - * Parameters for an update application request. - * - */ -export interface ApplicationUpdateParameters { - /** - * @member {boolean} [allowUpdates] A value indicating whether packages - * within the application may be overwritten using the same version string. - */ - allowUpdates?: boolean; - /** - * @member {string} [defaultVersion] The package to use if a client requests - * the application but does not specify a version. - */ - defaultVersion?: string; - /** - * @member {string} [displayName] The display name for the application. - */ - displayName?: string; -} - -/** - * @interface - * An interface representing BatchLocationQuota. * Quotas associated with a Batch region for a particular subscription. - * */ export interface BatchLocationQuota { /** - * @member {number} [accountQuota] The number of Batch accounts that may be - * created under the subscription in the specified region. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The number of Batch accounts that may be created under the subscription in the specified + * region. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly accountQuota?: number; } /** - * @interface - * An interface representing ProxyResource. - * A definition of an Azure resource. - * - * @extends BaseResource - */ -export interface ProxyResource extends BaseResource { - /** - * @member {string} [id] The ID of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly id?: string; - /** - * @member {string} [name] The name of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly name?: string; - /** - * @member {string} [type] The type of the resource. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly type?: string; - /** - * @member {string} [etag] The ETag of the resource, used for concurrency - * statements. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly etag?: string; -} - -/** - * @interface * An interface representing CertificateBaseProperties. */ export interface CertificateBaseProperties { /** - * @member {string} [thumbprintAlgorithm] The algorithm of the certificate - * thumbprint. This must match the first portion of the certificate name. - * Currently required to be 'SHA1'. + * The algorithm of the certificate thumbprint. This must match the first portion of the + * certificate name. Currently required to be 'SHA1'. */ thumbprintAlgorithm?: string; /** - * @member {string} [thumbprint] The thumbprint of the certificate. This must - * match the thumbprint from the name. + * The thumbprint of the certificate. This must match the thumbprint from the name. */ thumbprint?: string; /** - * @member {CertificateFormat} [format] The format of the certificate - - * either Pfx or Cer. If omitted, the default is Pfx. Possible values - * include: 'Pfx', 'Cer' + * The format of the certificate - either Pfx or Cer. If omitted, the default is Pfx. Possible + * values include: 'Pfx', 'Cer' */ format?: CertificateFormat; } /** - * @interface - * An interface representing DeleteCertificateError. * An error response from the Batch service. - * */ export interface DeleteCertificateError { /** - * @member {string} code An identifier for the error. Codes are invariant and - * are intended to be consumed programmatically. + * An identifier for the error. Codes are invariant and are intended to be consumed + * programmatically. */ code: string; /** - * @member {string} message A message describing the error, intended to be - * suitable for display in a user interface. + * A message describing the error, intended to be suitable for display in a user interface. */ message: string; /** - * @member {string} [target] The target of the particular error. For example, - * the name of the property in error. + * The target of the particular error. For example, the name of the property in error. */ target?: string; /** - * @member {DeleteCertificateError[]} [details] A list of additional details - * about the error. + * A list of additional details about the error. */ details?: DeleteCertificateError[]; } /** - * @interface - * An interface representing Certificate. * Contains information about a certificate. - * - * @extends ProxyResource */ export interface Certificate extends ProxyResource { /** - * @member {string} [thumbprintAlgorithm] The algorithm of the certificate - * thumbprint. This must match the first portion of the certificate name. - * Currently required to be 'SHA1'. + * The algorithm of the certificate thumbprint. This must match the first portion of the + * certificate name. Currently required to be 'SHA1'. */ thumbprintAlgorithm?: string; /** - * @member {string} [thumbprint] The thumbprint of the certificate. This must - * match the thumbprint from the name. + * The thumbprint of the certificate. This must match the thumbprint from the name. */ thumbprint?: string; /** - * @member {CertificateFormat} [format] The format of the certificate - - * either Pfx or Cer. If omitted, the default is Pfx. Possible values - * include: 'Pfx', 'Cer' + * The format of the certificate - either Pfx or Cer. If omitted, the default is Pfx. Possible + * values include: 'Pfx', 'Cer' */ format?: CertificateFormat; /** - * @member {CertificateProvisioningState} [provisioningState] The provisioned - * state of the resource. Values are: - * - * Succeeded - The certificate is available for use in pools. - * Deleting - The user has requested that the certificate be deleted, but the - * delete operation has not yet completed. You may not reference the - * certificate when creating or updating pools. - * Failed - The user requested that the certificate be deleted, but there are - * pools that still have references to the certificate, or it is still - * installed on one or more compute nodes. (The latter can occur if the - * certificate has been removed from the pool, but the node has not yet - * restarted. Nodes refresh their certificates only when they restart.) You - * may use the cancel certificate delete operation to cancel the delete, or - * the delete certificate operation to retry the delete. Possible values - * include: 'Succeeded', 'Deleting', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The provisioned state of the resource. Possible values include: 'Succeeded', 'Deleting', + * 'Failed' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: CertificateProvisioningState; /** - * @member {Date} [provisioningStateTransitionTime] The time at which the - * certificate entered its current state. **NOTE: This property will not be + * The time at which the certificate entered its current state. **NOTE: This property will not be * serialized. It can only be populated by the server.** */ readonly provisioningStateTransitionTime?: Date; /** - * @member {CertificateProvisioningState} [previousProvisioningState] The - * previous provisioned state of the resource. Possible values include: - * 'Succeeded', 'Deleting', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The previous provisioned state of the resource. Possible values include: 'Succeeded', + * 'Deleting', 'Failed' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly previousProvisioningState?: CertificateProvisioningState; /** - * @member {Date} [previousProvisioningStateTransitionTime] The time at which - * the certificate entered its previous state. **NOTE: This property will not + * The time at which the certificate entered its previous state. **NOTE: This property will not * be serialized. It can only be populated by the server.** */ readonly previousProvisioningStateTransitionTime?: Date; /** - * @member {string} [publicData] The public key of the certificate. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The public key of the certificate. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly publicData?: string; /** - * @member {DeleteCertificateError} [deleteCertificateError] The error which - * occurred while deleting the certificate. This is only returned when the + * The error which occurred while deleting the certificate. This is only returned when the * certificate provisioningState is 'Failed'. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly deleteCertificateError?: DeleteCertificateError; } /** - * @interface - * An interface representing CertificateCreateOrUpdateParameters. * Contains information about a certificate. - * - * @extends ProxyResource */ export interface CertificateCreateOrUpdateParameters extends ProxyResource { /** - * @member {string} [thumbprintAlgorithm] The algorithm of the certificate - * thumbprint. This must match the first portion of the certificate name. - * Currently required to be 'SHA1'. + * The algorithm of the certificate thumbprint. This must match the first portion of the + * certificate name. Currently required to be 'SHA1'. */ thumbprintAlgorithm?: string; /** - * @member {string} [thumbprint] The thumbprint of the certificate. This must - * match the thumbprint from the name. + * The thumbprint of the certificate. This must match the thumbprint from the name. */ thumbprint?: string; /** - * @member {CertificateFormat} [format] The format of the certificate - - * either Pfx or Cer. If omitted, the default is Pfx. Possible values - * include: 'Pfx', 'Cer' + * The format of the certificate - either Pfx or Cer. If omitted, the default is Pfx. Possible + * values include: 'Pfx', 'Cer' */ format?: CertificateFormat; /** - * @member {string} data The base64-encoded contents of the certificate. The - * maximum size is 10KB. + * The base64-encoded contents of the certificate. The maximum size is 10KB. */ data: string; /** - * @member {string} [password] The password to access the certificate's - * private key. This is required if the certificate format is pfx and must be - * omitted if the certificate format is cer. + * The password to access the certificate's private key. This must not be specified if the + * certificate format is Cer. */ password?: string; } /** - * @interface + * Contains information about a private link resource. + */ +export interface PrivateLinkResource extends ProxyResource { + /** + * The group id of the private link resource. The group id is used to establish the private link + * connection. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly groupId?: string; + /** + * The list of required members that are used to establish the private link connection. **NOTE: + * This property will not be serialized. It can only be populated by the server.** + */ + readonly requiredMembers?: string[]; + /** + * The list of required zone names for the private DNS resource name. **NOTE: This property will + * not be serialized. It can only be populated by the server.** + */ + readonly requiredZoneNames?: string[]; +} + +/** * An interface representing CloudServiceConfiguration. - * @summary The configuration for nodes in a pool based on the Azure Cloud - * Services platform. - * + * @summary The configuration for nodes in a pool based on the Azure Cloud Services platform. */ export interface CloudServiceConfiguration { /** - * @member {string} osFamily The Azure Guest OS family to be installed on the - * virtual machines in the pool. Possible values are: 2 - OS Family 2, - * equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to - * Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 - * R2. 5 - OS Family 5, equivalent to Windows Server 2016. For more - * information, see Azure Guest OS Releases + * The Azure Guest OS family to be installed on the virtual machines in the pool. Possible values + * are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to + * Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, + * equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For + * more information, see Azure Guest OS Releases * (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). */ osFamily: string; /** - * @member {string} [targetOSVersion] The Azure Guest OS version to be - * installed on the virtual machines in the pool. The default value is * - * which specifies the latest operating system version for the specified OS - * family. - */ - targetOSVersion?: string; - /** - * @member {string} [currentOSVersion] The Azure Guest OS Version currently - * installed on the virtual machines in the pool. This may differ from - * targetOSVersion if the pool state is Upgrading. In this case some virtual - * machines may be on the targetOSVersion and some may be on the - * currentOSVersion during the upgrade process. Once all virtual machines - * have upgraded, currentOSVersion is updated to be the same as - * targetOSVersion. + * The Azure Guest OS version to be installed on the virtual machines in the pool. The default + * value is * which specifies the latest operating system version for the specified OS family. */ - currentOSVersion?: string; + osVersion?: string; } /** - * @interface * An interface representing ImageReference. - * @summary A reference to an Azure Virtual Machines Marketplace image or the - * Azure Image resource of a custom Virtual Machine. To get the list of all - * imageReferences verified by Azure Batch, see the 'List supported node agent - * SKUs' operation. - * + * @summary A reference to an Azure Virtual Machines Marketplace image or the Azure Image resource + * of a custom Virtual Machine. To get the list of all imageReferences verified by Azure Batch, see + * the 'List supported node agent SKUs' operation. */ export interface ImageReference { /** - * @member {string} [publisher] The publisher of the Azure Virtual Machines - * Marketplace image. For example, Canonical or MicrosoftWindowsServer. + * The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or + * MicrosoftWindowsServer. */ publisher?: string; /** - * @member {string} [offer] The offer type of the Azure Virtual Machines - * Marketplace image. For example, UbuntuServer or WindowsServer. + * The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or + * WindowsServer. */ offer?: string; /** - * @member {string} [sku] The SKU of the Azure Virtual Machines Marketplace - * image. For example, 14.04.0-LTS or 2012-R2-Datacenter. + * The SKU of the Azure Virtual Machines Marketplace image. For example, 18.04-LTS or + * 2019-Datacenter. */ sku?: string; /** - * @member {string} [version] 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'. + * 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'. */ version?: string; /** - * @member {string} [id] The ARM resource identifier of the virtual machine - * image. Computes nodes of the pool will be created using this custom image. - * This is of the form - * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}. - * This property is mutually exclusive with other properties. The virtual - * machine image must be in the same region and subscription as the Azure - * Batch account. For information about the firewall settings for Batch node - * agent to communicate with Batch service see - * https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration - * . + * The ARM resource identifier of the Shared Image 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}. + * This property is mutually exclusive with other properties. The Shared Image Gallery image must + * have replicas in the same region as the Azure Batch account. For information about the + * firewall settings for the Batch 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. */ id?: string; } /** - * @interface - * An interface representing OSDisk. - * @summary Settings for the operating system disk of the virtual machine. - * - */ -export interface OSDisk { - /** - * @member {CachingType} [caching] The type of caching to be enabled for the - * data disks. none - The caching mode for the disk is not enabled. readOnly - * - The caching mode for the disk is read only. readWrite - The caching mode - * for the disk is read and write. Default value is none. Possible values - * include: 'None', 'ReadOnly', 'ReadWrite' - */ - caching?: CachingType; -} - -/** - * @interface * An interface representing WindowsConfiguration. * @summary Windows operating system settings to apply to the virtual machine. - * */ export interface WindowsConfiguration { /** - * @member {boolean} [enableAutomaticUpdates] Whether automatic updates are - * enabled on the virtual machine. If omitted, the default value is true. + * Whether automatic updates are enabled on the virtual machine. If omitted, the default value is + * true. */ enableAutomaticUpdates?: boolean; } /** - * @interface - * An interface representing DataDisk. - * Data Disk settings which will be used by the data disks associated to - * Compute Nodes in the pool. - * + * Settings which will be used by the data disks associated to Compute Nodes in the Pool. When + * using attached data disks, you need to mount and format the disks from within a VM to use them. */ export interface DataDisk { /** - * @member {number} lun The logical unit number. The lun is used to uniquely - * identify each data disk. If attaching multiple disks, each should have a - * distinct lun. + * The logical unit number. The lun is used to uniquely identify each data disk. If attaching + * multiple disks, each should have a distinct lun. The value must be between 0 and 63, + * inclusive. */ lun: number; /** - * @member {CachingType} [caching] The type of caching to be enabled for the - * data disks. Values are: + * The type of caching to be enabled for the data disks. Values are: * * none - The caching mode for the disk is not enabled. * readOnly - The caching mode for the disk is read only. * readWrite - The caching mode for the disk is read and write. * - * The default value for caching is none. For information about the caching - * options see: + * The default value for caching is none. For information about the caching options see: * https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. * Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingType; /** - * @member {number} diskSizeGB The initial disk size in GB when creating new - * data disk. + * The initial disk size in GB when creating new data disk. */ diskSizeGB: number; /** - * @member {StorageAccountType} [storageAccountType] The storage account type - * to be used for the data disk. If omitted, the default is "Standard_LRS". - * Values are: + * The storage account type to be used for the data disk. If omitted, the default is + * "Standard_LRS". Values are: * - * Standard_LRS - The data disk should use standard locally redundant - * storage. - * Premium_LRS - The data disk should use premium locally redundant storage. - * Possible values include: 'Standard_LRS', 'Premium_LRS' + * Standard_LRS - The data disk should use standard locally redundant storage. + * Premium_LRS - The data disk should use premium locally redundant storage. Possible values + * include: 'Standard_LRS', 'Premium_LRS' */ storageAccountType?: StorageAccountType; } /** - * @interface + * An interface representing ContainerRegistry. + * @summary A private container registry. + */ +export interface ContainerRegistry { + /** + * The registry URL. If omitted, the default is "docker.io". + */ + registryServer?: string; + /** + * The user name to log into the registry server. + */ + userName: string; + /** + * The password to log into the registry server. + */ + password: string; +} + +/** + * An interface representing ContainerConfiguration. + * @summary The configuration for container-enabled pools. + */ +export interface ContainerConfiguration { + /** + * The collection of container image names. This is the full image reference, as would be + * specified to "docker pull". An image will be sourced from the default Docker registry unless + * the image is fully qualified with an alternative registry. + */ + containerImageNames?: string[]; + /** + * Additional private registries from which containers can be pulled. If any images must be + * downloaded from a private registry which requires credentials, then those credentials must be + * provided here. + */ + containerRegistries?: ContainerRegistry[]; +} + +/** + * The disk encryption configuration applied on compute nodes in the pool. Disk encryption + * configuration is not supported on Linux pool created with Virtual Machine Image or Shared Image + * Gallery Image. + */ +export interface DiskEncryptionConfiguration { + /** + * The list of disk targets Batch Service will encrypt on the compute node. On Linux pool, only + * "TemporaryDisk" is supported; on Windows pool, "OsDisk" and "TemporaryDisk" must be specified. + */ + targets?: DiskEncryptionTarget[]; +} + +/** * An interface representing VirtualMachineConfiguration. - * @summary The configuration for compute nodes in a pool based on the Azure - * Virtual Machines infrastructure. - * + * @summary The configuration for compute nodes in a pool based on the Azure Virtual Machines + * infrastructure. */ export interface VirtualMachineConfiguration { /** - * @member {ImageReference} imageReference A reference to the Azure Virtual - * Machines Marketplace Image or the custom Virtual Machine Image to use. + * A reference to the Azure Virtual Machines Marketplace Image or the custom Virtual Machine + * Image to use. */ imageReference: ImageReference; /** - * @member {OSDisk} [osDisk] Settings for the operating system disk of the - * Virtual Machine. - */ - osDisk?: OSDisk; - /** - * @member {string} nodeAgentSkuId The SKU of the Batch node agent to be - * provisioned on compute nodes in the pool. The Batch node agent is a - * program that runs on each node in the pool, and provides the - * command-and-control interface between the node and the Batch service. - * There are different implementations of the node agent, known as SKUs, for - * different operating systems. You must specify a node agent SKU which - * matches the selected image reference. To get the list of supported node - * agent SKUs along with their list of verified image references, see the - * 'List supported node agent SKUs' operation. + * The SKU of the Batch node agent to be provisioned on compute nodes in the pool. The Batch node + * agent is a program that runs on each node in the pool, and provides the command-and-control + * interface between the node and the Batch service. There are different implementations of the + * node agent, known as SKUs, for different operating systems. You must specify a node agent SKU + * which matches the selected image reference. To get the list of supported node agent SKUs along + * with their list of verified image references, see the 'List supported node agent SKUs' + * operation. */ nodeAgentSkuId: string; /** - * @member {WindowsConfiguration} [windowsConfiguration] Windows operating - * system settings on the virtual machine. This property must not be - * specified if the imageReference specifies a Linux OS image. + * Windows operating system settings on the virtual machine. This property must not be specified + * if the imageReference specifies a Linux OS image. */ windowsConfiguration?: WindowsConfiguration; /** - * @member {DataDisk[]} [dataDisks] 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. + * 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. */ dataDisks?: DataDisk[]; /** - * @member {string} [licenseType] The type of on-premises license to be used - * when deploying the operating system. This only applies to images that - * contain the Windows operating system, and should only be used when you - * hold valid on-premises licenses for the nodes which will be deployed. If - * omitted, no on-premises licensing discount is applied. Values are: + * The type of on-premises license to be used when deploying the operating system. This only + * applies to images that contain the Windows operating system, and should only be used when you + * hold valid on-premises licenses for the nodes which will be deployed. If omitted, no + * on-premises licensing discount is applied. Values are: * * Windows_Server - The on-premises license is for Windows Server. * Windows_Client - The on-premises license is for Windows Client. */ licenseType?: string; + /** + * The container configuration for the pool. If specified, setup is performed on each 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. + */ + containerConfiguration?: ContainerConfiguration; + /** + * The disk encryption configuration for the pool. If specified, encryption is performed on each + * node in the pool during node provisioning. + */ + diskEncryptionConfiguration?: DiskEncryptionConfiguration; } /** - * @interface * An interface representing DeploymentConfiguration. * @summary Deployment configuration properties. - * */ export interface DeploymentConfiguration { /** - * @member {CloudServiceConfiguration} [cloudServiceConfiguration] The cloud - * service configuration for the pool. This property and - * virtualMachineConfiguration are mutually exclusive and one of the - * properties must be specified. This property cannot be specified if the - * Batch account was created with its poolAllocationMode property set to + * The cloud service configuration for the pool. This property and virtualMachineConfiguration + * are mutually exclusive and one of the properties must be specified. This property cannot be + * specified if the Batch account was created with its poolAllocationMode property set to * 'UserSubscription'. */ cloudServiceConfiguration?: CloudServiceConfiguration; /** - * @member {VirtualMachineConfiguration} [virtualMachineConfiguration] The - * virtual machine configuration for the pool. This property and - * cloudServiceConfiguration are mutually exclusive and one of the properties - * must be specified. + * The virtual machine configuration for the pool. This property and cloudServiceConfiguration + * are mutually exclusive and one of the properties must be specified. */ virtualMachineConfiguration?: VirtualMachineConfiguration; } /** - * @interface * An interface representing FixedScaleSettings. * @summary Fixed scale settings for the pool. - * */ export interface FixedScaleSettings { /** - * @member {string} [resizeTimeout] The timeout for allocation of compute - * nodes to the pool. The default value is 15 minutes. Timeout values use ISO - * 8601 format. For example, use PT10M for 10 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). + * The timeout for allocation of compute nodes to the pool. The default value is 15 minutes. + * Timeout values use ISO 8601 format. For example, use PT10M for 10 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). */ resizeTimeout?: string; /** - * @member {number} [targetDedicatedNodes] The desired number of dedicated - * compute nodes in the pool. At least one of targetDedicatedNodes, - * targetLowPriority nodes must be set. + * The desired number of dedicated compute nodes in the pool. At least one of + * targetDedicatedNodes, targetLowPriorityNodes must be set. */ targetDedicatedNodes?: number; /** - * @member {number} [targetLowPriorityNodes] The desired number of - * low-priority compute nodes in the pool. At least one of - * targetDedicatedNodes, targetLowPriority nodes must be set. + * The desired number of low-priority compute nodes in the pool. At least one of + * targetDedicatedNodes, targetLowPriorityNodes must be set. */ targetLowPriorityNodes?: number; /** - * @member {ComputeNodeDeallocationOption} [nodeDeallocationOption] - * Determines what to do with a node and its running task(s) if the pool size - * is decreasing. If omitted, the default value is Requeue. Possible values - * include: 'Requeue', 'Terminate', 'TaskCompletion', 'RetainedData' + * Determines what to do with a node and its running task(s) if the pool size is decreasing. If + * omitted, the default value is Requeue. Possible values include: 'Requeue', 'Terminate', + * 'TaskCompletion', 'RetainedData' */ nodeDeallocationOption?: ComputeNodeDeallocationOption; } /** - * @interface * An interface representing AutoScaleSettings. * @summary AutoScale settings for the pool. - * */ export interface AutoScaleSettings { /** - * @member {string} formula A formula for the desired number of compute nodes - * in the pool. + * A formula for the desired number of compute nodes in the pool. */ formula: string; /** - * @member {string} [evaluationInterval] The time interval at which to - * automatically adjust the pool size according to the autoscale formula. If - * omitted, the default value is 15 minutes (PT15M). + * The time interval at which to automatically adjust the pool size according to the autoscale + * formula. If omitted, the default value is 15 minutes (PT15M). */ evaluationInterval?: string; } /** - * @interface - * An interface representing ScaleSettings. + * Defines the desired size of the pool. This can either be 'fixedScale' where the requested + * targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically + * reevaluated. If this property is not specified, the pool will have a fixed scale with 0 + * targetDedicatedNodes. * @summary Scale settings for the pool - * - * Defines the desired size of the pool. This can either be 'fixedScale' where - * the requested targetDedicatedNodes is specified, or 'autoScale' which - * defines a formula which is periodically reevaluated. If this property is not - * specified, the pool will have a fixed scale with 0 targetDedicatedNodes. - * */ export interface ScaleSettings { /** - * @member {FixedScaleSettings} [fixedScale] Fixed scale settings for the - * pool. This property and autoScale are mutually exclusive and one of the - * properties must be specified. + * Fixed scale settings for the pool. This property and autoScale are mutually exclusive and one + * of the properties must be specified. */ fixedScale?: FixedScaleSettings; /** - * @member {AutoScaleSettings} [autoScale] AutoScale settings for the pool. - * This property and fixedScale are mutually exclusive and one of the - * properties must be specified. + * AutoScale settings for the pool. This property and fixedScale are mutually exclusive and one + * of the properties must be specified. */ autoScale?: AutoScaleSettings; } /** - * @interface * An interface representing AutoScaleRunError. * @summary An error that occurred when autoscaling a pool. - * */ export interface AutoScaleRunError { /** - * @member {string} code An identifier for the error. Codes are invariant and - * are intended to be consumed programmatically. + * An identifier for the error. Codes are invariant and are intended to be consumed + * programmatically. */ code: string; /** - * @member {string} message A message describing the error, intended to be - * suitable for display in a user interface. + * A message describing the error, intended to be suitable for display in a user interface. */ message: string; /** - * @member {AutoScaleRunError[]} [details] Additional details about the - * error. + * Additional details about the error. */ details?: AutoScaleRunError[]; } /** - * @interface * An interface representing AutoScaleRun. - * @summary The results and errors from an execution of a pool autoscale - * formula. - * + * @summary The results and errors from an execution of a pool autoscale formula. */ export interface AutoScaleRun { /** - * @member {Date} evaluationTime The time at which the autoscale formula was - * last evaluated. + * The time at which the autoscale formula was last evaluated. */ evaluationTime: Date; /** - * @member {string} [results] The final values of all variables used in the - * evaluation of the autoscale formula. Each variable value is returned in - * the form $variable=value, and variables are separated by semicolons. + * The final values of all variables used in the evaluation of the autoscale formula. Each + * variable value is returned in the form $variable=value, and variables are separated by + * semicolons. */ results?: string; /** - * @member {AutoScaleRunError} [error] Details of the error encountered - * evaluating the autoscale formula on the pool, if the evaluation was - * unsuccessful. + * Details of the error encountered evaluating the autoscale formula on the pool, if the + * evaluation was unsuccessful. */ error?: AutoScaleRunError; } /** - * @interface * An interface representing NetworkSecurityGroupRule. * @summary A network security group rule to apply to an inbound endpoint. - * */ export interface NetworkSecurityGroupRule { /** - * @member {number} priority The priority for this rule. Priorities within a - * pool must be unique and are evaluated in order of priority. The lower the - * number the higher the priority. For example, rules could be specified with - * order numbers of 150, 250, and 350. The rule with the order number of 150 - * takes precedence over the rule that has an order of 250. Allowed - * priorities are 150 to 3500. If any reserved or duplicate values are - * provided the request fails with HTTP status code 400. + * The priority for this rule. Priorities within a pool must be unique and are evaluated in order + * of priority. The lower the number the higher the priority. For example, rules could be + * specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes + * precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any + * reserved or duplicate values are provided the request fails with HTTP status code 400. */ priority: number; /** - * @member {NetworkSecurityGroupRuleAccess} access The action that should be - * taken for a specified IP address, subnet range or tag. Possible values - * include: 'Allow', 'Deny' + * The action that should be taken for a specified IP address, subnet range or tag. Possible + * values include: 'Allow', 'Deny' */ access: NetworkSecurityGroupRuleAccess; /** - * @member {string} sourceAddressPrefix The source address prefix or tag to - * match for the rule. Valid values are a single IP address (i.e. - * 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all - * addresses). If any other values are provided the request fails with HTTP - * status code 400. + * The source address prefix or tag to match for the rule. Valid values are a single IP address + * (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). + * If any other values are provided the request fails with HTTP status code 400. */ sourceAddressPrefix: string; + /** + * The source port ranges to match for the rule. Valid values are '*' (for all ports 0 - 65535) + * or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 + * and the port ranges or ports can't overlap. If any other values are provided the request fails + * with HTTP status code 400. Default value will be *. + */ + sourcePortRanges?: string[]; } /** - * @interface * An interface representing InboundNatPool. - * @summary A inbound NAT pool that can be used to address specific ports on - * compute nodes in a Batch pool externally. - * + * @summary A inbound NAT pool that can be used to address specific ports on compute nodes in a + * Batch pool externally. */ export interface InboundNatPool { /** - * @member {string} name 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. + * 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. */ name: string; /** - * @member {InboundEndpointProtocol} protocol The protocol of the endpoint. - * Possible values include: 'TCP', 'UDP' + * The protocol of the endpoint. Possible values include: 'TCP', 'UDP' */ protocol: InboundEndpointProtocol; /** - * @member {number} backendPort 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. + * 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. */ backendPort: number; /** - * @member {number} frontendPortRangeStart 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. If any reserved or - * overlapping values are provided the request fails with HTTP status code - * 400. + * 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. If any reserved or overlapping values are provided the request + * fails with HTTP status code 400. */ frontendPortRangeStart: number; /** - * @member {number} frontendPortRangeEnd The last 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 by the Batch - * service. All ranges within a pool must be distinct and cannot overlap. If - * any reserved or overlapping values are provided the request fails with - * HTTP status code 400. + * The last 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 by the Batch service. All ranges + * within a pool must be distinct and cannot overlap. If any reserved or overlapping values are + * provided the request fails with HTTP status code 400. */ frontendPortRangeEnd: number; /** - * @member {NetworkSecurityGroupRule[]} [networkSecurityGroupRules] A list of - * network security group rules that will be applied to the endpoint. The - * maximum number of rules that can be specified across all the endpoints on - * a Batch pool is 25. If no network security group rules are specified, a - * default rule will be created to allow inbound access to the specified - * backendPort. If the maximum number of network security group rules is + * A list of network security group rules that will be applied to the endpoint. The maximum + * number of rules that can be specified across all the endpoints on a Batch pool is 25. If no + * network security group rules are specified, a default rule will be created to allow inbound + * access to the specified backendPort. If the maximum number of network security group rules is * exceeded the request fails with HTTP status code 400. */ networkSecurityGroupRules?: NetworkSecurityGroupRule[]; } /** - * @interface * An interface representing PoolEndpointConfiguration. * @summary The endpoint configuration for a pool. - * */ export interface PoolEndpointConfiguration { /** - * @member {InboundNatPool[]} inboundNatPools 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. + * 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. */ inboundNatPools: InboundNatPool[]; } /** - * @interface - * An interface representing NetworkConfiguration. + * The public IP Address configuration of the networking configuration of a Pool. + */ +export interface PublicIPAddressConfiguration { + /** + * The provisioning type for Public IP Addresses for the pool. The default value is BatchManaged. + * Possible values include: 'BatchManaged', 'UserManaged', 'NoPublicIPAddresses' + */ + provision?: IPAddressProvisioningType; + /** + * 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 + * 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}. + */ + ipAddressIds?: string[]; +} + +/** * The network configuration for a pool. - * */ export interface NetworkConfiguration { /** - * @member {string} [subnetId] The ARM resource identifier of the virtual - * network subnet which the compute nodes of the pool will join. This is of - * the form + * 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 nodes in the pool. If the subnet - * doesn't have enough free IP addresses, the pool will partially allocate - * compute 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 compute nodes. This can be verified by - * checking if the specified VNet has any associated Network Security Groups - * (NSG). If communication to the compute nodes in the specified subnet is - * denied by an NSG, then the Batch service will set the state of the compute - * nodes to unusable. For pools created via virtualMachineConfiguration the - * Batch account must have poolAllocationMode userSubscription in order to - * use a VNet. If the specified VNet has any associated Network Security - * Groups (NSG), then a few reserved system ports must be enabled for inbound - * communication. 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. For pools created with a cloud service configuration, enable - * ports 10100, 20100, and 30100. Also enable outbound connections to Azure - * Storage on port 443. For more details see: + * 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 nodes + * in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially + * allocate compute 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 compute nodes. This can be verified by + * checking if the specified VNet has any associated Network Security Groups (NSG). If + * communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch + * service will set the state of the compute nodes to unusable. If the specified VNet has any + * associated Network Security Groups (NSG), then a few reserved system ports must be enabled for + * inbound communication. 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. For pools created + * with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound + * connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' + * VNETs are supported. For more details see: * https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration */ subnetId?: string; /** - * @member {PoolEndpointConfiguration} [endpointConfiguration] The - * configuration for endpoints on compute nodes in the Batch pool. Pool - * endpoint configuration is only supported on pools with the - * virtualMachineConfiguration property. + * The configuration for endpoints on compute nodes in the Batch pool. Pool endpoint + * configuration is only supported on pools with the virtualMachineConfiguration property. */ endpointConfiguration?: PoolEndpointConfiguration; + /** + * The Public IPAddress configuration for Compute Nodes in the Batch Pool. This property is only + * supported on Pools with the virtualMachineConfiguration property. + */ + publicIPAddressConfiguration?: PublicIPAddressConfiguration; } /** - * @interface * An interface representing TaskSchedulingPolicy. * @summary Specifies how tasks should be distributed across compute nodes. - * */ export interface TaskSchedulingPolicy { /** - * @member {ComputeNodeFillType} nodeFillType How tasks should be distributed - * across compute nodes. Possible values include: 'Spread', 'Pack' + * How tasks should be distributed across compute nodes. Possible values include: 'Spread', + * 'Pack' */ nodeFillType: ComputeNodeFillType; } /** - * @interface * An interface representing LinuxUserConfiguration. * @summary Properties used to create a user account on a Linux node. - * */ export interface LinuxUserConfiguration { /** - * @member {number} [uid] The user ID of the user account. The uid and gid - * properties must be specified together or not at all. If not specified the - * underlying operating system picks the uid. + * The user ID of the user account. The uid and gid properties must be specified together or not + * at all. If not specified the underlying operating system picks the uid. */ uid?: number; /** - * @member {number} [gid] The group ID for the user account. The uid and gid - * properties must be specified together or not at all. If not specified the - * underlying operating system picks the gid. + * The group ID for the user account. The uid and gid properties must be specified together or + * not at all. If not specified the underlying operating system picks the gid. */ gid?: number; /** - * @member {string} [sshPrivateKey] The SSH private key for the user account. - * The private key must not be password protected. The private key is used to - * automatically configure asymmetric-key based authentication for SSH - * between nodes in a Linux pool when the pool's enableInterNodeCommunication - * property is true (it is ignored if enableInterNodeCommunication is false). - * It does this by placing the key pair into the user's .ssh directory. If - * not specified, password-less SSH is not configured between nodes (no - * modification of the user's .ssh directory is done). + * The SSH private key for the user account. The private key must not be password protected. The + * private key is used to automatically configure asymmetric-key based authentication for SSH + * between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true + * (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair + * into the user's .ssh directory. If not specified, password-less SSH is not configured between + * nodes (no modification of the user's .ssh directory is done). */ sshPrivateKey?: string; } /** - * @interface + * An interface representing WindowsUserConfiguration. + * @summary Properties used to create a user account on a Windows node. + */ +export interface WindowsUserConfiguration { + /** + * Login mode for user. Specifies login mode for the user. The default value for + * VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools + * is batch mode. Possible values include: 'Batch', 'Interactive' + */ + loginMode?: LoginMode; +} + +/** * An interface representing UserAccount. * @summary Properties used to create a user on an Azure Batch node. - * */ export interface UserAccount { /** - * @member {string} name The name of the user account. + * The name of the user account. */ name: string; /** - * @member {string} password The password for the user account. + * The password for the user account. */ password: string; /** - * @member {ElevationLevel} [elevationLevel] The elevation level of the user - * account. nonAdmin - The auto user is a standard user without elevated - * access. admin - The auto user is a user with elevated access and operates - * with full Administrator permissions. The default value is nonAdmin. - * Possible values include: 'NonAdmin', 'Admin' + * The elevation level of the user account. nonAdmin - The auto user is a standard user without + * elevated access. admin - The auto user is a user with elevated access and operates with full + * Administrator permissions. The default value is nonAdmin. Possible values include: 'NonAdmin', + * 'Admin' */ elevationLevel?: ElevationLevel; /** - * @member {LinuxUserConfiguration} [linuxUserConfiguration] The - * Linux-specific user configuration for the user account. This property is - * ignored if specified on a Windows pool. If not specified, the user is - * created with the default options. + * The Linux-specific user configuration for the user account. This property is ignored if + * specified on a Windows pool. If not specified, the user is created with the default options. */ linuxUserConfiguration?: LinuxUserConfiguration; + /** + * The Windows-specific user configuration for the user account. This property can only be + * specified if the user is on a Windows pool. If not specified and on a Windows pool, the user + * is created with the default options. + */ + windowsUserConfiguration?: WindowsUserConfiguration; } /** - * @interface - * An interface representing MetadataItem. + * The Batch service does not assign any meaning to this metadata; it is solely for the use of user + * code. * @summary A name-value pair associated with a Batch service resource. - * - * The Batch service does not assign any meaning to this metadata; it is solely - * for the use of user code. - * */ export interface MetadataItem { /** - * @member {string} name The name of the metadata item. + * The name of the metadata item. */ name: string; /** - * @member {string} value The value of the metadata item. + * The value of the metadata item. */ value: string; } /** - * @interface * An interface representing ResourceFile. - * @summary A file to be downloaded from Azure blob storage to a compute node. - * + * @summary A single file or multiple files to be downloaded to a compute node. */ export interface ResourceFile { /** - * @member {string} blobSource The URL of the file within Azure Blob Storage. - * This URL must be readable using anonymous access; that is, the Batch - * service does not present any credentials when downloading the blob. There - * are two ways to get such a URL for a blob in Azure storage: include a - * Shared Access Signature (SAS) granting read permissions on the blob, or - * set the ACL for the blob or its container to allow public access. + * The storage container name in the auto storage account. The autoStorageContainerName, + * storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be + * specified. + */ + autoStorageContainerName?: string; + /** + * The URL of the blob container within Azure Blob Storage. The autoStorageContainerName, + * storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be + * specified. This URL must be readable and listable using anonymous access; that is, the Batch + * service does not present any credentials when downloading the blob. There are two ways to get + * such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read + * and list permissions on the blob, or set the ACL for the blob or its container to allow public + * access. + */ + storageContainerUrl?: string; + /** + * The URL of the file to download. The autoStorageContainerName, storageContainerUrl and httpUrl + * properties are mutually exclusive and one of them must be specified. If the URL is Azure Blob + * Storage, it must be readable using anonymous access; that is, the Batch service does not + * present any credentials when downloading the blob. There are two ways to get such a URL for a + * blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on + * the blob, or set the ACL for the blob or its container to allow public access. + */ + httpUrl?: string; + /** + * The blob prefix to use when downloading blobs from an Azure Storage container. Only the blobs + * whose names begin with the specified prefix will be downloaded. The property is valid only + * when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial + * filename or a subdirectory. If a prefix is not specified, all the files in the container will + * be downloaded. */ - blobSource: string; + blobPrefix?: string; /** - * @member {string} filePath The location on the compute node to which to - * download the file, relative to the task's working directory. + * The location on the compute node to which to download the file, relative to the task's working + * directory. If the httpUrl property is specified, the filePath is required and describes the + * path which the file will be downloaded to, including the filename. Otherwise, if the + * autoStorageContainerName or storageContainerUrl property is specified, filePath is optional + * and is the directory to download the files to. In the case where filePath is used as a + * directory, any directory structure already associated with the input data will be retained in + * full and appended to the specified filePath directory. The specified relative path cannot + * break out of the task's working directory (for example by using '..'). */ - filePath: string; + filePath?: string; /** - * @member {string} [fileMode] The file permission mode attribute in octal - * format. This property applies only to files being downloaded to Linux - * compute nodes. It will be ignored if it is specified for a resourceFile - * which will be downloaded to a Windows node. If this property is not - * specified for a Linux node, then a default value of 0770 is applied to the - * file. + * The file permission mode attribute in octal format. This property applies only to files being + * downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile + * which will be downloaded to a Windows node. If this property is not specified for a Linux + * node, then a default value of 0770 is applied to the file. */ fileMode?: string; } /** - * @interface * An interface representing EnvironmentSetting. * @summary An environment variable to be set on a task process. - * */ export interface EnvironmentSetting { /** - * @member {string} name The name of the environment variable. + * The name of the environment variable. */ name: string; /** - * @member {string} [value] The value of the environment variable. + * The value of the environment variable. */ value?: string; } /** - * @interface * An interface representing AutoUserSpecification. - * @summary Specifies the parameters for the auto user that runs a task on the - * Batch service. - * + * @summary Specifies the parameters for the auto user that runs a task on the Batch service. */ export interface AutoUserSpecification { /** - * @member {AutoUserScope} [scope] The scope for the auto user. pool - - * specifies that the task runs as the common auto user account which is - * created on every node in a pool. task - specifies that the service should - * create a new user for the task. The default value is task. Possible values - * include: 'Task', 'Pool' + * 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 start tasks. Possible values include: 'Task', 'Pool' */ scope?: AutoUserScope; /** - * @member {ElevationLevel} [elevationLevel] The elevation level of the auto - * user. nonAdmin - The auto user is a standard user without elevated access. - * admin - The auto user is a user with elevated access and operates with - * full Administrator permissions. The default value is nonAdmin. Possible - * values include: 'NonAdmin', 'Admin' + * The elevation level of the auto user. The default value is nonAdmin. Possible values include: + * 'NonAdmin', 'Admin' */ elevationLevel?: ElevationLevel; } /** - * @interface - * An interface representing UserIdentity. - * @summary The definition of the user identity under which the task is run. - * * Specify either the userName or autoUser property, but not both. - * + * @summary The definition of the user identity under which the task is run. */ export interface UserIdentity { /** - * @member {string} [userName] The name of the user identity under which the - * task is run. The userName and autoUser properties are mutually exclusive; - * you must specify one but not both. + * The name of the user identity under which the task is run. The userName and autoUser + * properties are mutually exclusive; you must specify one but not both. */ userName?: string; /** - * @member {AutoUserSpecification} [autoUser] The auto user under which the - * task is run. The userName and autoUser properties are mutually exclusive; - * you must specify one but not both. + * The auto user under which the task is run. The userName and autoUser properties are mutually + * exclusive; you must specify one but not both. */ autoUser?: AutoUserSpecification; } /** - * @interface - * An interface representing StartTask. - * @summary A task which is run when a compute node joins a pool in the Azure - * Batch service, or when the compute node is rebooted or reimaged. - * + * An interface representing TaskContainerSettings. + * @summary The container settings for a task. + */ +export interface TaskContainerSettings { + /** + * Additional options to the container create command. These additional options are supplied as + * arguments to the "docker create" command, in addition to those controlled by the Batch + * Service. + */ + containerRunOptions?: string; + /** + * The image to use to create the container in which the task will run. This is the full image + * reference, as would be specified to "docker pull". If no tag is provided as part of the image + * name, the tag ":latest" is used as a default. + */ + imageName: string; + /** + * The private registry which contains the container image. This setting can be omitted if was + * already provided at pool creation. + */ + registry?: ContainerRegistry; + /** + * A flag to indicate where the container task working directory is. The default is + * 'taskWorkingDirectory'. Possible values include: 'TaskWorkingDirectory', + * 'ContainerImageDefault' + */ + workingDirectory?: ContainerWorkingDirectory; +} + +/** + * In some cases the start task may be re-run even though the node was not rebooted. Due to this, + * start tasks should be idempotent and exit gracefully if the setup they're performing has already + * been done. Special care should be taken to avoid start tasks which create breakaway process or + * install/launch services from the start task working directory, as this will block Batch from + * being able to re-run the start task. + * @summary A task which is run when a compute node joins a pool in the Azure Batch service, or + * when the compute node is rebooted or reimaged. + */ +export interface StartTask { + /** + * The command line of the start 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. Required if any other + * properties of the startTask are specified. + */ + commandLine?: string; + /** + * A list of files that the Batch service will download to the compute node before running the + * command line. + */ + resourceFiles?: ResourceFile[]; + /** + * A list of environment variable settings for the start task. + */ + environmentSettings?: EnvironmentSetting[]; + /** + * The user identity under which the start task runs. If omitted, the task runs as a + * non-administrative user unique to the task. + */ + userIdentity?: UserIdentity; + /** + * The maximum number of times the task may be retried. The Batch service retries a task if its + * exit code is nonzero. Note that this value specifically controls the number of retries. The + * Batch service will try the task once, and may then retry up to this limit. For example, if the + * maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). + * If the maximum retry count is 0, the Batch service does not retry the task. If the maximum + * retry count is -1, the Batch service retries the task without limit. + */ + maxTaskRetryCount?: number; + /** + * Whether the Batch service should wait for the start task to complete successfully (that is, to + * exit with exit code 0) before scheduling any tasks on the compute node. If true and the start + * task fails on a compute node, the Batch service retries the start task up to its maximum retry + * count (maxTaskRetryCount). If the task has still not completed successfully after all retries, + * then the Batch service marks the compute node unusable, and will not schedule tasks to it. + * This condition can be detected via the node state and scheduling error detail. If false, the + * Batch service will not wait for the start task to complete. In this case, other tasks can + * start executing on the compute node while the start task is still running; and even if the + * start task fails, new tasks will continue to be scheduled on the node. The default is true. + */ + waitForSuccess?: boolean; + /** + * The settings for the container under which the start 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. + */ + containerSettings?: TaskContainerSettings; +} + +/** + * An interface representing CertificateReference. + * @summary A reference to a certificate to be installed on compute nodes in a pool. This must + * exist inside the same account as the pool. + */ +export interface CertificateReference { + /** + * The fully qualified ID of the certificate to install on the pool. This must be inside the same + * batch account as the pool. + */ + id: string; + /** + * 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 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. + * Possible values include: 'CurrentUser', 'LocalMachine' + */ + storeLocation?: CertificateStoreLocation; + /** + * 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 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. + */ + storeName?: string; + /** + * Which user accounts on the compute node should have access to the private data of the + * certificate. + */ + visibility?: CertificateVisibility[]; +} + +/** + * An interface representing ApplicationPackageReference. + * @summary Link to an application package inside the batch account + */ +export interface ApplicationPackageReference { + /** + * The ID of the application package to install. This must be inside the same batch account as + * the pool. This can either be a reference to a specific version or the default version if one + * exists. + */ + id: string; + /** + * The version of the application to deploy. If omitted, the default version is deployed. If this + * is omitted, and no default version is specified for this application, the request fails with + * the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, + * the HTTP status code is 409. + */ + version?: string; +} + +/** + * An interface representing ResizeError. + * @summary An error that occurred when resizing a pool. + */ +export interface ResizeError { + /** + * An identifier for the error. Codes are invariant and are intended to be consumed + * programmatically. + */ + code: string; + /** + * A message describing the error, intended to be suitable for display in a user interface. + */ + message: string; + /** + * Additional details about the error. + */ + details?: ResizeError[]; +} + +/** + * Describes either the current operation (if the pool AllocationState is Resizing) or the + * previously completed operation (if the AllocationState is Steady). + * @summary Details about the current or last completed resize operation. + */ +export interface ResizeOperationStatus { + /** + * The desired number of dedicated compute nodes in the pool. + */ + targetDedicatedNodes?: number; + /** + * The desired number of low-priority compute nodes in the pool. + */ + targetLowPriorityNodes?: number; + /** + * The timeout for allocation of compute nodes to the pool or removal of compute nodes from the + * pool. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value + * less than 5 minutes, the Batch service returns an error; if you are calling the REST API + * directly, the HTTP status code is 400 (Bad Request). + */ + resizeTimeout?: string; + /** + * Determines what to do with a node and its running task(s) if the pool size is decreasing. The + * default value is requeue. Possible values include: 'Requeue', 'Terminate', 'TaskCompletion', + * 'RetainedData' + */ + nodeDeallocationOption?: ComputeNodeDeallocationOption; + /** + * The time when this resize operation was started. + */ + startTime?: Date; + /** + * Details of any errors encountered while performing the last resize on the pool. This property + * is set only if an error occurred during the last pool resize, and only when the pool + * allocationState is Steady. + */ + errors?: ResizeError[]; +} + +/** + * An interface representing AzureBlobFileSystemConfiguration. + * @summary Information used to connect to an Azure Storage Container using Blobfuse. */ -export interface StartTask { +export interface AzureBlobFileSystemConfiguration { /** - * @member {string} [commandLine] The command line of the start 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. Required if any other properties of the - * startTask are specified. + * The Azure Storage Account name. */ - commandLine?: string; + accountName: string; /** - * @member {ResourceFile[]} [resourceFiles] A list of files that the Batch - * service will download to the compute node before running the command line. + * The Azure Blob Storage Container name. */ - resourceFiles?: ResourceFile[]; + containerName: string; /** - * @member {EnvironmentSetting[]} [environmentSettings] A list of environment - * variable settings for the start task. + * The Azure Storage Account key. This property is mutually exclusive with sasKey and one must be + * specified. */ - environmentSettings?: EnvironmentSetting[]; + accountKey?: string; /** - * @member {UserIdentity} [userIdentity] The user identity under which the - * start task runs. If omitted, the task runs as a non-administrative user - * unique to the task. + * The Azure Storage SAS token. This property is mutually exclusive with accountKey and one must + * be specified. */ - userIdentity?: UserIdentity; + sasKey?: string; /** - * @member {number} [maxTaskRetryCount] The maximum number of times the task - * may be retried. The Batch service retries a task if its exit code is - * nonzero. Note that this value specifically controls the number of retries. - * The Batch service will try the task once, and may then retry up to this - * limit. For example, if the maximum retry count is 3, Batch tries the task - * up to 4 times (one initial try and 3 retries). If the maximum retry count - * is 0, the Batch service does not retry the task. If the maximum retry - * count is -1, the Batch service retries the task without limit. + * Additional command line options to pass to the mount command. These are 'net use' options in + * Windows and 'mount' options in Linux. */ - maxTaskRetryCount?: number; + blobfuseOptions?: string; /** - * @member {boolean} [waitForSuccess] Whether the Batch service should wait - * for the start task to complete successfully (that is, to exit with exit - * code 0) before scheduling any tasks on the compute node. If true and the - * start task fails on a compute node, the Batch service retries the start - * task up to its maximum retry count (maxTaskRetryCount). If the task has - * still not completed successfully after all retries, then the Batch service - * marks the compute node unusable, and will not schedule tasks to it. This - * condition can be detected via the node state and scheduling error detail. - * If false, the Batch service will not wait for the start task to complete. - * In this case, other tasks can start executing on the compute node while - * the start task is still running; and even if the start task fails, new - * tasks will continue to be scheduled on the node. The default is false. + * 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. */ - waitForSuccess?: boolean; + relativeMountPath: string; } /** - * @interface - * An interface representing CertificateReference. - * @summary A reference to a certificate to be installed on compute nodes in a - * pool. This must exist inside the same account as the pool. - * + * An interface representing NFSMountConfiguration. + * @summary Information used to connect to an NFS file system. */ -export interface CertificateReference { - /** - * @member {string} id The fully qualified ID of the certificate to install - * on the pool. This must be inside the same batch account as the pool. - */ - id: string; +export interface NFSMountConfiguration { /** - * @member {CertificateStoreLocation} [storeLocation] 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 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. - * Possible values include: 'CurrentUser', 'LocalMachine' + * The URI of the file system to mount. */ - storeLocation?: CertificateStoreLocation; + source: string; /** - * @member {string} [storeName] 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 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. + * 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. */ - storeName?: string; + relativeMountPath: string; /** - * @member {CertificateVisibility[]} [visibility] Which user accounts on the - * compute node should have access to the private data of the certificate. - * Values are: - * - * starttask - The user account under which the start task is run. - * task - The accounts under which job tasks are run. - * remoteuser - The accounts under which users remotely access the node. - * - * You can specify more than one visibility in this collection. The default - * is all accounts. + * Additional command line options to pass to the mount command. These are 'net use' options in + * Windows and 'mount' options in Linux. */ - visibility?: CertificateVisibility[]; + mountOptions?: string; } /** - * @interface - * An interface representing ApplicationPackageReference. - * @summary Link to an application package inside the batch account - * + * An interface representing CIFSMountConfiguration. + * @summary Information used to connect to a CIFS file system. */ -export interface ApplicationPackageReference { +export interface CIFSMountConfiguration { /** - * @member {string} id The ID of the application package to install. This - * must be inside the same batch account as the pool. This can either be a - * reference to a specific version or the default version if one exists. + * The user to use for authentication against the CIFS file system. */ - id: string; + username: string; /** - * @member {string} [version] The version of the application to deploy. If - * omitted, the default version is deployed. If this is omitted, and no - * default version is specified for this application, the request fails with - * the error code InvalidApplicationPackageReferences. If you are calling the - * REST API directly, the HTTP status code is 409. + * The URI of the file system to mount. */ - version?: string; -} - -/** - * @interface - * An interface representing ResizeError. - * @summary An error that occurred when resizing a pool. - * - */ -export interface ResizeError { + source: string; /** - * @member {string} code An identifier for the error. Codes are invariant and - * are intended to be consumed programmatically. + * 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. */ - code: string; + relativeMountPath: string; /** - * @member {string} message A message describing the error, intended to be - * suitable for display in a user interface. + * Additional command line options to pass to the mount command. These are 'net use' options in + * Windows and 'mount' options in Linux. */ - message: string; + mountOptions?: string; /** - * @member {ResizeError[]} [details] Additional details about the error. + * The password to use for authentication against the CIFS file system. */ - details?: ResizeError[]; + password: string; } /** - * @interface - * An interface representing ResizeOperationStatus. - * @summary Details about the current or last completed resize operation. - * - * Describes either the current operation (if the pool AllocationState is - * Resizing) or the previously completed operation (if the AllocationState is - * Steady). - * + * An interface representing AzureFileShareConfiguration. + * @summary Information used to connect to an Azure Fileshare. */ -export interface ResizeOperationStatus { +export interface AzureFileShareConfiguration { /** - * @member {number} [targetDedicatedNodes] The desired number of dedicated - * compute nodes in the pool. + * The Azure Storage account name. */ - targetDedicatedNodes?: number; + accountName: string; /** - * @member {number} [targetLowPriorityNodes] The desired number of - * low-priority compute nodes in the pool. + * The Azure Files URL. This is of the form 'https://{account}.file.core.windows.net/'. */ - targetLowPriorityNodes?: number; + azureFileUrl: string; /** - * @member {string} [resizeTimeout] The timeout for allocation of compute - * nodes to the pool or removal of compute nodes from the pool. The default - * value is 15 minutes. The minimum value is 5 minutes. If you specify a - * value less than 5 minutes, the Batch service returns an error; if you are - * calling the REST API directly, the HTTP status code is 400 (Bad Request). + * The Azure Storage account key. */ - resizeTimeout?: string; + accountKey: string; /** - * @member {ComputeNodeDeallocationOption} [nodeDeallocationOption] - * Determines what to do with a node and its running task(s) if the pool size - * is decreasing. The default value is requeue. Possible values include: - * 'Requeue', 'Terminate', 'TaskCompletion', 'RetainedData' + * 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. */ - nodeDeallocationOption?: ComputeNodeDeallocationOption; + relativeMountPath: string; /** - * @member {Date} [startTime] The time when this resize operation was - * started. + * Additional command line options to pass to the mount command. These are 'net use' options in + * Windows and 'mount' options in Linux. */ - startTime?: Date; + mountOptions?: string; +} + +/** + * An interface representing MountConfiguration. + * @summary The file system to mount on each node. + */ +export interface MountConfiguration { /** - * @member {ResizeError[]} [errors] Details of any errors encountered while - * performing the last resize on the pool. This property is set only if an - * error occurred during the last pool resize, and only when the pool - * allocationState is Steady. + * The Azure Storage Container to mount using blob FUSE on each node. This property is mutually + * exclusive with all other properties. */ - errors?: ResizeError[]; + azureBlobFileSystemConfiguration?: AzureBlobFileSystemConfiguration; + /** + * The NFS file system to mount on each node. This property is mutually exclusive with all other + * properties. + */ + nfsMountConfiguration?: NFSMountConfiguration; + /** + * The CIFS/SMB file system to mount on each node. This property is mutually exclusive with all + * other properties. + */ + cifsMountConfiguration?: CIFSMountConfiguration; + /** + * The Azure File Share to mount on each node. This property is mutually exclusive with all other + * properties. + */ + azureFileShareConfiguration?: AzureFileShareConfiguration; } /** - * @interface - * An interface representing Pool. * Contains information about a pool. - * - * @extends ProxyResource */ export interface Pool extends ProxyResource { /** - * @member {string} [displayName] 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. + * 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. */ displayName?: string; /** - * @member {Date} [lastModified] The last modified time of the pool. This is - * the last time at which the pool level data, such as the - * targetDedicatedNodes or autoScaleSettings, changed. It does not factor in - * node-level changes such as a compute node changing state. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The last modified time of the pool. This is the last time at which the pool level data, such + * as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level + * changes such as a compute node changing state. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModified?: Date; /** - * @member {Date} [creationTime] The creation time of the pool. **NOTE: This - * property will not be serialized. It can only be populated by the server.** + * The creation time of the pool. **NOTE: This property will not be serialized. It can only be + * populated by the server.** */ readonly creationTime?: Date; /** - * @member {PoolProvisioningState} [provisioningState] The current state of - * the pool. Values are: - * - * Succeeded - The pool is available to run tasks subject to the availability - * of compute nodes. - * Deleting - The user has requested that the pool be deleted, but the delete - * operation has not yet completed. Possible values include: 'Succeeded', - * 'Deleting' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The current state of the pool. Possible values include: 'Succeeded', 'Deleting' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: PoolProvisioningState; /** - * @member {Date} [provisioningStateTransitionTime] The time at which the - * pool entered its current state. **NOTE: This property will not be + * The time at which the pool entered its current state. **NOTE: This property will not be * serialized. It can only be populated by the server.** */ readonly provisioningStateTransitionTime?: Date; /** - * @member {AllocationState} [allocationState] Whether the pool is resizing. - * Values are: - * - * Steady - The pool is not resizing. There are no changes to the number of - * nodes in the pool in progress. A pool enters this state when it is created - * and when no operations are being performed on the pool to change the - * number of dedicated nodes. - * Resizing - The pool is resizing; that is, compute nodes are being added to - * or removed from the pool. - * Stopping - The pool was resizing, but the user has requested that the - * resize be stopped, but the stop request has not yet been completed. - * Possible values include: 'Steady', 'Resizing', 'Stopping' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Whether the pool is resizing. Possible values include: 'Steady', 'Resizing', 'Stopping' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly allocationState?: AllocationState; /** - * @member {Date} [allocationStateTransitionTime] The time at which the pool - * entered its current allocation state. **NOTE: This property will not be - * serialized. It can only be populated by the server.** + * The time at which the pool entered its current allocation state. **NOTE: This property will + * not be serialized. It can only be populated by the server.** */ readonly allocationStateTransitionTime?: Date; /** - * @member {string} [vmSize] 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 for Cloud Services pools (pools created with + * 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 for Cloud Services pools (pools created with * cloudServiceConfiguration), see Sizes for Cloud Services - * (http://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). - * Batch supports all Cloud Services VM sizes except ExtraSmall. For - * information about available VM sizes for pools using images from the - * Virtual Machines Marketplace (pools created with + * (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch + * supports all Cloud Services VM sizes except ExtraSmall. For information about available VM + * sizes for pools using images from the Virtual Machines Marketplace (pools created with * virtualMachineConfiguration) 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). + * (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). */ vmSize?: string; /** - * @member {DeploymentConfiguration} [deploymentConfiguration] This property - * describes how the pool nodes will be deployed - using Cloud Services or - * Virtual Machines. Using CloudServiceConfiguration specifies that the nodes - * should be creating using Azure Cloud Services (PaaS), while - * VirtualMachineConfiguration uses Azure Virtual Machines (IaaS). + * This property describes how the pool nodes will be deployed - using Cloud Services or Virtual + * Machines. Using CloudServiceConfiguration specifies that the nodes should be creating using + * Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines + * (IaaS). */ deploymentConfiguration?: DeploymentConfiguration; /** - * @member {number} [currentDedicatedNodes] The number of compute nodes - * currently in the pool. **NOTE: This property will not be serialized. It - * can only be populated by the server.** + * The number of compute nodes currently in the pool. **NOTE: This property will not be + * serialized. It can only be populated by the server.** */ readonly currentDedicatedNodes?: number; /** - * @member {number} [currentLowPriorityNodes] The number of low priority - * compute nodes currently in the pool. **NOTE: This property will not be - * serialized. It can only be populated by the server.** + * The number of low priority compute nodes currently in the pool. **NOTE: This property will not + * be serialized. It can only be populated by the server.** */ readonly currentLowPriorityNodes?: number; /** - * @member {ScaleSettings} [scaleSettings] Settings which configure the - * number of nodes in the pool. + * Settings which configure the number of nodes in the pool. */ scaleSettings?: ScaleSettings; /** - * @member {AutoScaleRun} [autoScaleRun] The results and errors from the last - * execution of the autoscale formula. This property is set only if the pool - * automatically scales, i.e. autoScaleSettings are used. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The results and errors from the last execution of the autoscale formula. This property is set + * only if the pool automatically scales, i.e. autoScaleSettings are used. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly autoScaleRun?: AutoScaleRun; /** - * @member {InterNodeCommunicationState} [interNodeCommunication] Whether the - * pool permits direct communication between nodes. This imposes restrictions - * on which nodes can be assigned to the pool. Enabling this value can reduce - * the chance of the requested number of nodes to be allocated in the pool. - * If not specified, this value defaults to 'Disabled'. Possible values - * include: 'Enabled', 'Disabled' + * Whether the pool permits direct communication between nodes. This imposes restrictions on + * which nodes can be assigned to the pool. Enabling this value can reduce the chance of the + * requested number of nodes to be allocated in the pool. If not specified, this value defaults + * to 'Disabled'. Possible values include: 'Enabled', 'Disabled' */ interNodeCommunication?: InterNodeCommunicationState; /** - * @member {NetworkConfiguration} [networkConfiguration] The network - * configuration for the pool. + * The network configuration for the pool. */ networkConfiguration?: NetworkConfiguration; /** - * @member {number} [maxTasksPerNode] The maximum number of tasks that can - * run concurrently on a single compute node in the pool. + * 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. */ - maxTasksPerNode?: number; + taskSlotsPerNode?: number; /** - * @member {TaskSchedulingPolicy} [taskSchedulingPolicy] How tasks are - * distributed across compute nodes in a pool. + * How tasks are distributed across compute nodes in a pool. If not specified, the default is + * spread. */ taskSchedulingPolicy?: TaskSchedulingPolicy; /** - * @member {UserAccount[]} [userAccounts] The list of user accounts to be - * created on each node in the pool. + * The list of user accounts to be created on each node in the pool. */ userAccounts?: UserAccount[]; /** - * @member {MetadataItem[]} [metadata] 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. + * 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. */ metadata?: MetadataItem[]; /** - * @member {StartTask} [startTask] A task specified to run on each compute - * node as it joins the pool. In an PATCH (update) operation, this property - * can be set to an empty object to remove the start task from the pool. + * A task specified to run on each compute node as it joins the pool. In an PATCH (update) + * operation, this property can be set to an empty object to remove the start task from the pool. */ startTask?: StartTask; /** - * @member {CertificateReference[]} [certificates] The list of certificates - * to be installed on each compute node in the pool. For Windows compute - * 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. + * The list of certificates to be installed on each compute node in the pool. For Windows compute + * 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. */ certificates?: CertificateReference[]; /** - * @member {ApplicationPackageReference[]} [applicationPackages] The list of - * application packages to be installed on each compute node in the pool. - * Changes to application packages affect all new compute nodes joining the - * pool, but do not affect compute nodes that are already in the pool until - * they are rebooted or reimaged. + * The list of application packages to be installed on each compute node in the pool. Changes to + * application package references affect all new compute 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 application package references on any given pool. */ applicationPackages?: ApplicationPackageReference[]; /** - * @member {string[]} [applicationLicenses] The list of application licenses - * the Batch service will make available on each compute node in the pool. - * The list of application licenses must be a subset of available Batch - * service application licenses. If a license is requested which is not - * supported, pool creation will fail. + * The list of application licenses the Batch service will make available on each compute node in + * the pool. The list of application licenses must be a subset of available Batch service + * application licenses. If a license is requested which is not supported, pool creation will + * fail. */ applicationLicenses?: string[]; /** - * @member {ResizeOperationStatus} [resizeOperationStatus] Contains details - * about the current or last completed resize operation. **NOTE: This - * property will not be serialized. It can only be populated by the server.** + * Contains details about the current or last completed resize operation. **NOTE: This property + * will not be serialized. It can only be populated by the server.** */ readonly resizeOperationStatus?: ResizeOperationStatus; + /** + * A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, + * CIFS/SMB, and Blobfuse. + */ + mountConfiguration?: MountConfiguration[]; } /** - * @interface * An interface representing OperationDisplay. * @summary The object that describes the operation. - * */ export interface OperationDisplay { /** - * @member {string} [provider] Friendly name of the resource provider. + * Friendly name of the resource provider. */ provider?: string; /** - * @member {string} [operation] The operation type. For example: read, write, - * delete, or listKeys/action + * The operation type. For example: read, write, delete, or listKeys/action */ operation?: string; /** - * @member {string} [resource] The resource type on which the operation is - * performed. + * The resource type on which the operation is performed. */ resource?: string; /** - * @member {string} [description] The friendly name of the operation. + * The friendly name of the operation. */ description?: string; } /** - * @interface * An interface representing Operation. * @summary A REST API operation - * */ export interface Operation { /** - * @member {string} [name] The operation name. This is of the format - * {provider}/{resource}/{operation} + * The operation name. This is of the format {provider}/{resource}/{operation} */ name?: string; /** - * @member {OperationDisplay} [display] The object that describes the - * operation. + * The object that describes the operation. */ display?: OperationDisplay; /** - * @member {string} [origin] The intended executor of the operation. + * The intended executor of the operation. */ origin?: string; /** - * @member {any} [properties] Properties of the operation. + * Properties of the operation. */ properties?: any; } /** - * @interface - * An interface representing CheckNameAvailabilityParameters. * Parameters for a check name availability request. - * */ export interface CheckNameAvailabilityParameters { /** - * @member {string} name The name to check for availability + * The name to check for availability */ name: string; } /** - * @interface - * An interface representing CheckNameAvailabilityResult. * The CheckNameAvailability operation response. - * */ export interface CheckNameAvailabilityResult { /** - * @member {boolean} [nameAvailable] Gets a boolean value that indicates - * whether the name is available for you to use. If true, the name is - * available. If false, the name has already been taken or invalid and cannot - * be used. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Gets a boolean value that indicates whether the name is available for you to use. If true, the + * name is available. If false, the name has already been taken or invalid and cannot be used. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly nameAvailable?: boolean; /** - * @member {NameAvailabilityReason} [reason] Gets the reason that a Batch - * account name could not be used. The Reason element is only returned if - * NameAvailable is false. Possible values include: 'Invalid', - * 'AlreadyExists' - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Gets the reason that a Batch account name could not be used. The Reason element is only + * returned if NameAvailable is false. Possible values include: 'Invalid', 'AlreadyExists' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly reason?: NameAvailabilityReason; /** - * @member {string} [message] Gets an error message explaining the Reason - * value in more detail. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Gets an error message explaining the Reason value in more detail. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly message?: string; } /** - * @interface - * An interface representing ApplicationCreateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase + */ +export interface ApplicationPackageListOptionalParams extends msRest.RequestOptionsBase { + /** + * The maximum number of items to return in the response. + */ + maxresults?: number; +} + +/** + * Optional Parameters. */ export interface ApplicationCreateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {ApplicationCreateParameters} [parameters] The parameters for the - * request. + * The parameters for the request. */ - parameters?: ApplicationCreateParameters; + parameters?: Application; } /** - * @interface - * An interface representing ApplicationListOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface ApplicationListOptionalParams extends msRest.RequestOptionsBase { /** - * @member {number} [maxresults] The maximum number of items to return in the - * response. + * The maximum number of items to return in the response. */ maxresults?: number; } /** - * @interface - * An interface representing CertificateListByBatchAccountOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface CertificateListByBatchAccountOptionalParams extends msRest.RequestOptionsBase { /** - * @member {number} [maxresults] The maximum number of items to return in the - * response. + * The maximum number of items to return in the response. */ maxresults?: number; /** - * @member {string} [select] Comma separated list of properties that should - * be returned. e.g. "properties/provisioningState". Only top level - * properties under properties/ are valid for selection. + * Comma separated list of properties that should be returned. e.g. + * "properties/provisioningState". Only top level properties under properties/ are valid for + * selection. */ select?: string; /** - * @member {string} [filter] OData filter expression. Valid properties for - * filtering are "properties/provisioningState", + * OData filter expression. Valid properties for filtering are "properties/provisioningState", * "properties/provisioningStateTransitionTime", "name". */ filter?: string; } /** - * @interface - * An interface representing CertificateCreateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface CertificateCreateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the - * certificate to update. A value of "*" can be used to apply the operation - * only if the certificate already exists. If omitted, this operation will + * The entity state (ETag) version of the certificate to update. A value of "*" can be used to + * apply the operation only if the certificate already exists. If omitted, this operation will * always be applied. */ ifMatch?: string; /** - * @member {string} [ifNoneMatch] Set to '*' to allow a new certificate to be - * created, but to prevent updating an existing certificate. Other values - * will be ignored. + * Set to '*' to allow a new certificate to be created, but to prevent updating an existing + * certificate. Other values will be ignored. */ ifNoneMatch?: string; } /** - * @interface - * An interface representing CertificateUpdateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface CertificateUpdateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the - * certificate to update. This value can be omitted or set to "*" to apply - * the operation unconditionally. + * The entity state (ETag) version of the certificate to update. This value can be omitted or set + * to "*" to apply the operation unconditionally. */ ifMatch?: string; } /** - * @interface - * An interface representing CertificateBeginCreateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface CertificateBeginCreateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the - * certificate to update. A value of "*" can be used to apply the operation - * only if the certificate already exists. If omitted, this operation will + * The entity state (ETag) version of the certificate to update. A value of "*" can be used to + * apply the operation only if the certificate already exists. If omitted, this operation will * always be applied. */ ifMatch?: string; /** - * @member {string} [ifNoneMatch] Set to '*' to allow a new certificate to be - * created, but to prevent updating an existing certificate. Other values - * will be ignored. + * Set to '*' to allow a new certificate to be created, but to prevent updating an existing + * certificate. Other values will be ignored. */ ifNoneMatch?: string; } /** - * @interface - * An interface representing PoolListByBatchAccountOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase + */ +export interface PrivateLinkResourceListByBatchAccountOptionalParams extends msRest.RequestOptionsBase { + /** + * The maximum number of items to return in the response. + */ + maxresults?: number; +} + +/** + * Optional Parameters. + */ +export interface PrivateEndpointConnectionListByBatchAccountOptionalParams extends msRest.RequestOptionsBase { + /** + * The maximum number of items to return in the response. + */ + maxresults?: number; +} + +/** + * Optional Parameters. + */ +export interface PrivateEndpointConnectionUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * The state (ETag) version of the private endpoint connection to update. This value can be + * omitted or set to "*" to apply the operation unconditionally. + */ + ifMatch?: string; +} + +/** + * Optional Parameters. + */ +export interface PrivateEndpointConnectionBeginUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * The state (ETag) version of the private endpoint connection to update. This value can be + * omitted or set to "*" to apply the operation unconditionally. + */ + ifMatch?: string; +} + +/** + * Optional Parameters. */ export interface PoolListByBatchAccountOptionalParams extends msRest.RequestOptionsBase { /** - * @member {number} [maxresults] The maximum number of items to return in the - * response. + * The maximum number of items to return in the response. */ maxresults?: number; /** - * @member {string} [select] Comma separated list of properties that should - * be returned. e.g. "properties/provisioningState". Only top level - * properties under properties/ are valid for selection. + * Comma separated list of properties that should be returned. e.g. + * "properties/provisioningState". Only top level properties under properties/ are valid for + * selection. */ select?: string; /** - * @member {string} [filter] OData filter expression. Valid properties for - * filtering are: + * OData filter expression. Valid properties for filtering are: * * name * properties/allocationState @@ -2031,326 +2111,270 @@ export interface PoolListByBatchAccountOptionalParams extends msRest.RequestOpti } /** - * @interface - * An interface representing PoolCreateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface PoolCreateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the pool to - * update. A value of "*" can be used to apply the operation only if the pool - * already exists. If omitted, this operation will always be applied. + * The entity state (ETag) version of the pool to update. A value of "*" can be used to apply the + * operation only if the pool already exists. If omitted, this operation will always be applied. */ ifMatch?: string; /** - * @member {string} [ifNoneMatch] Set to '*' to allow a new pool to be - * created, but to prevent updating an existing pool. Other values will be - * ignored. + * Set to '*' to allow a new pool to be created, but to prevent updating an existing pool. Other + * values will be ignored. */ ifNoneMatch?: string; } /** - * @interface - * An interface representing PoolUpdateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface PoolUpdateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the pool to - * update. This value can be omitted or set to "*" to apply the operation - * unconditionally. + * The entity state (ETag) version of the pool to update. This value can be omitted or set to "*" + * to apply the operation unconditionally. */ ifMatch?: string; } /** - * @interface - * An interface representing PoolBeginCreateOptionalParams. * Optional Parameters. - * - * @extends RequestOptionsBase */ export interface PoolBeginCreateOptionalParams extends msRest.RequestOptionsBase { /** - * @member {string} [ifMatch] The entity state (ETag) version of the pool to - * update. A value of "*" can be used to apply the operation only if the pool - * already exists. If omitted, this operation will always be applied. + * The entity state (ETag) version of the pool to update. A value of "*" can be used to apply the + * operation only if the pool already exists. If omitted, this operation will always be applied. */ ifMatch?: string; /** - * @member {string} [ifNoneMatch] Set to '*' to allow a new pool to be - * created, but to prevent updating an existing pool. Other values will be - * ignored. + * Set to '*' to allow a new pool to be created, but to prevent updating an existing pool. Other + * values will be ignored. */ ifNoneMatch?: string; } /** - * @interface * An interface representing BatchManagementClientOptions. - * @extends AzureServiceClientOptions */ export interface BatchManagementClientOptions extends AzureServiceClientOptions { - /** - * @member {string} [baseUri] - */ baseUri?: string; } /** - * @interface - * An interface representing BatchAccountCreateHeaders. * Defines headers for Create operation. - * */ export interface BatchAccountCreateHeaders { /** - * @member {string} [locationHeader] The URL of the resource used to check - * the status of the asynchronous operation. + * The URL of the resource used to check the status of the asynchronous operation. */ locationHeader: string; /** - * @member {number} [retryAfter] Suggested delay to check the status of the - * asynchronous operation. The value is an integer that specifies the delay - * in seconds. + * Suggested delay to check the status of the asynchronous operation. The value is an integer + * that specifies the delay in seconds. */ retryAfter: number; } /** - * @interface - * An interface representing BatchAccountDeleteHeaders. * Defines headers for Delete operation. - * */ export interface BatchAccountDeleteHeaders { /** - * @member {string} [location] The URL of the resource used to check the - * status of the asynchronous operation. + * The URL of the resource used to check the status of the asynchronous operation. */ location: string; /** - * @member {number} [retryAfter] Suggested delay to check the status of the - * asynchronous operation. The value is an integer that specifies the delay - * in seconds. + * Suggested delay to check the status of the asynchronous operation. The value is an integer + * that specifies the delay in seconds. */ retryAfter: number; } /** - * @interface - * An interface representing CertificateCreateHeaders. * Defines headers for Create operation. - * */ export interface CertificateCreateHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing CertificateUpdateHeaders. * Defines headers for Update operation. - * */ export interface CertificateUpdateHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing CertificateDeleteHeaders. * Defines headers for Delete operation. - * */ export interface CertificateDeleteHeaders { /** - * @member {string} [location] The URL of the resource used to check the - * status of the asynchronous operation. + * The URL of the resource used to check the status of the asynchronous operation. */ location: string; /** - * @member {number} [retryAfter] Suggested delay to check the status of the - * asynchronous operation. The value is an integer that represents the - * seconds. + * Suggested delay to check the status of the asynchronous operation. The value is an integer + * that represents the seconds. */ retryAfter: number; } /** - * @interface - * An interface representing CertificateGetHeaders. * Defines headers for Get operation. - * */ export interface CertificateGetHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing CertificateCancelDeletionHeaders. * Defines headers for CancelDeletion operation. - * */ export interface CertificateCancelDeletionHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing PoolCreateHeaders. + * Defines headers for Update operation. + */ +export interface PrivateEndpointConnectionUpdateHeaders { + /** + * The URL of the resource used to check the status of the asynchronous operation. + */ + location: string; + /** + * Suggested delay to check the status of the asynchronous operation. The value is an integer + * that represents the seconds. + */ + retryAfter: number; +} + +/** * Defines headers for Create operation. - * */ export interface PoolCreateHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing PoolUpdateHeaders. * Defines headers for Update operation. - * */ export interface PoolUpdateHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing PoolDeleteHeaders. * Defines headers for Delete operation. - * */ export interface PoolDeleteHeaders { /** - * @member {string} [location] The URL of the resource used to check the - * status of the asynchronous operation. + * The URL of the resource used to check the status of the asynchronous operation. */ location: string; /** - * @member {number} [retryAfter] Suggested delay to check the status of the - * asynchronous operation. The value is an integer that represents the - * seconds. + * Suggested delay to check the status of the asynchronous operation. The value is an integer + * that represents the seconds. */ retryAfter: number; } /** - * @interface - * An interface representing PoolGetHeaders. * Defines headers for Get operation. - * */ export interface PoolGetHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing PoolDisableAutoScaleHeaders. * Defines headers for DisableAutoScale operation. - * */ export interface PoolDisableAutoScaleHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } /** - * @interface - * An interface representing PoolStopResizeHeaders. * Defines headers for StopResize operation. - * */ export interface PoolStopResizeHeaders { /** - * @member {string} [eTag] The ETag HTTP response header. This is an opaque - * string. You can use it to detect whether the resource has changed between - * requests. In particular, you can pass the ETag to one of the If-Match or - * If-None-Match headers. + * The ETag HTTP response header. This is an opaque string. You can use it to detect whether the + * resource has changed between requests. In particular, you can pass the ETag to one of the + * If-Match or If-None-Match headers. */ eTag: string; } - /** * @interface - * An interface representing the BatchAccountListResult. * Values returned by the List operation. - * * @extends Array */ export interface BatchAccountListResult extends Array { /** - * @member {string} [nextLink] The continuation token. + * The continuation token. + */ + nextLink?: string; +} + +/** + * @interface + * The result of performing list application packages. + * @extends Array + */ +export interface ListApplicationPackagesResult extends Array { + /** + * The URL to get the next set of results. */ nextLink?: string; } /** * @interface - * An interface representing the ListApplicationsResult. * The result of performing list applications. - * * @extends Array */ export interface ListApplicationsResult extends Array { /** - * @member {string} [nextLink] The URL to get the next set of results. + * The URL to get the next set of results. */ nextLink?: string; } @@ -2358,46 +2382,70 @@ export interface ListApplicationsResult extends Array { /** * @interface * An interface representing the OperationListResult. - * @summary Result of the request to list REST API operations. It contains a - * list of operations and a URL nextLink to get the next set of results. - * + * @summary Result of the request to list REST API operations. It contains a list of operations and + * a URL nextLink to get the next set of results. * @extends Array */ export interface OperationListResult extends Array { - /** - * @member {string} [nextLink] - */ nextLink?: string; } /** * @interface - * An interface representing the ListCertificatesResult. * Values returned by the List operation. - * * @extends Array */ export interface ListCertificatesResult extends Array { /** - * @member {string} [nextLink] The continuation token. + * The continuation token. + */ + nextLink?: string; +} + +/** + * @interface + * Values returned by the List operation. + * @extends Array + */ +export interface ListPrivateLinkResourcesResult extends Array { + /** + * The continuation token. + */ + nextLink?: string; +} + +/** + * @interface + * Values returned by the List operation. + * @extends Array + */ +export interface ListPrivateEndpointConnectionsResult extends Array { + /** + * The continuation token. */ nextLink?: string; } /** * @interface - * An interface representing the ListPoolsResult. * Values returned by the List operation. - * * @extends Array */ export interface ListPoolsResult extends Array { /** - * @member {string} [nextLink] The continuation token. + * The continuation token. */ nextLink?: string; } +/** + * Defines values for KeySource. + * Possible values include: 'Microsoft.Batch', 'Microsoft.KeyVault' + * @readonly + * @enum {string} + */ +export type KeySource = 'Microsoft.Batch' | 'Microsoft.KeyVault'; + /** * Defines values for PoolAllocationMode. * Possible values include: 'BatchService', 'UserSubscription' @@ -2406,6 +2454,22 @@ export interface ListPoolsResult extends Array { */ export type PoolAllocationMode = 'BatchService' | 'UserSubscription'; +/** + * Defines values for PublicNetworkAccessType. + * Possible values include: 'Enabled', 'Disabled' + * @readonly + * @enum {string} + */ +export type PublicNetworkAccessType = 'Enabled' | 'Disabled'; + +/** + * Defines values for ResourceIdentityType. + * Possible values include: 'SystemAssigned', 'None' + * @readonly + * @enum {string} + */ +export type ResourceIdentityType = 'SystemAssigned' | 'None'; + /** * Defines values for ProvisioningState. * Possible values include: 'Invalid', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Cancelled' @@ -2414,6 +2478,22 @@ export type PoolAllocationMode = 'BatchService' | 'UserSubscription'; */ export type ProvisioningState = 'Invalid' | 'Creating' | 'Deleting' | 'Succeeded' | 'Failed' | 'Cancelled'; +/** + * Defines values for PrivateEndpointConnectionProvisioningState. + * Possible values include: 'Succeeded', 'Updating', 'Failed' + * @readonly + * @enum {string} + */ +export type PrivateEndpointConnectionProvisioningState = 'Succeeded' | 'Updating' | 'Failed'; + +/** + * Defines values for PrivateLinkServiceConnectionStatus. + * Possible values include: 'Approved', 'Pending', 'Rejected', 'Disconnected' + * @readonly + * @enum {string} + */ +export type PrivateLinkServiceConnectionStatus = 'Approved' | 'Pending' | 'Rejected' | 'Disconnected'; + /** * Defines values for AccountKeyType. * Possible values include: 'Primary', 'Secondary' @@ -2424,11 +2504,11 @@ export type AccountKeyType = 'Primary' | 'Secondary'; /** * Defines values for PackageState. - * Possible values include: 'Pending', 'Active', 'Unmapped' + * Possible values include: 'Pending', 'Active' * @readonly * @enum {string} */ -export type PackageState = 'Pending' | 'Active' | 'Unmapped'; +export type PackageState = 'Pending' | 'Active'; /** * Defines values for CertificateFormat. @@ -2478,6 +2558,14 @@ export type CachingType = 'None' | 'ReadOnly' | 'ReadWrite'; */ export type StorageAccountType = 'Standard_LRS' | 'Premium_LRS'; +/** + * Defines values for DiskEncryptionTarget. + * Possible values include: 'OsDisk', 'TemporaryDisk' + * @readonly + * @enum {string} + */ +export type DiskEncryptionTarget = 'OsDisk' | 'TemporaryDisk'; + /** * Defines values for ComputeNodeDeallocationOption. * Possible values include: 'Requeue', 'Terminate', 'TaskCompletion', 'RetainedData' @@ -2508,7 +2596,15 @@ export type InboundEndpointProtocol = 'TCP' | 'UDP'; * @readonly * @enum {string} */ -export type NetworkSecurityGroupRuleAccess = 'Allow' | 'Deny'; +export type NetworkSecurityGroupRuleAccess = 'Allow' | 'Deny'; + +/** + * Defines values for IPAddressProvisioningType. + * Possible values include: 'BatchManaged', 'UserManaged', 'NoPublicIPAddresses' + * @readonly + * @enum {string} + */ +export type IPAddressProvisioningType = 'BatchManaged' | 'UserManaged' | 'NoPublicIPAddresses'; /** * Defines values for ComputeNodeFillType. @@ -2526,6 +2622,14 @@ export type ComputeNodeFillType = 'Spread' | 'Pack'; */ export type ElevationLevel = 'NonAdmin' | 'Admin'; +/** + * Defines values for LoginMode. + * Possible values include: 'Batch', 'Interactive' + * @readonly + * @enum {string} + */ +export type LoginMode = 'Batch' | 'Interactive'; + /** * Defines values for AutoUserScope. * Possible values include: 'Task', 'Pool' @@ -2534,6 +2638,14 @@ export type ElevationLevel = 'NonAdmin' | 'Admin'; */ export type AutoUserScope = 'Task' | 'Pool'; +/** + * Defines values for ContainerWorkingDirectory. + * Possible values include: 'TaskWorkingDirectory', 'ContainerImageDefault' + * @readonly + * @enum {string} + */ +export type ContainerWorkingDirectory = 'TaskWorkingDirectory' | 'ContainerImageDefault'; + /** * Defines values for CertificateStoreLocation. * Possible values include: 'CurrentUser', 'LocalMachine' @@ -2570,10 +2682,12 @@ export type BatchAccountCreateResponse = BatchAccount & BatchAccountCreateHeader * The parsed HTTP response headers. */ parsedHeaders: BatchAccountCreateHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2593,6 +2707,7 @@ export type BatchAccountUpdateResponse = BatchAccount & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2627,6 +2742,7 @@ export type BatchAccountGetResponse = BatchAccount & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2646,6 +2762,7 @@ export type BatchAccountListResponse = BatchAccountListResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2665,6 +2782,7 @@ export type BatchAccountListByResourceGroupResponse = BatchAccountListResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2684,6 +2802,7 @@ export type BatchAccountRegenerateKeyResponse = BatchAccountKeys & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2703,6 +2822,7 @@ export type BatchAccountGetKeysResponse = BatchAccountKeys & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2722,6 +2842,7 @@ export type BatchAccountListNextResponse = BatchAccountListResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2741,6 +2862,7 @@ export type BatchAccountListByResourceGroupNextResponse = BatchAccountListResult * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2748,6 +2870,26 @@ export type BatchAccountListByResourceGroupNextResponse = BatchAccountListResult }; }; +/** + * Contains response data for the activate operation. + */ +export type ApplicationPackageActivateResponse = ApplicationPackage & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ApplicationPackage; + }; +}; + /** * Contains response data for the create operation. */ @@ -2760,6 +2902,7 @@ export type ApplicationPackageCreateResponse = ApplicationPackage & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2779,6 +2922,7 @@ export type ApplicationPackageGetResponse = ApplicationPackage & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2786,6 +2930,46 @@ export type ApplicationPackageGetResponse = ApplicationPackage & { }; }; +/** + * Contains response data for the list operation. + */ +export type ApplicationPackageListResponse = ListApplicationPackagesResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListApplicationPackagesResult; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type ApplicationPackageListNextResponse = ListApplicationPackagesResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListApplicationPackagesResult; + }; +}; + /** * Contains response data for the create operation. */ @@ -2798,6 +2982,7 @@ export type ApplicationCreateResponse = Application & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2817,6 +3002,27 @@ export type ApplicationGetResponse = Application & { * The response body as text (string format) */ bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Application; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type ApplicationUpdateResponse = Application & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2836,6 +3042,7 @@ export type ApplicationListResponse = ListApplicationsResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2855,6 +3062,7 @@ export type ApplicationListNextResponse = ListApplicationsResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2874,6 +3082,7 @@ export type LocationGetQuotasResponse = BatchLocationQuota & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2893,6 +3102,7 @@ export type LocationCheckNameAvailabilityResponse = CheckNameAvailabilityResult * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2912,6 +3122,7 @@ export type OperationsListResponse = OperationListResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2931,6 +3142,7 @@ export type OperationsListNextResponse = OperationListResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2950,6 +3162,7 @@ export type CertificateListByBatchAccountResponse = ListCertificatesResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2969,10 +3182,12 @@ export type CertificateCreateResponse = Certificate & CertificateCreateHeaders & * The parsed HTTP response headers. */ parsedHeaders: CertificateCreateHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -2992,10 +3207,12 @@ export type CertificateUpdateResponse = Certificate & CertificateUpdateHeaders & * The parsed HTTP response headers. */ parsedHeaders: CertificateUpdateHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3030,10 +3247,12 @@ export type CertificateGetResponse = Certificate & CertificateGetHeaders & { * The parsed HTTP response headers. */ parsedHeaders: CertificateGetHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3053,10 +3272,12 @@ export type CertificateCancelDeletionResponse = Certificate & CertificateCancelD * The parsed HTTP response headers. */ parsedHeaders: CertificateCancelDeletionHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3076,6 +3297,7 @@ export type CertificateListByBatchAccountNextResponse = ListCertificatesResult & * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3083,6 +3305,151 @@ export type CertificateListByBatchAccountNextResponse = ListCertificatesResult & }; }; +/** + * Contains response data for the listByBatchAccount operation. + */ +export type PrivateLinkResourceListByBatchAccountResponse = ListPrivateLinkResourcesResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListPrivateLinkResourcesResult; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type PrivateLinkResourceGetResponse = PrivateLinkResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: PrivateLinkResource; + }; +}; + +/** + * Contains response data for the listByBatchAccountNext operation. + */ +export type PrivateLinkResourceListByBatchAccountNextResponse = ListPrivateLinkResourcesResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListPrivateLinkResourcesResult; + }; +}; + +/** + * Contains response data for the listByBatchAccount operation. + */ +export type PrivateEndpointConnectionListByBatchAccountResponse = ListPrivateEndpointConnectionsResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListPrivateEndpointConnectionsResult; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type PrivateEndpointConnectionGetResponse = PrivateEndpointConnection & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: PrivateEndpointConnection; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type PrivateEndpointConnectionUpdateResponse = PrivateEndpointConnection & PrivateEndpointConnectionUpdateHeaders & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: PrivateEndpointConnectionUpdateHeaders; + + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: PrivateEndpointConnection; + }; +}; + +/** + * Contains response data for the listByBatchAccountNext operation. + */ +export type PrivateEndpointConnectionListByBatchAccountNextResponse = ListPrivateEndpointConnectionsResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListPrivateEndpointConnectionsResult; + }; +}; + /** * Contains response data for the listByBatchAccount operation. */ @@ -3095,6 +3462,7 @@ export type PoolListByBatchAccountResponse = ListPoolsResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3114,10 +3482,12 @@ export type PoolCreateResponse = Pool & PoolCreateHeaders & { * The parsed HTTP response headers. */ parsedHeaders: PoolCreateHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3137,10 +3507,12 @@ export type PoolUpdateResponse = Pool & PoolUpdateHeaders & { * The parsed HTTP response headers. */ parsedHeaders: PoolUpdateHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3175,10 +3547,12 @@ export type PoolGetResponse = Pool & PoolGetHeaders & { * The parsed HTTP response headers. */ parsedHeaders: PoolGetHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3198,10 +3572,12 @@ export type PoolDisableAutoScaleResponse = Pool & PoolDisableAutoScaleHeaders & * The parsed HTTP response headers. */ parsedHeaders: PoolDisableAutoScaleHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3221,10 +3597,12 @@ export type PoolStopResizeResponse = Pool & PoolStopResizeHeaders & { * The parsed HTTP response headers. */ parsedHeaders: PoolStopResizeHeaders; + /** * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ @@ -3244,6 +3622,7 @@ export type PoolListByBatchAccountNextResponse = ListPoolsResult & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ diff --git a/sdk/batch/arm-batch/src/models/locationMappers.ts b/sdk/batch/arm-batch/src/models/locationMappers.ts index 97dbbc6cc3db..ddbec3b47f94 100644 --- a/sdk/batch/arm-batch/src/models/locationMappers.ts +++ b/sdk/batch/arm-batch/src/models/locationMappers.ts @@ -1,17 +1,14 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { BatchLocationQuota, - CloudError, CheckNameAvailabilityParameters, - CheckNameAvailabilityResult + CheckNameAvailabilityResult, + CloudError } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/mappers.ts b/sdk/batch/arm-batch/src/models/mappers.ts index 7698eb57ba77..cc7d3296b2d5 100644 --- a/sdk/batch/arm-batch/src/models/mappers.ts +++ b/sdk/batch/arm-batch/src/models/mappers.ts @@ -1,11 +1,9 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js"; @@ -31,6 +29,49 @@ export const AutoStorageBaseProperties: msRest.CompositeMapper = { } }; +export const KeyVaultProperties: msRest.CompositeMapper = { + serializedName: "KeyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties", + modelProperties: { + keyIdentifier: { + serializedName: "keyIdentifier", + type: { + name: "String" + } + } + } + } +}; + +export const EncryptionProperties: msRest.CompositeMapper = { + serializedName: "EncryptionProperties", + type: { + name: "Composite", + className: "EncryptionProperties", + modelProperties: { + keySource: { + serializedName: "keySource", + type: { + name: "Enum", + allowedValues: [ + "Microsoft.Batch", + "Microsoft.KeyVault" + ] + } + }, + keyVaultProperties: { + serializedName: "keyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties" + } + } + } + } +}; + export const KeyVaultReference: msRest.CompositeMapper = { serializedName: "KeyVaultReference", type: { @@ -55,6 +96,41 @@ export const KeyVaultReference: msRest.CompositeMapper = { } }; +export const BatchAccountIdentity: msRest.CompositeMapper = { + serializedName: "BatchAccountIdentity", + type: { + name: "Composite", + className: "BatchAccountIdentity", + modelProperties: { + principalId: { + readOnly: true, + serializedName: "principalId", + type: { + name: "String" + } + }, + tenantId: { + readOnly: true, + serializedName: "tenantId", + type: { + name: "String" + } + }, + type: { + required: true, + serializedName: "type", + type: { + name: "Enum", + allowedValues: [ + "SystemAssigned", + "None" + ] + } + } + } + } +}; + export const BatchAccountCreateParameters: msRest.CompositeMapper = { serializedName: "BatchAccountCreateParameters", type: { @@ -102,6 +178,31 @@ export const BatchAccountCreateParameters: msRest.CompositeMapper = { name: "Composite", className: "KeyVaultReference" } + }, + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", + defaultValue: 'Enabled', + type: { + name: "Enum", + allowedValues: [ + "Enabled", + "Disabled" + ] + } + }, + encryption: { + serializedName: "properties.encryption", + type: { + name: "Composite", + className: "EncryptionProperties" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "BatchAccountIdentity" + } } } } @@ -125,6 +226,161 @@ export const AutoStorageProperties: msRest.CompositeMapper = { } }; +export const VirtualMachineFamilyCoreQuota: msRest.CompositeMapper = { + serializedName: "VirtualMachineFamilyCoreQuota", + type: { + name: "Composite", + className: "VirtualMachineFamilyCoreQuota", + modelProperties: { + name: { + nullable: false, + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + coreQuota: { + nullable: false, + readOnly: true, + serializedName: "coreQuota", + type: { + name: "Number" + } + } + } + } +}; + +export const PrivateEndpoint: msRest.CompositeMapper = { + serializedName: "PrivateEndpoint", + type: { + name: "Composite", + className: "PrivateEndpoint", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + } + } + } +}; + +export const PrivateLinkServiceConnectionState: msRest.CompositeMapper = { + serializedName: "PrivateLinkServiceConnectionState", + type: { + name: "Composite", + className: "PrivateLinkServiceConnectionState", + modelProperties: { + status: { + required: true, + serializedName: "status", + type: { + name: "Enum", + allowedValues: [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ] + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + actionRequired: { + readOnly: true, + serializedName: "actionRequired", + type: { + name: "String" + } + } + } + } +}; + +export const ProxyResource: msRest.CompositeMapper = { + serializedName: "ProxyResource", + type: { + name: "Composite", + className: "ProxyResource", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + etag: { + readOnly: true, + serializedName: "etag", + type: { + name: "String" + } + } + } + } +}; + +export const PrivateEndpointConnection: msRest.CompositeMapper = { + serializedName: "PrivateEndpointConnection", + type: { + name: "Composite", + className: "PrivateEndpointConnection", + modelProperties: { + ...ProxyResource.type.modelProperties, + provisioningState: { + nullable: false, + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "Enum", + allowedValues: [ + "Succeeded", + "Updating", + "Failed" + ] + } + }, + privateEndpoint: { + serializedName: "properties.privateEndpoint", + type: { + name: "Composite", + className: "PrivateEndpoint" + } + }, + privateLinkServiceConnectionState: { + serializedName: "properties.privateLinkServiceConnectionState", + type: { + name: "Composite", + className: "PrivateLinkServiceConnectionState" + } + } + } + } +}; + export const Resource: msRest.CompositeMapper = { serializedName: "Resource", type: { @@ -224,6 +480,32 @@ export const BatchAccount: msRest.CompositeMapper = { className: "KeyVaultReference" } }, + publicNetworkAccess: { + readOnly: true, + serializedName: "properties.publicNetworkAccess", + defaultValue: 'Enabled', + type: { + name: "Enum", + allowedValues: [ + "Enabled", + "Disabled" + ] + } + }, + privateEndpointConnections: { + nullable: true, + readOnly: true, + serializedName: "properties.privateEndpointConnections", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + }, autoStorage: { readOnly: true, serializedName: "properties.autoStorage", @@ -232,8 +514,16 @@ export const BatchAccount: msRest.CompositeMapper = { className: "AutoStorageProperties" } }, + encryption: { + readOnly: true, + serializedName: "properties.encryption", + type: { + name: "Composite", + className: "EncryptionProperties" + } + }, dedicatedCoreQuota: { - nullable: false, + nullable: true, readOnly: true, serializedName: "properties.dedicatedCoreQuota", type: { @@ -241,13 +531,35 @@ export const BatchAccount: msRest.CompositeMapper = { } }, lowPriorityCoreQuota: { - nullable: false, + nullable: true, readOnly: true, serializedName: "properties.lowPriorityCoreQuota", type: { name: "Number" } }, + dedicatedCoreQuotaPerVMFamily: { + nullable: true, + readOnly: true, + serializedName: "properties.dedicatedCoreQuotaPerVMFamily", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineFamilyCoreQuota" + } + } + } + }, + dedicatedCoreQuotaPerVMFamilyEnforced: { + nullable: false, + readOnly: true, + serializedName: "properties.dedicatedCoreQuotaPerVMFamilyEnforced", + type: { + name: "Boolean" + } + }, poolQuota: { nullable: false, readOnly: true, @@ -263,6 +575,13 @@ export const BatchAccount: msRest.CompositeMapper = { type: { name: "Number" } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "BatchAccountIdentity" + } } } } @@ -291,6 +610,20 @@ export const BatchAccountUpdateParameters: msRest.CompositeMapper = { name: "Composite", className: "AutoStorageBaseProperties" } + }, + encryption: { + serializedName: "properties.encryption", + type: { + name: "Composite", + className: "EncryptionProperties" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "BatchAccountIdentity" + } } } } @@ -365,20 +698,27 @@ export const ActivateApplicationPackageParameters: msRest.CompositeMapper = { } }; -export const ApplicationCreateParameters: msRest.CompositeMapper = { - serializedName: "ApplicationCreateParameters", +export const Application: msRest.CompositeMapper = { + serializedName: "Application", type: { name: "Composite", - className: "ApplicationCreateParameters", + className: "Application", modelProperties: { + ...ProxyResource.type.modelProperties, + displayName: { + serializedName: "properties.displayName", + type: { + name: "String" + } + }, allowUpdates: { - serializedName: "allowUpdates", + serializedName: "properties.allowUpdates", type: { name: "Boolean" } }, - displayName: { - serializedName: "displayName", + defaultVersion: { + serializedName: "properties.defaultVersion", type: { name: "String" } @@ -393,187 +733,61 @@ export const ApplicationPackage: msRest.CompositeMapper = { name: "Composite", className: "ApplicationPackage", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - version: { - readOnly: true, - serializedName: "version", - type: { - name: "String" - } - }, + ...ProxyResource.type.modelProperties, state: { readOnly: true, - serializedName: "state", + serializedName: "properties.state", type: { name: "Enum", allowedValues: [ "Pending", - "Active", - "Unmapped" + "Active" ] } }, format: { readOnly: true, - serializedName: "format", + serializedName: "properties.format", type: { name: "String" } }, storageUrl: { readOnly: true, - serializedName: "storageUrl", + serializedName: "properties.storageUrl", type: { name: "String" } }, storageUrlExpiry: { readOnly: true, - serializedName: "storageUrlExpiry", - type: { - name: "DateTime" - } - }, - lastActivationTime: { - readOnly: true, - serializedName: "lastActivationTime", + serializedName: "properties.storageUrlExpiry", type: { name: "DateTime" } - } - } - } -}; - -export const Application: msRest.CompositeMapper = { - serializedName: "Application", - type: { - name: "Composite", - className: "Application", - modelProperties: { - id: { - serializedName: "id", - type: { - name: "String" - } - }, - displayName: { - serializedName: "displayName", - type: { - name: "String" - } - }, - packages: { - serializedName: "packages", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ApplicationPackage" - } - } - } - }, - allowUpdates: { - serializedName: "allowUpdates", - type: { - name: "Boolean" - } - }, - defaultVersion: { - serializedName: "defaultVersion", - type: { - name: "String" - } - } - } - } -}; - -export const ApplicationUpdateParameters: msRest.CompositeMapper = { - serializedName: "ApplicationUpdateParameters", - type: { - name: "Composite", - className: "ApplicationUpdateParameters", - modelProperties: { - allowUpdates: { - serializedName: "allowUpdates", - type: { - name: "Boolean" - } - }, - defaultVersion: { - serializedName: "defaultVersion", - type: { - name: "String" - } - }, - displayName: { - serializedName: "displayName", - type: { - name: "String" - } - } - } - } -}; - -export const BatchLocationQuota: msRest.CompositeMapper = { - serializedName: "BatchLocationQuota", - type: { - name: "Composite", - className: "BatchLocationQuota", - modelProperties: { - accountQuota: { - readOnly: true, - serializedName: "accountQuota", - type: { - name: "Number" - } - } - } - } -}; - -export const ProxyResource: msRest.CompositeMapper = { - serializedName: "ProxyResource", - type: { - name: "Composite", - className: "ProxyResource", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } }, - type: { + lastActivationTime: { readOnly: true, - serializedName: "type", + serializedName: "properties.lastActivationTime", type: { - name: "String" + name: "DateTime" } - }, - etag: { + } + } + } +}; + +export const BatchLocationQuota: msRest.CompositeMapper = { + serializedName: "BatchLocationQuota", + type: { + name: "Composite", + className: "BatchLocationQuota", + modelProperties: { + accountQuota: { readOnly: true, - serializedName: "etag", + serializedName: "accountQuota", type: { - name: "String" + name: "Number" } } } @@ -791,6 +1005,48 @@ export const CertificateCreateOrUpdateParameters: msRest.CompositeMapper = { } }; +export const PrivateLinkResource: msRest.CompositeMapper = { + serializedName: "PrivateLinkResource", + type: { + name: "Composite", + className: "PrivateLinkResource", + modelProperties: { + ...ProxyResource.type.modelProperties, + groupId: { + readOnly: true, + serializedName: "properties.groupId", + type: { + name: "String" + } + }, + requiredMembers: { + readOnly: true, + serializedName: "properties.requiredMembers", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + requiredZoneNames: { + readOnly: true, + serializedName: "properties.requiredZoneNames", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + export const CloudServiceConfiguration: msRest.CompositeMapper = { serializedName: "CloudServiceConfiguration", type: { @@ -804,14 +1060,8 @@ export const CloudServiceConfiguration: msRest.CompositeMapper = { name: "String" } }, - targetOSVersion: { - serializedName: "targetOSVersion", - type: { - name: "String" - } - }, - currentOSVersion: { - serializedName: "currentOSVersion", + osVersion: { + serializedName: "osVersion", type: { name: "String" } @@ -860,27 +1110,6 @@ export const ImageReference: msRest.CompositeMapper = { } }; -export const OSDisk: msRest.CompositeMapper = { - serializedName: "OSDisk", - type: { - name: "Composite", - className: "OSDisk", - modelProperties: { - caching: { - serializedName: "caching", - type: { - name: "Enum", - allowedValues: [ - "None", - "ReadOnly", - "ReadWrite" - ] - } - } - } - } -}; - export const WindowsConfiguration: msRest.CompositeMapper = { serializedName: "WindowsConfiguration", type: { @@ -942,6 +1171,103 @@ export const DataDisk: msRest.CompositeMapper = { } }; +export const ContainerRegistry: msRest.CompositeMapper = { + serializedName: "ContainerRegistry", + type: { + name: "Composite", + className: "ContainerRegistry", + modelProperties: { + registryServer: { + serializedName: "registryServer", + type: { + name: "String" + } + }, + userName: { + required: true, + serializedName: "username", + type: { + name: "String" + } + }, + password: { + required: true, + serializedName: "password", + type: { + name: "String" + } + } + } + } +}; + +export const ContainerConfiguration: msRest.CompositeMapper = { + serializedName: "ContainerConfiguration", + type: { + name: "Composite", + className: "ContainerConfiguration", + modelProperties: { + type: { + required: true, + isConstant: true, + serializedName: "type", + defaultValue: 'DockerCompatible', + type: { + name: "String" + } + }, + containerImageNames: { + serializedName: "containerImageNames", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + containerRegistries: { + serializedName: "containerRegistries", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ContainerRegistry" + } + } + } + } + } + } +}; + +export const DiskEncryptionConfiguration: msRest.CompositeMapper = { + serializedName: "DiskEncryptionConfiguration", + type: { + name: "Composite", + className: "DiskEncryptionConfiguration", + modelProperties: { + targets: { + serializedName: "targets", + type: { + name: "Sequence", + element: { + type: { + name: "Enum", + allowedValues: [ + "OsDisk", + "TemporaryDisk" + ] + } + } + } + } + } + } +}; + export const VirtualMachineConfiguration: msRest.CompositeMapper = { serializedName: "VirtualMachineConfiguration", type: { @@ -956,13 +1282,6 @@ export const VirtualMachineConfiguration: msRest.CompositeMapper = { className: "ImageReference" } }, - osDisk: { - serializedName: "osDisk", - type: { - name: "Composite", - className: "OSDisk" - } - }, nodeAgentSkuId: { required: true, serializedName: "nodeAgentSkuId", @@ -994,6 +1313,20 @@ export const VirtualMachineConfiguration: msRest.CompositeMapper = { type: { name: "String" } + }, + containerConfiguration: { + serializedName: "containerConfiguration", + type: { + name: "Composite", + className: "ContainerConfiguration" + } + }, + diskEncryptionConfiguration: { + serializedName: "diskEncryptionConfiguration", + type: { + name: "Composite", + className: "DiskEncryptionConfiguration" + } } } } @@ -1206,6 +1539,17 @@ export const NetworkSecurityGroupRule: msRest.CompositeMapper = { type: { name: "String" } + }, + sourcePortRanges: { + serializedName: "sourcePortRanges", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } } } } @@ -1295,6 +1639,38 @@ export const PoolEndpointConfiguration: msRest.CompositeMapper = { } }; +export const PublicIPAddressConfiguration: msRest.CompositeMapper = { + serializedName: "PublicIPAddressConfiguration", + type: { + name: "Composite", + className: "PublicIPAddressConfiguration", + modelProperties: { + provision: { + serializedName: "provision", + type: { + name: "Enum", + allowedValues: [ + "BatchManaged", + "UserManaged", + "NoPublicIPAddresses" + ] + } + }, + ipAddressIds: { + serializedName: "ipAddressIds", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + export const NetworkConfiguration: msRest.CompositeMapper = { serializedName: "NetworkConfiguration", type: { @@ -1313,6 +1689,13 @@ export const NetworkConfiguration: msRest.CompositeMapper = { name: "Composite", className: "PoolEndpointConfiguration" } + }, + publicIPAddressConfiguration: { + serializedName: "publicIPAddressConfiguration", + type: { + name: "Composite", + className: "PublicIPAddressConfiguration" + } } } } @@ -1367,6 +1750,26 @@ export const LinuxUserConfiguration: msRest.CompositeMapper = { } }; +export const WindowsUserConfiguration: msRest.CompositeMapper = { + serializedName: "WindowsUserConfiguration", + type: { + name: "Composite", + className: "WindowsUserConfiguration", + modelProperties: { + loginMode: { + serializedName: "loginMode", + type: { + name: "Enum", + allowedValues: [ + "Batch", + "Interactive" + ] + } + } + } + } +}; + export const UserAccount: msRest.CompositeMapper = { serializedName: "UserAccount", type: { @@ -1403,6 +1806,13 @@ export const UserAccount: msRest.CompositeMapper = { name: "Composite", className: "LinuxUserConfiguration" } + }, + windowsUserConfiguration: { + serializedName: "windowsUserConfiguration", + type: { + name: "Composite", + className: "WindowsUserConfiguration" + } } } } @@ -1438,15 +1848,31 @@ export const ResourceFile: msRest.CompositeMapper = { name: "Composite", className: "ResourceFile", modelProperties: { - blobSource: { - required: true, - serializedName: "blobSource", + autoStorageContainerName: { + serializedName: "autoStorageContainerName", + type: { + name: "String" + } + }, + storageContainerUrl: { + serializedName: "storageContainerUrl", + type: { + name: "String" + } + }, + httpUrl: { + serializedName: "httpUrl", + type: { + name: "String" + } + }, + blobPrefix: { + serializedName: "blobPrefix", type: { name: "String" } }, filePath: { - required: true, serializedName: "filePath", type: { name: "String" @@ -1530,8 +1956,48 @@ export const UserIdentity: msRest.CompositeMapper = { autoUser: { serializedName: "autoUser", type: { - name: "Composite", - className: "AutoUserSpecification" + name: "Composite", + className: "AutoUserSpecification" + } + } + } + } +}; + +export const TaskContainerSettings: msRest.CompositeMapper = { + serializedName: "TaskContainerSettings", + type: { + name: "Composite", + className: "TaskContainerSettings", + modelProperties: { + containerRunOptions: { + serializedName: "containerRunOptions", + type: { + name: "String" + } + }, + imageName: { + required: true, + serializedName: "imageName", + type: { + name: "String" + } + }, + registry: { + serializedName: "registry", + type: { + name: "Composite", + className: "ContainerRegistry" + } + }, + workingDirectory: { + serializedName: "workingDirectory", + type: { + name: "Enum", + allowedValues: [ + "TaskWorkingDirectory", + "ContainerImageDefault" + ] } } } @@ -1592,6 +2058,13 @@ export const StartTask: msRest.CompositeMapper = { type: { name: "Boolean" } + }, + containerSettings: { + serializedName: "containerSettings", + type: { + name: "Composite", + className: "TaskContainerSettings" + } } } } @@ -1763,6 +2236,211 @@ export const ResizeOperationStatus: msRest.CompositeMapper = { } }; +export const AzureBlobFileSystemConfiguration: msRest.CompositeMapper = { + serializedName: "AzureBlobFileSystemConfiguration", + type: { + name: "Composite", + className: "AzureBlobFileSystemConfiguration", + modelProperties: { + accountName: { + required: true, + serializedName: "accountName", + type: { + name: "String" + } + }, + containerName: { + required: true, + serializedName: "containerName", + type: { + name: "String" + } + }, + accountKey: { + serializedName: "accountKey", + type: { + name: "String" + } + }, + sasKey: { + serializedName: "sasKey", + type: { + name: "String" + } + }, + blobfuseOptions: { + serializedName: "blobfuseOptions", + type: { + name: "String" + } + }, + relativeMountPath: { + required: true, + serializedName: "relativeMountPath", + type: { + name: "String" + } + } + } + } +}; + +export const NFSMountConfiguration: msRest.CompositeMapper = { + serializedName: "NFSMountConfiguration", + type: { + name: "Composite", + className: "NFSMountConfiguration", + modelProperties: { + source: { + required: true, + serializedName: "source", + type: { + name: "String" + } + }, + relativeMountPath: { + required: true, + serializedName: "relativeMountPath", + type: { + name: "String" + } + }, + mountOptions: { + serializedName: "mountOptions", + type: { + name: "String" + } + } + } + } +}; + +export const CIFSMountConfiguration: msRest.CompositeMapper = { + serializedName: "CIFSMountConfiguration", + type: { + name: "Composite", + className: "CIFSMountConfiguration", + modelProperties: { + username: { + required: true, + serializedName: "username", + type: { + name: "String" + } + }, + source: { + required: true, + serializedName: "source", + type: { + name: "String" + } + }, + relativeMountPath: { + required: true, + serializedName: "relativeMountPath", + type: { + name: "String" + } + }, + mountOptions: { + serializedName: "mountOptions", + type: { + name: "String" + } + }, + password: { + required: true, + serializedName: "password", + type: { + name: "String" + } + } + } + } +}; + +export const AzureFileShareConfiguration: msRest.CompositeMapper = { + serializedName: "AzureFileShareConfiguration", + type: { + name: "Composite", + className: "AzureFileShareConfiguration", + modelProperties: { + accountName: { + required: true, + serializedName: "accountName", + type: { + name: "String" + } + }, + azureFileUrl: { + required: true, + serializedName: "azureFileUrl", + type: { + name: "String" + } + }, + accountKey: { + required: true, + serializedName: "accountKey", + type: { + name: "String" + } + }, + relativeMountPath: { + required: true, + serializedName: "relativeMountPath", + type: { + name: "String" + } + }, + mountOptions: { + serializedName: "mountOptions", + type: { + name: "String" + } + } + } + } +}; + +export const MountConfiguration: msRest.CompositeMapper = { + serializedName: "MountConfiguration", + type: { + name: "Composite", + className: "MountConfiguration", + modelProperties: { + azureBlobFileSystemConfiguration: { + serializedName: "azureBlobFileSystemConfiguration", + type: { + name: "Composite", + className: "AzureBlobFileSystemConfiguration" + } + }, + nfsMountConfiguration: { + serializedName: "nfsMountConfiguration", + type: { + name: "Composite", + className: "NFSMountConfiguration" + } + }, + cifsMountConfiguration: { + serializedName: "cifsMountConfiguration", + type: { + name: "Composite", + className: "CIFSMountConfiguration" + } + }, + azureFileShareConfiguration: { + serializedName: "azureFileShareConfiguration", + type: { + name: "Composite", + className: "AzureFileShareConfiguration" + } + } + } + } +}; + export const Pool: msRest.CompositeMapper = { serializedName: "Pool", type: { @@ -1886,8 +2564,8 @@ export const Pool: msRest.CompositeMapper = { className: "NetworkConfiguration" } }, - maxTasksPerNode: { - serializedName: "properties.maxTasksPerNode", + taskSlotsPerNode: { + serializedName: "properties.taskSlotsPerNode", type: { name: "Number" } @@ -1972,6 +2650,18 @@ export const Pool: msRest.CompositeMapper = { name: "Composite", className: "ResizeOperationStatus" } + }, + mountConfiguration: { + serializedName: "properties.mountConfiguration", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MountConfiguration" + } + } + } } } } @@ -2237,6 +2927,28 @@ export const CertificateCancelDeletionHeaders: msRest.CompositeMapper = { } }; +export const PrivateEndpointConnectionUpdateHeaders: msRest.CompositeMapper = { + serializedName: "privateendpointconnection-update-headers", + type: { + name: "Composite", + className: "PrivateEndpointConnectionUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + }, + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number" + } + } + } + } +}; + export const PoolCreateHeaders: msRest.CompositeMapper = { serializedName: "pool-create-headers", type: { @@ -2367,6 +3079,34 @@ export const BatchAccountListResult: msRest.CompositeMapper = { } }; +export const ListApplicationPackagesResult: msRest.CompositeMapper = { + serializedName: "ListApplicationPackagesResult", + type: { + name: "Composite", + className: "ListApplicationPackagesResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ApplicationPackage" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const ListApplicationsResult: msRest.CompositeMapper = { serializedName: "ListApplicationsResult", type: { @@ -2451,6 +3191,62 @@ export const ListCertificatesResult: msRest.CompositeMapper = { } }; +export const ListPrivateLinkResourcesResult: msRest.CompositeMapper = { + serializedName: "ListPrivateLinkResourcesResult", + type: { + name: "Composite", + className: "ListPrivateLinkResourcesResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateLinkResource" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const ListPrivateEndpointConnectionsResult: msRest.CompositeMapper = { + serializedName: "ListPrivateEndpointConnectionsResult", + type: { + name: "Composite", + className: "ListPrivateEndpointConnectionsResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const ListPoolsResult: msRest.CompositeMapper = { serializedName: "ListPoolsResult", type: { diff --git a/sdk/batch/arm-batch/src/models/operationsMappers.ts b/sdk/batch/arm-batch/src/models/operationsMappers.ts index 2edcc577920e..689688180be7 100644 --- a/sdk/batch/arm-batch/src/models/operationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/operationsMappers.ts @@ -1,17 +1,14 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { - OperationListResult, + CloudError, Operation, OperationDisplay, - CloudError + OperationListResult } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/parameters.ts b/sdk/batch/arm-batch/src/models/parameters.ts index 6c72e7bf6552..519b835471af 100644 --- a/sdk/batch/arm-batch/src/models/parameters.ts +++ b/sdk/batch/arm-batch/src/models/parameters.ts @@ -20,7 +20,7 @@ export const acceptLanguage: msRest.OperationParameter = { } } }; -export const accountName: msRest.OperationURLParameter = { +export const accountName0: msRest.OperationURLParameter = { parameterPath: "accountName", mapper: { required: true, @@ -28,7 +28,22 @@ export const accountName: msRest.OperationURLParameter = { constraints: { MaxLength: 24, MinLength: 3, - Pattern: /^[-\w\._]+$/ + Pattern: /^[a-z0-9]+$/ + }, + type: { + name: "String" + } + } +}; +export const accountName1: msRest.OperationURLParameter = { + parameterPath: "accountName", + mapper: { + required: true, + serializedName: "accountName", + constraints: { + MaxLength: 24, + MinLength: 3, + Pattern: /^[a-zA-Z0-9]+$/ }, type: { name: "String" @@ -45,11 +60,16 @@ export const apiVersion: msRest.OperationQueryParameter = { } } }; -export const applicationId: msRest.OperationURLParameter = { - parameterPath: "applicationId", +export const applicationName: msRest.OperationURLParameter = { + parameterPath: "applicationName", mapper: { required: true, - serializedName: "applicationId", + serializedName: "applicationName", + constraints: { + MaxLength: 64, + MinLength: 1, + Pattern: /^[a-zA-Z0-9_-]+$/ + }, type: { name: "String" } @@ -154,6 +174,36 @@ export const poolName: msRest.OperationURLParameter = { } } }; +export const privateEndpointConnectionName: msRest.OperationURLParameter = { + parameterPath: "privateEndpointConnectionName", + mapper: { + required: true, + serializedName: "privateEndpointConnectionName", + constraints: { + MaxLength: 101, + MinLength: 1, + Pattern: /^[a-zA-Z0-9_-]+\.?[a-fA-F0-9-]*$/ + }, + type: { + name: "String" + } + } +}; +export const privateLinkResourceName: msRest.OperationURLParameter = { + parameterPath: "privateLinkResourceName", + mapper: { + required: true, + serializedName: "privateLinkResourceName", + constraints: { + MaxLength: 101, + MinLength: 1, + Pattern: /^[a-zA-Z0-9_-]+\.?[a-fA-F0-9-]*$/ + }, + type: { + name: "String" + } + } +}; export const resourceGroupName: msRest.OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { @@ -186,11 +236,16 @@ export const subscriptionId: msRest.OperationURLParameter = { } } }; -export const version: msRest.OperationURLParameter = { - parameterPath: "version", +export const versionName: msRest.OperationURLParameter = { + parameterPath: "versionName", mapper: { required: true, - serializedName: "version", + serializedName: "versionName", + constraints: { + MaxLength: 64, + MinLength: 1, + Pattern: /^[a-zA-Z0-9_-][a-zA-Z0-9_.-]*$/ + }, type: { name: "String" } diff --git a/sdk/batch/arm-batch/src/models/poolOperationsMappers.ts b/sdk/batch/arm-batch/src/models/poolOperationsMappers.ts index 08c626ddd96d..ea9ca581dd23 100644 --- a/sdk/batch/arm-batch/src/models/poolOperationsMappers.ts +++ b/sdk/batch/arm-batch/src/models/poolOperationsMappers.ts @@ -1,61 +1,78 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { - ListPoolsResult, - Pool, - ProxyResource, + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, BaseResource, - DeploymentConfiguration, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCreateOrUpdateParameters, + CertificateReference, + CIFSMountConfiguration, + CloudError, CloudServiceConfiguration, - VirtualMachineConfiguration, - ImageReference, - OSDisk, - WindowsConfiguration, + ContainerConfiguration, + ContainerRegistry, DataDisk, - ScaleSettings, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, FixedScaleSettings, - AutoScaleSettings, - AutoScaleRun, - AutoScaleRunError, - NetworkConfiguration, - PoolEndpointConfiguration, + ImageReference, InboundNatPool, - NetworkSecurityGroupRule, - TaskSchedulingPolicy, - UserAccount, + KeyVaultProperties, + KeyVaultReference, LinuxUserConfiguration, + ListPoolsResult, MetadataItem, - StartTask, - ResourceFile, - EnvironmentSetting, - UserIdentity, - AutoUserSpecification, - CertificateReference, - ApplicationPackageReference, - ResizeOperationStatus, - ResizeError, - CloudError, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, PoolCreateHeaders, - PoolUpdateHeaders, PoolDeleteHeaders, - PoolGetHeaders, PoolDisableAutoScaleHeaders, + PoolEndpointConfiguration, + PoolGetHeaders, PoolStopResizeHeaders, + PoolUpdateHeaders, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, Resource, - Certificate, - DeleteCertificateError, - CertificateCreateOrUpdateParameters, - BatchAccount, - KeyVaultReference, - AutoStorageProperties, - AutoStorageBaseProperties + ResourceFile, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, + UserIdentity, + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration } from "../models/mappers"; - diff --git a/sdk/batch/arm-batch/src/models/privateEndpointConnectionOperationsMappers.ts b/sdk/batch/arm-batch/src/models/privateEndpointConnectionOperationsMappers.ts new file mode 100644 index 000000000000..a5159c1d441e --- /dev/null +++ b/sdk/batch/arm-batch/src/models/privateEndpointConnectionOperationsMappers.ts @@ -0,0 +1,73 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, + BaseResource, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCreateOrUpdateParameters, + CertificateReference, + CIFSMountConfiguration, + CloudError, + CloudServiceConfiguration, + ContainerConfiguration, + ContainerRegistry, + DataDisk, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, + FixedScaleSettings, + ImageReference, + InboundNatPool, + KeyVaultProperties, + KeyVaultReference, + LinuxUserConfiguration, + ListPrivateEndpointConnectionsResult, + MetadataItem, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateEndpointConnectionUpdateHeaders, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, + ResourceFile, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, + UserIdentity, + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration +} from "../models/mappers"; diff --git a/sdk/batch/arm-batch/src/models/privateLinkResourceOperationsMappers.ts b/sdk/batch/arm-batch/src/models/privateLinkResourceOperationsMappers.ts new file mode 100644 index 000000000000..69b3e26378ec --- /dev/null +++ b/sdk/batch/arm-batch/src/models/privateLinkResourceOperationsMappers.ts @@ -0,0 +1,72 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + Application, + ApplicationPackage, + ApplicationPackageReference, + AutoScaleRun, + AutoScaleRunError, + AutoScaleSettings, + AutoStorageBaseProperties, + AutoStorageProperties, + AutoUserSpecification, + AzureBlobFileSystemConfiguration, + AzureFileShareConfiguration, + BaseResource, + BatchAccount, + BatchAccountIdentity, + Certificate, + CertificateCreateOrUpdateParameters, + CertificateReference, + CIFSMountConfiguration, + CloudError, + CloudServiceConfiguration, + ContainerConfiguration, + ContainerRegistry, + DataDisk, + DeleteCertificateError, + DeploymentConfiguration, + DiskEncryptionConfiguration, + EncryptionProperties, + EnvironmentSetting, + FixedScaleSettings, + ImageReference, + InboundNatPool, + KeyVaultProperties, + KeyVaultReference, + LinuxUserConfiguration, + ListPrivateLinkResourcesResult, + MetadataItem, + MountConfiguration, + NetworkConfiguration, + NetworkSecurityGroupRule, + NFSMountConfiguration, + Pool, + PoolEndpointConfiguration, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + PublicIPAddressConfiguration, + ResizeError, + ResizeOperationStatus, + Resource, + ResourceFile, + ScaleSettings, + StartTask, + TaskContainerSettings, + TaskSchedulingPolicy, + UserAccount, + UserIdentity, + VirtualMachineConfiguration, + VirtualMachineFamilyCoreQuota, + WindowsConfiguration, + WindowsUserConfiguration +} from "../models/mappers"; diff --git a/sdk/batch/arm-batch/src/operations/applicationOperations.ts b/sdk/batch/arm-batch/src/operations/applicationOperations.ts index 9a9a538c61a9..c96802c24e7e 100644 --- a/sdk/batch/arm-batch/src/operations/applicationOperations.ts +++ b/sdk/batch/arm-batch/src/operations/applicationOperations.ts @@ -30,32 +30,32 @@ export class ApplicationOperations { * Adds an application to the specified Batch account. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param [options] The optional parameters * @returns Promise */ - create(resourceGroupName: string, accountName: string, applicationId: string, options?: Models.ApplicationCreateOptionalParams): Promise; + create(resourceGroupName: string, accountName: string, applicationName: string, options?: Models.ApplicationCreateOptionalParams): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param callback The callback */ - create(resourceGroupName: string, accountName: string, applicationId: string, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, applicationName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param options The optional parameters * @param callback The callback */ - create(resourceGroupName: string, accountName: string, applicationId: string, options: Models.ApplicationCreateOptionalParams, callback: msRest.ServiceCallback): void; - create(resourceGroupName: string, accountName: string, applicationId: string, options?: Models.ApplicationCreateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + create(resourceGroupName: string, accountName: string, applicationName: string, options: Models.ApplicationCreateOptionalParams, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, applicationName: string, options?: Models.ApplicationCreateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, + applicationName, options }, createOperationSpec, @@ -66,32 +66,32 @@ export class ApplicationOperations { * Deletes an application. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param [options] The optional parameters * @returns Promise */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, options?: msRest.RequestOptionsBase): Promise; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param callback The callback */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param options The optional parameters * @param callback The callback */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, + applicationName, options }, deleteMethodOperationSpec, @@ -102,32 +102,32 @@ export class ApplicationOperations { * Gets information about the specified application. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param [options] The optional parameters * @returns Promise */ - get(resourceGroupName: string, accountName: string, applicationId: string, options?: msRest.RequestOptionsBase): Promise; + get(resourceGroupName: string, accountName: string, applicationName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param callback The callback */ - get(resourceGroupName: string, accountName: string, applicationId: string, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, applicationName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param options The optional parameters * @param callback The callback */ - get(resourceGroupName: string, accountName: string, applicationId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(resourceGroupName: string, accountName: string, applicationId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get(resourceGroupName: string, accountName: string, applicationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, applicationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, + applicationName, options }, getOperationSpec, @@ -138,40 +138,40 @@ export class ApplicationOperations { * Updates settings for the specified application. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param parameters The parameters for the request. * @param [options] The optional parameters - * @returns Promise + * @returns Promise */ - update(resourceGroupName: string, accountName: string, applicationId: string, parameters: Models.ApplicationUpdateParameters, options?: msRest.RequestOptionsBase): Promise; + update(resourceGroupName: string, accountName: string, applicationName: string, parameters: Models.Application, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param parameters The parameters for the request. * @param callback The callback */ - update(resourceGroupName: string, accountName: string, applicationId: string, parameters: Models.ApplicationUpdateParameters, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, applicationName: string, parameters: Models.Application, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. + * @param applicationName The name of the application. This must be unique within the account. * @param parameters The parameters for the request. * @param options The optional parameters * @param callback The callback */ - update(resourceGroupName: string, accountName: string, applicationId: string, parameters: Models.ApplicationUpdateParameters, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - update(resourceGroupName: string, accountName: string, applicationId: string, parameters: Models.ApplicationUpdateParameters, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update(resourceGroupName: string, accountName: string, applicationName: string, parameters: Models.Application, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, applicationName: string, parameters: Models.Application, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, + applicationName, parameters, options }, updateOperationSpec, - callback); + callback) as Promise; } /** @@ -239,11 +239,11 @@ export class ApplicationOperations { const serializer = new msRest.Serializer(Mappers); const createOperationSpec: msRest.OperationSpec = { httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, + Parameters.accountName1, + Parameters.applicationName, Parameters.subscriptionId ], queryParameters: [ @@ -257,10 +257,10 @@ const createOperationSpec: msRest.OperationSpec = { "options", "parameters" ], - mapper: Mappers.ApplicationCreateParameters + mapper: Mappers.Application }, responses: { - 201: { + 200: { bodyMapper: Mappers.Application }, default: { @@ -272,11 +272,11 @@ const createOperationSpec: msRest.OperationSpec = { const deleteMethodOperationSpec: msRest.OperationSpec = { httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, + Parameters.accountName1, + Parameters.applicationName, Parameters.subscriptionId ], queryParameters: [ @@ -286,6 +286,7 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { Parameters.acceptLanguage ], responses: { + 200: {}, 204: {}, default: { bodyMapper: Mappers.CloudError @@ -296,11 +297,11 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, + Parameters.accountName1, + Parameters.applicationName, Parameters.subscriptionId ], queryParameters: [ @@ -322,11 +323,11 @@ const getOperationSpec: msRest.OperationSpec = { const updateOperationSpec: msRest.OperationSpec = { httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, + Parameters.accountName1, + Parameters.applicationName, Parameters.subscriptionId ], queryParameters: [ @@ -338,12 +339,14 @@ const updateOperationSpec: msRest.OperationSpec = { requestBody: { parameterPath: "parameters", mapper: { - ...Mappers.ApplicationUpdateParameters, + ...Mappers.Application, required: true } }, responses: { - 204: {}, + 200: { + bodyMapper: Mappers.Application + }, default: { bodyMapper: Mappers.CloudError } @@ -356,7 +359,7 @@ const listOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ diff --git a/sdk/batch/arm-batch/src/operations/applicationPackageOperations.ts b/sdk/batch/arm-batch/src/operations/applicationPackageOperations.ts index 2e24b21cebcd..6ec032190c81 100644 --- a/sdk/batch/arm-batch/src/operations/applicationPackageOperations.ts +++ b/sdk/batch/arm-batch/src/operations/applicationPackageOperations.ts @@ -27,83 +27,87 @@ export class ApplicationPackageOperations { } /** - * Activates the specified application package. + * Activates the specified application package. This should be done after the `ApplicationPackage` + * was created and uploaded. This needs to be done before an `ApplicationPackage` can be used on + * Pools or Tasks. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to activate. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param format The format of the application package binary file. * @param [options] The optional parameters - * @returns Promise + * @returns Promise */ - activate(resourceGroupName: string, accountName: string, applicationId: string, version: string, format: string, options?: msRest.RequestOptionsBase): Promise; + activate(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, format: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to activate. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param format The format of the application package binary file. * @param callback The callback */ - activate(resourceGroupName: string, accountName: string, applicationId: string, version: string, format: string, callback: msRest.ServiceCallback): void; + activate(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, format: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to activate. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param format The format of the application package binary file. * @param options The optional parameters * @param callback The callback */ - activate(resourceGroupName: string, accountName: string, applicationId: string, version: string, format: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - activate(resourceGroupName: string, accountName: string, applicationId: string, version: string, format: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + activate(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, format: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + activate(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, format: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, - version, + applicationName, + versionName, format, options }, activateOperationSpec, - callback); + callback) as Promise; } /** - * Creates an application package record. + * Creates an application package record. The record contains the SAS where the package should be + * uploaded to. Once it is uploaded the `ApplicationPackage` needs to be activated using + * `ApplicationPackageActive` before it can be used. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param [options] The optional parameters * @returns Promise */ - create(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase): Promise; + create(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param callback The callback */ - create(resourceGroupName: string, accountName: string, applicationId: string, version: string, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param options The optional parameters * @param callback The callback */ - create(resourceGroupName: string, accountName: string, applicationId: string, version: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - create(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + create(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, - version, + applicationName, + versionName, options }, createOperationSpec, @@ -114,36 +118,36 @@ export class ApplicationPackageOperations { * Deletes an application package record and its associated binary file. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to delete. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param [options] The optional parameters * @returns Promise */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase): Promise; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to delete. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param callback The callback */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, version: string, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application to delete. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param options The optional parameters * @param callback The callback */ - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, version: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - deleteMethod(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, - version, + applicationName, + versionName, options }, deleteMethodOperationSpec, @@ -154,53 +158,117 @@ export class ApplicationPackageOperations { * Gets information about the specified application package. * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param [options] The optional parameters * @returns Promise */ - get(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase): Promise; + get(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param callback The callback */ - get(resourceGroupName: string, accountName: string, applicationId: string, version: string, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group that contains the Batch account. * @param accountName The name of the Batch account. - * @param applicationId The ID of the application. - * @param version The version of the application. + * @param applicationName The name of the application. This must be unique within the account. + * @param versionName The version of the application. * @param options The optional parameters * @param callback The callback */ - get(resourceGroupName: string, accountName: string, applicationId: string, version: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(resourceGroupName: string, accountName: string, applicationId: string, version: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, applicationName: string, versionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, - applicationId, - version, + applicationName, + versionName, options }, getOperationSpec, callback) as Promise; } + + /** + * Lists all of the application packages in the specified application. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param applicationName The name of the application. This must be unique within the account. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, applicationName: string, options?: Models.ApplicationPackageListOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param applicationName The name of the application. This must be unique within the account. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, applicationName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param applicationName The name of the application. This must be unique within the account. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, applicationName: string, options: Models.ApplicationPackageListOptionalParams, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, applicationName: string, options?: Models.ApplicationPackageListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + applicationName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Lists all of the application packages in the specified application. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } } // Operation Specifications const serializer = new msRest.Serializer(Mappers); const activateOperationSpec: msRest.OperationSpec = { httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}/versions/{version}/activate", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}/activate", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, - Parameters.version, + Parameters.accountName1, + Parameters.applicationName, + Parameters.versionName, Parameters.subscriptionId ], queryParameters: [ @@ -219,7 +287,9 @@ const activateOperationSpec: msRest.OperationSpec = { } }, responses: { - 204: {}, + 200: { + bodyMapper: Mappers.ApplicationPackage + }, default: { bodyMapper: Mappers.CloudError } @@ -229,12 +299,12 @@ const activateOperationSpec: msRest.OperationSpec = { const createOperationSpec: msRest.OperationSpec = { httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}/versions/{version}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, - Parameters.version, + Parameters.accountName1, + Parameters.applicationName, + Parameters.versionName, Parameters.subscriptionId ], queryParameters: [ @@ -243,8 +313,15 @@ const createOperationSpec: msRest.OperationSpec = { headerParameters: [ Parameters.acceptLanguage ], + requestBody: { + parameterPath: [ + "options", + "parameters" + ], + mapper: Mappers.ApplicationPackage + }, responses: { - 201: { + 200: { bodyMapper: Mappers.ApplicationPackage }, default: { @@ -256,12 +333,12 @@ const createOperationSpec: msRest.OperationSpec = { const deleteMethodOperationSpec: msRest.OperationSpec = { httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}/versions/{version}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, - Parameters.version, + Parameters.accountName1, + Parameters.applicationName, + Parameters.versionName, Parameters.subscriptionId ], queryParameters: [ @@ -271,6 +348,7 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { Parameters.acceptLanguage ], responses: { + 200: {}, 204: {}, default: { bodyMapper: Mappers.CloudError @@ -281,12 +359,12 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationId}/versions/{version}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, - Parameters.applicationId, - Parameters.version, + Parameters.accountName1, + Parameters.applicationName, + Parameters.versionName, Parameters.subscriptionId ], queryParameters: [ @@ -305,3 +383,51 @@ const getOperationSpec: msRest.OperationSpec = { }, serializer }; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName1, + Parameters.applicationName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.maxresults, + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListApplicationPackagesResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListApplicationPackagesResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/batch/arm-batch/src/operations/batchAccountOperations.ts b/sdk/batch/arm-batch/src/operations/batchAccountOperations.ts index ea91ec70b39e..318548de4ed5 100644 --- a/sdk/batch/arm-batch/src/operations/batchAccountOperations.ts +++ b/sdk/batch/arm-batch/src/operations/batchAccountOperations.ts @@ -392,7 +392,7 @@ const updateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -424,7 +424,7 @@ const getOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -496,7 +496,7 @@ const synchronizeAutoStorageKeysOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/syncAutoStorageKeys", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -519,7 +519,7 @@ const regenerateKeyOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/regenerateKeys", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -553,7 +553,7 @@ const getKeysOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/listKeys", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -578,7 +578,7 @@ const beginCreateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName0, Parameters.subscriptionId ], queryParameters: [ @@ -603,7 +603,8 @@ const beginCreateOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.BatchAccountCreateHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.BatchAccountCreateHeaders } }, serializer @@ -614,7 +615,7 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -634,7 +635,8 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.BatchAccountDeleteHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.BatchAccountDeleteHeaders } }, serializer diff --git a/sdk/batch/arm-batch/src/operations/certificateOperations.ts b/sdk/batch/arm-batch/src/operations/certificateOperations.ts index 5b9198143766..f8517e31854e 100644 --- a/sdk/batch/arm-batch/src/operations/certificateOperations.ts +++ b/sdk/batch/arm-batch/src/operations/certificateOperations.ts @@ -308,7 +308,7 @@ const listByBatchAccountOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -336,7 +336,7 @@ const updateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.certificateName, Parameters.subscriptionId ], @@ -360,7 +360,8 @@ const updateOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.CertificateUpdateHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.CertificateUpdateHeaders } }, serializer @@ -371,7 +372,7 @@ const getOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.certificateName, Parameters.subscriptionId ], @@ -387,7 +388,8 @@ const getOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.CertificateGetHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.CertificateGetHeaders } }, serializer @@ -398,7 +400,7 @@ const cancelDeletionOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}/cancelDelete", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.certificateName, Parameters.subscriptionId ], @@ -414,7 +416,8 @@ const cancelDeletionOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.CertificateCancelDeletionHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.CertificateCancelDeletionHeaders } }, serializer @@ -425,7 +428,7 @@ const beginCreateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.certificateName, Parameters.subscriptionId ], @@ -450,7 +453,8 @@ const beginCreateOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.CertificateCreateHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.CertificateCreateHeaders } }, serializer @@ -461,7 +465,7 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.certificateName, Parameters.subscriptionId ], @@ -482,7 +486,8 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.CertificateDeleteHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.CertificateDeleteHeaders } }, serializer diff --git a/sdk/batch/arm-batch/src/operations/index.ts b/sdk/batch/arm-batch/src/operations/index.ts index 9af241e11a01..f67d0e2219db 100644 --- a/sdk/batch/arm-batch/src/operations/index.ts +++ b/sdk/batch/arm-batch/src/operations/index.ts @@ -14,4 +14,6 @@ export * from "./applicationOperations"; export * from "./location"; export * from "./operations"; export * from "./certificateOperations"; +export * from "./privateLinkResourceOperations"; +export * from "./privateEndpointConnectionOperations"; export * from "./poolOperations"; diff --git a/sdk/batch/arm-batch/src/operations/poolOperations.ts b/sdk/batch/arm-batch/src/operations/poolOperations.ts index 02c071ab662a..14511c788af0 100644 --- a/sdk/batch/arm-batch/src/operations/poolOperations.ts +++ b/sdk/batch/arm-batch/src/operations/poolOperations.ts @@ -321,7 +321,7 @@ const listByBatchAccountOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.subscriptionId ], queryParameters: [ @@ -349,7 +349,7 @@ const updateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -373,7 +373,8 @@ const updateOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolUpdateHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolUpdateHeaders } }, serializer @@ -384,7 +385,7 @@ const getOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -400,7 +401,8 @@ const getOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolGetHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolGetHeaders } }, serializer @@ -411,7 +413,7 @@ const disableAutoScaleOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/disableAutoScale", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -427,7 +429,8 @@ const disableAutoScaleOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolDisableAutoScaleHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolDisableAutoScaleHeaders } }, serializer @@ -438,7 +441,7 @@ const stopResizeOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/stopResize", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -454,7 +457,8 @@ const stopResizeOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolStopResizeHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolStopResizeHeaders } }, serializer @@ -465,7 +469,7 @@ const beginCreateOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -490,7 +494,8 @@ const beginCreateOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolCreateHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolCreateHeaders } }, serializer @@ -501,7 +506,7 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}", urlParameters: [ Parameters.resourceGroupName, - Parameters.accountName, + Parameters.accountName1, Parameters.poolName, Parameters.subscriptionId ], @@ -522,7 +527,8 @@ const beginDeleteMethodOperationSpec: msRest.OperationSpec = { headersMapper: Mappers.PoolDeleteHeaders }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PoolDeleteHeaders } }, serializer diff --git a/sdk/batch/arm-batch/src/operations/privateEndpointConnectionOperations.ts b/sdk/batch/arm-batch/src/operations/privateEndpointConnectionOperations.ts new file mode 100644 index 000000000000..3b6040a9c642 --- /dev/null +++ b/sdk/batch/arm-batch/src/operations/privateEndpointConnectionOperations.ts @@ -0,0 +1,285 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/privateEndpointConnectionOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { BatchManagementClientContext } from "../batchManagementClientContext"; + +/** Class representing a PrivateEndpointConnectionOperations. */ +export class PrivateEndpointConnectionOperations { + private readonly client: BatchManagementClientContext; + + /** + * Create a PrivateEndpointConnectionOperations. + * @param {BatchManagementClientContext} client Reference to the service client. + */ + constructor(client: BatchManagementClientContext) { + this.client = client; + } + + /** + * Lists all of the private endpoint connections in the specified account. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param [options] The optional parameters + * @returns Promise + */ + listByBatchAccount(resourceGroupName: string, accountName: string, options?: Models.PrivateEndpointConnectionListByBatchAccountOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param callback The callback + */ + listByBatchAccount(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param options The optional parameters + * @param callback The callback + */ + listByBatchAccount(resourceGroupName: string, accountName: string, options: Models.PrivateEndpointConnectionListByBatchAccountOptionalParams, callback: msRest.ServiceCallback): void; + listByBatchAccount(resourceGroupName: string, accountName: string, options?: Models.PrivateEndpointConnectionListByBatchAccountOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listByBatchAccountOperationSpec, + callback) as Promise; + } + + /** + * Gets information about the specified private endpoint connection. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateEndpointConnectionName The private endpoint connection name. This must be unique + * within the account. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateEndpointConnectionName The private endpoint connection name. This must be unique + * within the account. + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateEndpointConnectionName The private endpoint connection name. This must be unique + * within the account. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + privateEndpointConnectionName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Updates the properties of an existing private endpoint connection. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateEndpointConnectionName The private endpoint connection name. This must be unique + * within the account. + * @param parameters PrivateEndpointConnection properties that should be updated. Properties that + * are supplied will be updated, any property not supplied will be unchanged. + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, parameters: Models.PrivateEndpointConnection, options?: Models.PrivateEndpointConnectionUpdateOptionalParams): Promise { + return this.beginUpdate(resourceGroupName,accountName,privateEndpointConnectionName,parameters,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + } + + /** + * Updates the properties of an existing private endpoint connection. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateEndpointConnectionName The private endpoint connection name. This must be unique + * within the account. + * @param parameters PrivateEndpointConnection properties that should be updated. Properties that + * are supplied will be updated, any property not supplied will be unchanged. + * @param [options] The optional parameters + * @returns Promise + */ + beginUpdate(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, parameters: Models.PrivateEndpointConnection, options?: Models.PrivateEndpointConnectionBeginUpdateOptionalParams): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + accountName, + privateEndpointConnectionName, + parameters, + options + }, + beginUpdateOperationSpec, + options); + } + + /** + * Lists all of the private endpoint connections in the specified account. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByBatchAccountNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByBatchAccountNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listByBatchAccountNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByBatchAccountNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByBatchAccountNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByBatchAccountOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName1 + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.maxresults + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListPrivateEndpointConnectionsResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName1, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName1, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.ifMatch, + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "parameters", + mapper: { + ...Mappers.PrivateEndpointConnection, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnection, + headersMapper: Mappers.PrivateEndpointConnectionUpdateHeaders + }, + 202: { + headersMapper: Mappers.PrivateEndpointConnectionUpdateHeaders + }, + 204: { + headersMapper: Mappers.PrivateEndpointConnectionUpdateHeaders + }, + default: { + bodyMapper: Mappers.CloudError, + headersMapper: Mappers.PrivateEndpointConnectionUpdateHeaders + } + }, + serializer +}; + +const listByBatchAccountNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListPrivateEndpointConnectionsResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/batch/arm-batch/src/operations/privateLinkResourceOperations.ts b/sdk/batch/arm-batch/src/operations/privateLinkResourceOperations.ts new file mode 100644 index 000000000000..d27dfdc6ccfc --- /dev/null +++ b/sdk/batch/arm-batch/src/operations/privateLinkResourceOperations.ts @@ -0,0 +1,202 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/privateLinkResourceOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { BatchManagementClientContext } from "../batchManagementClientContext"; + +/** Class representing a PrivateLinkResourceOperations. */ +export class PrivateLinkResourceOperations { + private readonly client: BatchManagementClientContext; + + /** + * Create a PrivateLinkResourceOperations. + * @param {BatchManagementClientContext} client Reference to the service client. + */ + constructor(client: BatchManagementClientContext) { + this.client = client; + } + + /** + * Lists all of the private link resources in the specified account. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param [options] The optional parameters + * @returns Promise + */ + listByBatchAccount(resourceGroupName: string, accountName: string, options?: Models.PrivateLinkResourceListByBatchAccountOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param callback The callback + */ + listByBatchAccount(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param options The optional parameters + * @param callback The callback + */ + listByBatchAccount(resourceGroupName: string, accountName: string, options: Models.PrivateLinkResourceListByBatchAccountOptionalParams, callback: msRest.ServiceCallback): void; + listByBatchAccount(resourceGroupName: string, accountName: string, options?: Models.PrivateLinkResourceListByBatchAccountOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listByBatchAccountOperationSpec, + callback) as Promise; + } + + /** + * Gets information about the specified private link resource. + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateLinkResourceName The private link resource name. This must be unique within the + * account. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, accountName: string, privateLinkResourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateLinkResourceName The private link resource name. This must be unique within the + * account. + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, privateLinkResourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group that contains the Batch account. + * @param accountName The name of the Batch account. + * @param privateLinkResourceName The private link resource name. This must be unique within the + * account. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, privateLinkResourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, privateLinkResourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + privateLinkResourceName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Lists all of the private link resources in the specified account. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByBatchAccountNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByBatchAccountNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listByBatchAccountNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByBatchAccountNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByBatchAccountNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByBatchAccountOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName1 + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.maxresults + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListPrivateLinkResourcesResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources/{privateLinkResourceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName1, + Parameters.privateLinkResourceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByBatchAccountNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListPrivateLinkResourcesResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/batch/arm-batch/tsconfig.json b/sdk/batch/arm-batch/tsconfig.json index 87bbf5b5fa49..422b584abd5e 100644 --- a/sdk/batch/arm-batch/tsconfig.json +++ b/sdk/batch/arm-batch/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "forceConsistentCasingInFileNames": true, - "lib": ["es6"], + "lib": ["es6", "dom"], "declaration": true, "outDir": "./esm", "importHelpers": true