diff --git a/sdk/machinelearningservices/arm-machinelearningservices/LICENSE.txt b/sdk/machinelearningservices/arm-machinelearningservices/LICENSE.txt index b73b4a1293c3..ea8fb1516028 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/LICENSE.txt +++ b/sdk/machinelearningservices/arm-machinelearningservices/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2019 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/machinelearningservices/arm-machinelearningservices/README.md b/sdk/machinelearningservices/arm-machinelearningservices/README.md index a8f0b875f3da..8f56ae3f327e 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/README.md +++ b/sdk/machinelearningservices/arm-machinelearningservices/README.md @@ -19,8 +19,9 @@ npm install @azure/arm-machinelearningservices ##### Install @azure/ms-rest-nodeauth +- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. ```bash -npm install @azure/ms-rest-nodeauth +npm install @azure/ms-rest-nodeauth@"^3.0.0" ``` ##### Sample code @@ -95,4 +96,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%2Fmachinelearningservices%2Farm-machinelearningservices%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/machinelearningservices/arm-machinelearningservices/README.png) diff --git a/sdk/machinelearningservices/arm-machinelearningservices/package.json b/sdk/machinelearningservices/arm-machinelearningservices/package.json index 29592ca0a1d2..e55132c6922e 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/package.json +++ b/sdk/machinelearningservices/arm-machinelearningservices/package.json @@ -4,9 +4,9 @@ "description": "AzureMachineLearningWorkspaces Library with typescript type definitions for node.js and browser.", "version": "3.0.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", - "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,11 +20,11 @@ "module": "./esm/azureMachineLearningWorkspaces.js", "types": "./esm/azureMachineLearningWorkspaces.d.ts", "devDependencies": { - "typescript": "^3.1.1", - "rollup": "^0.66.2", - "rollup-plugin-node-resolve": "^3.4.0", + "typescript": "^3.5.3", + "rollup": "^1.18.0", + "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", - "uglify-js": "^3.4.9" + "uglify-js": "^3.6.0" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/machinelearningservices/arm-machinelearningservices", "repository": { diff --git a/sdk/machinelearningservices/arm-machinelearningservices/rollup.config.js b/sdk/machinelearningservices/arm-machinelearningservices/rollup.config.js index 1a9e76332601..69a537c86ea0 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/rollup.config.js +++ b/sdk/machinelearningservices/arm-machinelearningservices/rollup.config.js @@ -29,7 +29,7 @@ const config = { */` }, plugins: [ - nodeResolve({ module: true }), + nodeResolve({ mainFields: ['module', 'main'] }), sourcemaps() ] }; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspaces.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspaces.ts index c8b88568754d..356525db2cb0 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspaces.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspaces.ts @@ -11,6 +11,7 @@ import * as msRest from "@azure/ms-rest-js"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; +import * as Parameters from "./models/parameters"; import * as operations from "./operations"; import { AzureMachineLearningWorkspacesContext } from "./azureMachineLearningWorkspacesContext"; @@ -19,9 +20,13 @@ class AzureMachineLearningWorkspaces extends AzureMachineLearningWorkspacesConte // Operation groups operations: operations.Operations; workspaces: operations.Workspaces; + workspaceFeatures: operations.WorkspaceFeatures; usages: operations.Usages; virtualMachineSizes: operations.VirtualMachineSizes; + quotas: operations.Quotas; machineLearningCompute: operations.MachineLearningCompute; + privateEndpointConnections: operations.PrivateEndpointConnections; + privateLinkResources: operations.PrivateLinkResources; /** * Initializes a new instance of the AzureMachineLearningWorkspaces class. @@ -33,13 +38,113 @@ class AzureMachineLearningWorkspaces extends AzureMachineLearningWorkspacesConte super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.workspaces = new operations.Workspaces(this); + this.workspaceFeatures = new operations.WorkspaceFeatures(this); this.usages = new operations.Usages(this); this.virtualMachineSizes = new operations.VirtualMachineSizes(this); + this.quotas = new operations.Quotas(this); this.machineLearningCompute = new operations.MachineLearningCompute(this); + this.privateEndpointConnections = new operations.PrivateEndpointConnections(this); + this.privateLinkResources = new operations.PrivateLinkResources(this); + } + + /** + * Lists all skus with associated features + * @param [options] The optional parameters + * @returns Promise + */ + listSkus(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + listSkus(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listSkus(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listSkus(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.sendOperationRequest( + { + options + }, + listSkusOperationSpec, + callback) as Promise; + } + + /** + * Lists all skus with associated features + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listSkusNext(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 + */ + listSkusNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.sendOperationRequest( + { + nextPageLink, + options + }, + listSkusNextOperationSpec, + callback) as Promise; } } // Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listSkusOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SkuListResult + }, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; + +const listSkusNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SkuListResult + }, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; export { AzureMachineLearningWorkspaces, diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspacesContext.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspacesContext.ts index 9a1cb99cc2a5..07d3167ade29 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspacesContext.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/azureMachineLearningWorkspacesContext.ts @@ -44,7 +44,7 @@ export class AzureMachineLearningWorkspacesContext extends msRestAzure.AzureServ super(credentials, options); - this.apiVersion = '2019-05-01'; + this.apiVersion = '2020-03-01'; this.acceptLanguage = 'en-US'; this.longRunningOperationRetryTimeout = 30; this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/index.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/index.ts index 652dcfba3a34..dbb40ee35a50 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/models/index.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/index.ts @@ -47,6 +47,70 @@ export interface Operation { display?: OperationDisplay; } +/** + * An interface representing KeyVaultProperties. + */ +export interface KeyVaultProperties { + /** + * The ArmId of the keyVault where the customer owned encryption key is present. + */ + keyVaultArmId: string; + /** + * Key vault uri to access the encryption key. + */ + keyIdentifier: string; + /** + * For future use - The client id of the identity which will be used to access key vault. + */ + identityClientId?: string; +} + +/** + * An interface representing EncryptionProperty. + */ +export interface EncryptionProperty { + /** + * Indicates whether or not the encryption is enabled for the workspace. Possible values include: + * 'Enabled', 'Disabled' + */ + status: EncryptionStatus; + /** + * Customer Key vault properties. + */ + keyVaultProperties: KeyVaultProperties; +} + +/** + * The Private Endpoint resource. + */ +export interface PrivateEndpoint { + /** + * The ARM identifier for Private Endpoint + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; +} + +/** + * A collection of information about the state of the connection between service consumer and + * provider. + */ +export interface PrivateLinkServiceConnectionState { + /** + * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the + * service. Possible values include: 'Pending', 'Approved', 'Rejected', 'Disconnected', 'Timeout' + */ + status?: PrivateEndpointServiceConnectionStatus; + /** + * The reason for approval/rejection of the connection. + */ + description?: string; + /** + * A message indicating if changes on the service provider require any updates on the consumer. + */ + actionsRequired?: string; +} + /** * Azure Resource Manager resource envelope. */ @@ -63,9 +127,8 @@ export interface Resource extends BaseResource { readonly name?: string; /** * The identity of the resource. - * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly identity?: Identity; + identity?: Identity; /** * Specifies the location of the resource. */ @@ -79,6 +142,57 @@ export interface Resource extends BaseResource { * Contains resource tags defined as key/value pairs. */ tags?: { [propertyName: string]: string }; + /** + * The sku of the workspace. + */ + sku?: Sku; +} + +/** + * The Private Endpoint Connection resource. + */ +export interface PrivateEndpointConnection extends Resource { + /** + * The resource of private end point. + */ + privateEndpoint?: PrivateEndpoint; + /** + * A collection of information about the state of the connection between service consumer and + * provider. + */ + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; + /** + * The provisioning state of the private endpoint connection resource. Possible values include: + * 'Succeeded', 'Creating', 'Deleting', 'Failed' + */ + provisioningState?: PrivateEndpointConnectionProvisioningState; +} + +/** + * An interface representing SharedPrivateLinkResource. + */ +export interface SharedPrivateLinkResource { + /** + * Unique name of the private link. + */ + name?: string; + /** + * The resource id that private link links to. + */ + privateLinkResourceId?: string; + /** + * The private link resource group id. + */ + groupId?: string; + /** + * Request message. + */ + requestMessage?: string; + /** + * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the + * service. Possible values include: 'Pending', 'Approved', 'Rejected', 'Disconnected', 'Timeout' + */ + status?: PrivateEndpointServiceConnectionStatus; } /** @@ -135,6 +249,57 @@ export interface Workspace extends Resource { * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: ProvisioningState; + /** + * The encryption settings of Azure ML workspace. + */ + encryption?: EncryptionProperty; + /** + * The flag to signal HBI data in the workspace and reduce diagnostic data collected by the + * service. Default value: false. + */ + hbiWorkspace?: boolean; + /** + * The name of the managed resource group created by workspace RP in customer subscription if the + * workspace is CMK workspace + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly serviceProvisionedResourceGroup?: string; + /** + * Count of private connections in the workspace + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly privateLinkCount?: number; + /** + * The compute name for image build + */ + imageBuildCompute?: string; + /** + * The flag to indicate whether to allow public access when behind VNet. Default value: false. + */ + allowPublicAccessWhenBehindVnet?: boolean; + /** + * The list of private endpoint connections in the workspace. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** + * The list of shared private link resources in this workspace. + */ + sharedPrivateLinkResources?: SharedPrivateLinkResource[]; +} + +/** + * Sku of the resource + */ +export interface Sku { + /** + * Name of the sku + */ + name?: string; + /** + * Tier of the sku like Basic or Enterprise + */ + tier?: string; } /** @@ -145,6 +310,10 @@ export interface WorkspaceUpdateParameters { * The resource tags for the machine learning workspace. */ tags?: { [propertyName: string]: string }; + /** + * The sku of the workspace. + */ + sku?: Sku; /** * The description of this workspace. */ @@ -155,6 +324,24 @@ export interface WorkspaceUpdateParameters { friendlyName?: string; } +/** + * Features enabled for a workspace + */ +export interface AmlUserFeature { + /** + * Specifies the feature ID + */ + id?: string; + /** + * Specifies the feature name + */ + displayName?: string; + /** + * Describes the feature for user experience + */ + description?: string; +} + /** * The Usage Names. */ @@ -226,6 +413,11 @@ export interface VirtualMachineSize { * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly vCPUs?: number; + /** + * Number of gPUs. The number of gPUs supported by the virtual machine size. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly gpus?: number; /** * OS VHD Disk size. The OS VHD disk size, in MB, allowed by the virtual machine size. * **NOTE: This property will not be serialized. It can only be populated by the server.** @@ -263,6 +455,134 @@ export interface VirtualMachineSizeListResult { amlCompute?: VirtualMachineSize[]; } +/** + * The properties for Quota update or retrieval. + */ +export interface QuotaBaseProperties { + /** + * Specifies the resource ID. + */ + id?: string; + /** + * Specifies the resource type. + */ + type?: string; + /** + * Limit. The maximum permitted quota of the resource. + */ + limit?: number; + /** + * An enum describing the unit of quota measurement. Possible values include: 'Count' + */ + unit?: QuotaUnit; +} + +/** + * Quota update parameters. + */ +export interface QuotaUpdateParameters { + /** + * The list for update quota. + */ + value?: QuotaBaseProperties[]; +} + +/** + * The properties for update Quota response. + */ +export interface UpdateWorkspaceQuotas { + /** + * Specifies the resource ID. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Specifies the resource type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Limit. The maximum permitted quota of the resource. + */ + limit?: number; + /** + * An enum describing the unit of quota measurement. Possible values include: 'Count' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unit?: QuotaUnit; + /** + * Update Workspace Quota Status. Status of update workspace quota. Possible values include: + * 'Undefined', 'Success', 'Failure', 'InvalidQuotaBelowClusterMinimum', + * 'InvalidQuotaExceedsSubscriptionLimit', 'InvalidVMFamilyName', 'OperationNotSupportedForSku', + * 'OperationNotEnabledForRegion' + */ + status?: Status; +} + +/** + * The result of update workspace quota. + */ +export interface UpdateWorkspaceQuotasResult { + /** + * The list of workspace quota update result. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly value?: UpdateWorkspaceQuotas[]; + /** + * The URI to fetch the next page of workspace quota update result. Call ListNext() with this to + * fetch the next page of Workspace Quota update result. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * The Resource Name. + */ +export interface ResourceName { + /** + * The name of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly value?: string; + /** + * The localized name of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly localizedValue?: string; +} + +/** + * The quota assigned to a resource. + */ +export interface ResourceQuota { + /** + * Specifies the resource ID. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Specifies the resource type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Name of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: ResourceName; + /** + * Limit. The maximum permitted quota of the resource. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly limit?: number; + /** + * An enum describing the unit of quota measurement. Possible values include: 'Count' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unit?: QuotaUnit; +} + /** * Identity for the resource. */ @@ -483,7 +803,7 @@ export interface SslConfiguration { /** * Enable or disable ssl for scoring. Possible values include: 'Disabled', 'Enabled' */ - status?: Status; + status?: Status1; /** * Cert data */ @@ -705,6 +1025,16 @@ export interface AmlComputeProperties { * Subnet. Virtual network subnet resource ID the compute nodes belong to. */ subnet?: ResourceId; + /** + * Close remote Login Access Port. State of the public SSH port. Possible values are: Disabled - + * Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates + * that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that + * the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all + * public nodes. It can be default only during cluster creation time, after creation it will be + * either enabled or disabled. Possible values include: 'Enabled', 'Disabled', 'NotSpecified'. + * Default value: 'NotSpecified'. + */ + remoteLoginPortPublicAccess?: RemoteLoginPortPublicAccess; /** * Allocation state. Allocation state of the compute. Possible values are: steady - Indicates * that the compute is not resizing. There are no changes to the number of compute nodes in the @@ -1191,15 +1521,32 @@ export interface AmlComputeNodeInformation { */ readonly nodeId?: string; /** - * IP address. Public IP address of the compute node. + * Private IP address. Private IP address of the compute node. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly privateIpAddress?: string; + /** + * Public IP address. Public IP address of the compute node. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly ipAddress?: string; + readonly publicIpAddress?: string; /** * Port. SSH port number of the node. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly port?: number; + /** + * State of the compute node. Values are idle, running, preparing, unusable, leaving and + * preempted. Possible values include: 'idle', 'running', 'preparing', 'unusable', 'leaving', + * 'preempted' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nodeState?: NodeState; + /** + * Run ID. ID of the Experiment running on the node, if any else null. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly runId?: string; } /** @@ -1288,48 +1635,191 @@ export interface DatabricksComputeSecrets { } /** - * Optional Parameters. + * Features/user capabilities associated with the sku */ -export interface WorkspacesListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { +export interface SKUCapability { /** - * Continuation token for pagination. + * Capability/Feature ID */ - skiptoken?: string; + name?: string; + /** + * Details about the feature/capability + */ + value?: string; } /** - * Optional Parameters. + * Describes The zonal capabilities of a SKU. */ -export interface WorkspacesListBySubscriptionOptionalParams extends msRest.RequestOptionsBase { +export interface ResourceSkuZoneDetails { /** - * Continuation token for pagination. + * The set of zones that the SKU is available in with the specified capabilities. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - skiptoken?: string; + readonly name?: string[]; + /** + * A list of capabilities that are available for the SKU in the specified list of zones. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly capabilities?: SKUCapability[]; } /** - * Optional Parameters. + * An interface representing ResourceSkuLocationInfo. */ -export interface MachineLearningComputeListByWorkspaceOptionalParams extends msRest.RequestOptionsBase { +export interface ResourceSkuLocationInfo { /** - * Continuation token for pagination. + * Location of the SKU + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - skiptoken?: string; + readonly location?: string; + /** + * List of availability zones where the SKU is supported. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly zones?: string[]; + /** + * Details of capabilities available to a SKU in specific zones. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly zoneDetails?: ResourceSkuZoneDetails[]; } /** - * An interface representing AzureMachineLearningWorkspacesOptions. + * The restriction because of which SKU cannot be used. */ -export interface AzureMachineLearningWorkspacesOptions extends AzureServiceClientOptions { - baseUri?: string; +export interface Restriction { + /** + * The type of restrictions. As of now only possible value for this is location. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * The value of restrictions. If the restriction type is set to location. This would be different + * locations where the SKU is restricted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly values?: string[]; + /** + * The reason for the restriction. Possible values include: 'NotSpecified', + * 'NotAvailableForRegion', 'NotAvailableForSubscription' + */ + reasonCode?: ReasonCode; } /** - * Defines headers for CreateOrUpdate operation. + * Describes Workspace Sku details and features */ -export interface MachineLearningComputeCreateOrUpdateHeaders { +export interface WorkspaceSku { /** - * URI to poll for asynchronous operation status. + * The set of locations that the SKU is available. This will be supported and registered Azure + * Geo Regions (e.g. West US, East US, Southeast Asia, etc.). + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly locations?: string[]; + /** + * A list of locations and availability zones in those locations where the SKU is available. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly locationInfo?: ResourceSkuLocationInfo[]; + /** + * Sku Tier like Basic or Enterprise + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly tier?: string; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resourceType?: string; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * List of features/user capabilities associated with the sku + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly capabilities?: SKUCapability[]; + /** + * The restrictions because of which SKU cannot be used. This is empty if there are no + * restrictions. + */ + restrictions?: Restriction[]; +} + +/** + * A private link resource + */ +export interface PrivateLinkResource extends Resource { + /** + * The private link resource group id. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly groupId?: string; + /** + * The private link resource required member names. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly requiredMembers?: string[]; + /** + * The private link resource Private link DNS zone name. + */ + requiredZoneNames?: string[]; +} + +/** + * A list of private link resources + */ +export interface PrivateLinkResourceListResult { + /** + * Array of private link resources + */ + value?: PrivateLinkResource[]; +} + +/** + * Optional Parameters. + */ +export interface WorkspacesListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { + /** + * Continuation token for pagination. + */ + skiptoken?: string; +} + +/** + * Optional Parameters. + */ +export interface WorkspacesListBySubscriptionOptionalParams extends msRest.RequestOptionsBase { + /** + * Continuation token for pagination. + */ + skiptoken?: string; +} + +/** + * Optional Parameters. + */ +export interface MachineLearningComputeListByWorkspaceOptionalParams extends msRest.RequestOptionsBase { + /** + * Continuation token for pagination. + */ + skiptoken?: string; +} + +/** + * An interface representing AzureMachineLearningWorkspacesOptions. + */ +export interface AzureMachineLearningWorkspacesOptions extends AzureServiceClientOptions { + baseUri?: string; +} + +/** + * Defines headers for CreateOrUpdate operation. + */ +export interface MachineLearningComputeCreateOrUpdateHeaders { + /** + * URI to poll for asynchronous operation status. */ azureAsyncOperation: string; } @@ -1368,6 +1858,20 @@ export interface WorkspaceListResult extends Array { nextLink?: string; } +/** + * @interface + * The List Aml user feature operation response. + * @extends Array + */ +export interface ListAmlUserFeatureResult extends Array { + /** + * The URI to fetch the next page of AML user features information. Call ListNext() with this to + * fetch the next page of AML user features information. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + /** * @interface * The List Usages operation response. @@ -1382,6 +1886,20 @@ export interface ListUsagesResult extends Array { readonly nextLink?: string; } +/** + * @interface + * The List WorkspaceQuotasByVMFamily operation response. + * @extends Array + */ +export interface ListWorkspaceQuotas extends Array { + /** + * The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() + * with this to fetch the next page of Workspace Quota information. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + /** * @interface * Paginated list of Machine Learning compute objects wrapped in ARM resource envelope. @@ -1394,6 +1912,19 @@ export interface PaginatedComputeResourcesList extends Array { nextLink?: string; } +/** + * @interface + * List of skus with features + * @extends Array + */ +export interface SkuListResult extends Array { + /** + * The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the + * next page of Workspace Skus + */ + nextLink?: string; +} + /** * Defines values for ProvisioningState. * Possible values include: 'Unknown', 'Updating', 'Creating', 'Deleting', 'Succeeded', 'Failed', @@ -1403,6 +1934,30 @@ export interface PaginatedComputeResourcesList extends Array { */ export type ProvisioningState = 'Unknown' | 'Updating' | 'Creating' | 'Deleting' | 'Succeeded' | 'Failed' | 'Canceled'; +/** + * Defines values for EncryptionStatus. + * Possible values include: 'Enabled', 'Disabled' + * @readonly + * @enum {string} + */ +export type EncryptionStatus = 'Enabled' | 'Disabled'; + +/** + * Defines values for PrivateEndpointServiceConnectionStatus. + * Possible values include: 'Pending', 'Approved', 'Rejected', 'Disconnected', 'Timeout' + * @readonly + * @enum {string} + */ +export type PrivateEndpointServiceConnectionStatus = 'Pending' | 'Approved' | 'Rejected' | 'Disconnected' | 'Timeout'; + +/** + * Defines values for PrivateEndpointConnectionProvisioningState. + * Possible values include: 'Succeeded', 'Creating', 'Deleting', 'Failed' + * @readonly + * @enum {string} + */ +export type PrivateEndpointConnectionProvisioningState = 'Succeeded' | 'Creating' | 'Deleting' | 'Failed'; + /** * Defines values for UsageUnit. * Possible values include: 'Count' @@ -1411,6 +1966,24 @@ export type ProvisioningState = 'Unknown' | 'Updating' | 'Creating' | 'Deleting' */ export type UsageUnit = 'Count'; +/** + * Defines values for QuotaUnit. + * Possible values include: 'Count' + * @readonly + * @enum {string} + */ +export type QuotaUnit = 'Count'; + +/** + * Defines values for Status. + * Possible values include: 'Undefined', 'Success', 'Failure', 'InvalidQuotaBelowClusterMinimum', + * 'InvalidQuotaExceedsSubscriptionLimit', 'InvalidVMFamilyName', 'OperationNotSupportedForSku', + * 'OperationNotEnabledForRegion' + * @readonly + * @enum {string} + */ +export type Status = 'Undefined' | 'Success' | 'Failure' | 'InvalidQuotaBelowClusterMinimum' | 'InvalidQuotaExceedsSubscriptionLimit' | 'InvalidVMFamilyName' | 'OperationNotSupportedForSku' | 'OperationNotEnabledForRegion'; + /** * Defines values for ResourceIdentityType. * Possible values include: 'SystemAssigned' @@ -1427,6 +2000,14 @@ export type ResourceIdentityType = 'SystemAssigned'; */ export type VmPriority = 'Dedicated' | 'LowPriority'; +/** + * Defines values for RemoteLoginPortPublicAccess. + * Possible values include: 'Enabled', 'Disabled', 'NotSpecified' + * @readonly + * @enum {string} + */ +export type RemoteLoginPortPublicAccess = 'Enabled' | 'Disabled' | 'NotSpecified'; + /** * Defines values for AllocationState. * Possible values include: 'Steady', 'Resizing' @@ -1435,6 +2016,14 @@ export type VmPriority = 'Dedicated' | 'LowPriority'; */ export type AllocationState = 'Steady' | 'Resizing'; +/** + * Defines values for NodeState. + * Possible values include: 'idle', 'running', 'preparing', 'unusable', 'leaving', 'preempted' + * @readonly + * @enum {string} + */ +export type NodeState = 'idle' | 'running' | 'preparing' | 'unusable' | 'leaving' | 'preempted'; + /** * Defines values for ComputeType. * Possible values include: 'AKS', 'AmlCompute', 'DataFactory', 'VirtualMachine', 'HDInsight', @@ -1444,6 +2033,14 @@ export type AllocationState = 'Steady' | 'Resizing'; */ export type ComputeType = 'AKS' | 'AmlCompute' | 'DataFactory' | 'VirtualMachine' | 'HDInsight' | 'Databricks' | 'DataLakeAnalytics'; +/** + * Defines values for ReasonCode. + * Possible values include: 'NotSpecified', 'NotAvailableForRegion', 'NotAvailableForSubscription' + * @readonly + * @enum {string} + */ +export type ReasonCode = 'NotSpecified' | 'NotAvailableForRegion' | 'NotAvailableForSubscription'; + /** * Defines values for UnderlyingResourceAction. * Possible values include: 'Delete', 'Detach' @@ -1453,12 +2050,12 @@ export type ComputeType = 'AKS' | 'AmlCompute' | 'DataFactory' | 'VirtualMachine export type UnderlyingResourceAction = 'Delete' | 'Detach'; /** - * Defines values for Status. + * Defines values for Status1. * Possible values include: 'Disabled', 'Enabled' * @readonly * @enum {string} */ -export type Status = 'Disabled' | 'Enabled'; +export type Status1 = 'Disabled' | 'Enabled'; /** * Contains response data for the list operation. @@ -1600,6 +2197,26 @@ export type WorkspacesListBySubscriptionResponse = WorkspaceListResult & { }; }; +/** + * Contains response data for the beginCreateOrUpdate operation. + */ +export type WorkspacesBeginCreateOrUpdateResponse = Workspace & { + /** + * 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: Workspace; + }; +}; + /** * Contains response data for the listByResourceGroupNext operation. */ @@ -1640,6 +2257,46 @@ export type WorkspacesListBySubscriptionNextResponse = WorkspaceListResult & { }; }; +/** + * Contains response data for the list operation. + */ +export type WorkspaceFeaturesListResponse = ListAmlUserFeatureResult & { + /** + * 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: ListAmlUserFeatureResult; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type WorkspaceFeaturesListNextResponse = ListAmlUserFeatureResult & { + /** + * 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: ListAmlUserFeatureResult; + }; +}; + /** * Contains response data for the list operation. */ @@ -1700,6 +2357,66 @@ export type VirtualMachineSizesListResponse = VirtualMachineSizeListResult & { }; }; +/** + * Contains response data for the update operation. + */ +export type QuotasUpdateResponse = UpdateWorkspaceQuotasResult & { + /** + * 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: UpdateWorkspaceQuotasResult; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type QuotasListResponse = ListWorkspaceQuotas & { + /** + * 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: ListWorkspaceQuotas; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type QuotasListNextResponse = ListWorkspaceQuotas & { + /** + * 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: ListWorkspaceQuotas; + }; +}; + /** * Contains response data for the listByWorkspace operation. */ @@ -1879,3 +2596,103 @@ export type MachineLearningComputeListByWorkspaceNextResponse = PaginatedCompute parsedBody: PaginatedComputeResourcesList; }; }; + +/** + * Contains response data for the listSkus operation. + */ +export type ListSkusResponse = SkuListResult & { + /** + * 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: SkuListResult; + }; +}; + +/** + * Contains response data for the listSkusNext operation. + */ +export type ListSkusNextResponse = SkuListResult & { + /** + * 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: SkuListResult; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type PrivateEndpointConnectionsGetResponse = 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 put operation. + */ +export type PrivateEndpointConnectionsPutResponse = 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 listByWorkspace operation. + */ +export type PrivateLinkResourcesListByWorkspaceResponse = PrivateLinkResourceListResult & { + /** + * 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: PrivateLinkResourceListResult; + }; +}; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/machineLearningComputeMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/machineLearningComputeMappers.ts index 6c8334e0a3ba..56723609b6a1 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/models/machineLearningComputeMappers.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/machineLearningComputeMappers.ts @@ -28,19 +28,27 @@ export { DataFactory, DataLakeAnalytics, DataLakeAnalyticsProperties, + EncryptionProperty, ErrorDetail, ErrorResponse, HDInsight, HDInsightProperties, Identity, + KeyVaultProperties, MachineLearningComputeCreateOrUpdateHeaders, MachineLearningComputeDeleteHeaders, MachineLearningServiceError, NodeStateCounts, PaginatedComputeResourcesList, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, Resource, ResourceId, ScaleSettings, + SharedPrivateLinkResource, + Sku, SslConfiguration, SystemService, UserAccountCredentials, diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/mappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/mappers.ts index 639d21015222..90dfaa43503d 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/models/mappers.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/mappers.ts @@ -69,6 +69,106 @@ export const Operation: msRest.CompositeMapper = { } }; +export const KeyVaultProperties: msRest.CompositeMapper = { + serializedName: "KeyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties", + modelProperties: { + keyVaultArmId: { + required: true, + serializedName: "keyVaultArmId", + type: { + name: "String" + } + }, + keyIdentifier: { + required: true, + serializedName: "keyIdentifier", + type: { + name: "String" + } + }, + identityClientId: { + serializedName: "identityClientId", + type: { + name: "String" + } + } + } + } +}; + +export const EncryptionProperty: msRest.CompositeMapper = { + serializedName: "EncryptionProperty", + type: { + name: "Composite", + className: "EncryptionProperty", + modelProperties: { + status: { + required: true, + serializedName: "status", + type: { + name: "String" + } + }, + keyVaultProperties: { + required: true, + serializedName: "keyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties" + } + } + } + } +}; + +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: { + serializedName: "status", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + actionsRequired: { + serializedName: "actionsRequired", + type: { + name: "String" + } + } + } + } +}; + export const Resource: msRest.CompositeMapper = { serializedName: "Resource", type: { @@ -90,7 +190,6 @@ export const Resource: msRest.CompositeMapper = { } }, identity: { - readOnly: true, serializedName: "identity", type: { name: "Composite", @@ -120,6 +219,85 @@ export const Resource: msRest.CompositeMapper = { } } } + }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "Sku" + } + } + } + } +}; + +export const PrivateEndpointConnection: msRest.CompositeMapper = { + serializedName: "PrivateEndpointConnection", + type: { + name: "Composite", + className: "PrivateEndpointConnection", + modelProperties: { + ...Resource.type.modelProperties, + privateEndpoint: { + serializedName: "properties.privateEndpoint", + type: { + name: "Composite", + className: "PrivateEndpoint" + } + }, + privateLinkServiceConnectionState: { + required: true, + serializedName: "properties.privateLinkServiceConnectionState", + type: { + name: "Composite", + className: "PrivateLinkServiceConnectionState" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const SharedPrivateLinkResource: msRest.CompositeMapper = { + serializedName: "SharedPrivateLinkResource", + type: { + name: "Composite", + className: "SharedPrivateLinkResource", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + privateLinkResourceId: { + serializedName: "properties.privateLinkResourceId", + type: { + name: "String" + } + }, + groupId: { + serializedName: "properties.groupId", + type: { + name: "String" + } + }, + requestMessage: { + serializedName: "properties.requestMessage", + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + type: { + name: "String" + } } } } @@ -194,6 +372,94 @@ export const Workspace: msRest.CompositeMapper = { type: { name: "String" } + }, + encryption: { + serializedName: "properties.encryption", + type: { + name: "Composite", + className: "EncryptionProperty" + } + }, + hbiWorkspace: { + serializedName: "properties.hbiWorkspace", + defaultValue: false, + type: { + name: "Boolean" + } + }, + serviceProvisionedResourceGroup: { + readOnly: true, + serializedName: "properties.serviceProvisionedResourceGroup", + type: { + name: "String" + } + }, + privateLinkCount: { + readOnly: true, + serializedName: "properties.privateLinkCount", + type: { + name: "Number" + } + }, + imageBuildCompute: { + serializedName: "properties.imageBuildCompute", + type: { + name: "String" + } + }, + allowPublicAccessWhenBehindVnet: { + serializedName: "properties.allowPublicAccessWhenBehindVnet", + defaultValue: false, + type: { + name: "Boolean" + } + }, + privateEndpointConnections: { + readOnly: true, + serializedName: "properties.privateEndpointConnections", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + }, + sharedPrivateLinkResources: { + serializedName: "properties.sharedPrivateLinkResources", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SharedPrivateLinkResource" + } + } + } + } + } + } +}; + +export const Sku: msRest.CompositeMapper = { + serializedName: "Sku", + type: { + name: "Composite", + className: "Sku", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + tier: { + serializedName: "tier", + type: { + name: "String" + } } } } @@ -216,6 +482,13 @@ export const WorkspaceUpdateParameters: msRest.CompositeMapper = { } } }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "Sku" + } + }, description: { serializedName: "properties.description", type: { @@ -232,6 +505,34 @@ export const WorkspaceUpdateParameters: msRest.CompositeMapper = { } }; +export const AmlUserFeature: msRest.CompositeMapper = { + serializedName: "AmlUserFeature", + type: { + name: "Composite", + className: "AmlUserFeature", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, + displayName: { + serializedName: "displayName", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + } + } + } +}; + export const UsageName: msRest.CompositeMapper = { serializedName: "UsageName", type: { @@ -336,6 +637,13 @@ export const VirtualMachineSize: msRest.CompositeMapper = { name: "Number" } }, + gpus: { + readOnly: true, + serializedName: "gpus", + type: { + name: "Number" + } + }, osVhdSizeMB: { readOnly: true, serializedName: "osVhdSizeMB", @@ -397,39 +705,238 @@ export const VirtualMachineSizeListResult: msRest.CompositeMapper = { } }; -export const Identity: msRest.CompositeMapper = { - serializedName: "Identity", +export const QuotaBaseProperties: msRest.CompositeMapper = { + serializedName: "QuotaBaseProperties", type: { name: "Composite", - className: "Identity", + className: "QuotaBaseProperties", modelProperties: { - principalId: { - readOnly: true, - serializedName: "principalId", + id: { + serializedName: "id", type: { name: "String" } }, - tenantId: { - readOnly: true, - serializedName: "tenantId", + type: { + serializedName: "type", type: { name: "String" } }, - type: { - serializedName: "type", + limit: { + serializedName: "limit", type: { - name: "Enum", - allowedValues: [ - "SystemAssigned" - ] + name: "Number" } - } - } - } -}; - + }, + unit: { + serializedName: "unit", + type: { + name: "String" + } + } + } + } +}; + +export const QuotaUpdateParameters: msRest.CompositeMapper = { + serializedName: "QuotaUpdateParameters", + type: { + name: "Composite", + className: "QuotaUpdateParameters", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "QuotaBaseProperties" + } + } + } + } + } + } +}; + +export const UpdateWorkspaceQuotas: msRest.CompositeMapper = { + serializedName: "UpdateWorkspaceQuotas", + type: { + name: "Composite", + className: "UpdateWorkspaceQuotas", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + limit: { + serializedName: "limit", + type: { + name: "Number" + } + }, + unit: { + readOnly: true, + serializedName: "unit", + type: { + name: "String" + } + }, + status: { + serializedName: "status", + type: { + name: "String" + } + } + } + } +}; + +export const UpdateWorkspaceQuotasResult: msRest.CompositeMapper = { + serializedName: "UpdateWorkspaceQuotasResult", + type: { + name: "Composite", + className: "UpdateWorkspaceQuotasResult", + modelProperties: { + value: { + readOnly: true, + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UpdateWorkspaceQuotas" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceName: msRest.CompositeMapper = { + serializedName: "ResourceName", + type: { + name: "Composite", + className: "ResourceName", + modelProperties: { + value: { + readOnly: true, + serializedName: "value", + type: { + name: "String" + } + }, + localizedValue: { + readOnly: true, + serializedName: "localizedValue", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceQuota: msRest.CompositeMapper = { + serializedName: "ResourceQuota", + type: { + name: "Composite", + className: "ResourceQuota", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "Composite", + className: "ResourceName" + } + }, + limit: { + readOnly: true, + serializedName: "limit", + type: { + name: "Number" + } + }, + unit: { + readOnly: true, + serializedName: "unit", + type: { + name: "String" + } + } + } + } +}; + +export const Identity: msRest.CompositeMapper = { + serializedName: "Identity", + type: { + name: "Composite", + className: "Identity", + modelProperties: { + principalId: { + readOnly: true, + serializedName: "principalId", + type: { + name: "String" + } + }, + tenantId: { + readOnly: true, + serializedName: "tenantId", + type: { + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "Enum", + allowedValues: [ + "SystemAssigned" + ] + } + } + } + } +}; + export const ResourceId: msRest.CompositeMapper = { serializedName: "ResourceId", type: { @@ -1060,6 +1567,13 @@ export const AmlComputeProperties: msRest.CompositeMapper = { className: "ResourceId" } }, + remoteLoginPortPublicAccess: { + serializedName: "remoteLoginPortPublicAccess", + defaultValue: 'NotSpecified', + type: { + name: "String" + } + }, allocationState: { readOnly: true, serializedName: "allocationState", @@ -1439,9 +1953,16 @@ export const AmlComputeNodeInformation: msRest.CompositeMapper = { name: "String" } }, - ipAddress: { + privateIpAddress: { + readOnly: true, + serializedName: "privateIpAddress", + type: { + name: "String" + } + }, + publicIpAddress: { readOnly: true, - serializedName: "ipAddress", + serializedName: "publicIpAddress", type: { name: "String" } @@ -1452,6 +1973,20 @@ export const AmlComputeNodeInformation: msRest.CompositeMapper = { type: { name: "Number" } + }, + nodeState: { + readOnly: true, + serializedName: "nodeState", + type: { + name: "String" + } + }, + runId: { + readOnly: true, + serializedName: "runId", + type: { + name: "String" + } } } } @@ -1575,6 +2110,284 @@ export const DatabricksComputeSecrets: msRest.CompositeMapper = { } }; +export const SKUCapability: msRest.CompositeMapper = { + serializedName: "SKUCapability", + type: { + name: "Composite", + className: "SKUCapability", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceSkuZoneDetails: msRest.CompositeMapper = { + serializedName: "ResourceSkuZoneDetails", + type: { + name: "Composite", + className: "ResourceSkuZoneDetails", + modelProperties: { + name: { + readOnly: true, + serializedName: "name", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + capabilities: { + readOnly: true, + serializedName: "capabilities", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SKUCapability" + } + } + } + } + } + } +}; + +export const ResourceSkuLocationInfo: msRest.CompositeMapper = { + serializedName: "ResourceSkuLocationInfo", + type: { + name: "Composite", + className: "ResourceSkuLocationInfo", + modelProperties: { + location: { + readOnly: true, + serializedName: "location", + type: { + name: "String" + } + }, + zones: { + readOnly: true, + serializedName: "zones", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + zoneDetails: { + readOnly: true, + serializedName: "zoneDetails", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceSkuZoneDetails" + } + } + } + } + } + } +}; + +export const Restriction: msRest.CompositeMapper = { + serializedName: "Restriction", + type: { + name: "Composite", + className: "Restriction", + modelProperties: { + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + values: { + readOnly: true, + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + reasonCode: { + serializedName: "reasonCode", + type: { + name: "String" + } + } + } + } +}; + +export const WorkspaceSku: msRest.CompositeMapper = { + serializedName: "WorkspaceSku", + type: { + name: "Composite", + className: "WorkspaceSku", + modelProperties: { + locations: { + readOnly: true, + serializedName: "locations", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + locationInfo: { + readOnly: true, + serializedName: "locationInfo", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceSkuLocationInfo" + } + } + } + }, + tier: { + readOnly: true, + serializedName: "tier", + type: { + name: "String" + } + }, + resourceType: { + readOnly: true, + serializedName: "resourceType", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + capabilities: { + readOnly: true, + serializedName: "capabilities", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SKUCapability" + } + } + } + }, + restrictions: { + serializedName: "restrictions", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Restriction" + } + } + } + } + } + } +}; + +export const PrivateLinkResource: msRest.CompositeMapper = { + serializedName: "PrivateLinkResource", + type: { + name: "Composite", + className: "PrivateLinkResource", + modelProperties: { + ...Resource.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: { + serializedName: "properties.requiredZoneNames", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const PrivateLinkResourceListResult: msRest.CompositeMapper = { + serializedName: "PrivateLinkResourceListResult", + type: { + name: "Composite", + className: "PrivateLinkResourceListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateLinkResource" + } + } + } + } + } + } +}; + export const MachineLearningComputeCreateOrUpdateHeaders: msRest.CompositeMapper = { serializedName: "machinelearningcompute-createorupdate-headers", type: { @@ -1663,6 +2476,36 @@ export const WorkspaceListResult: msRest.CompositeMapper = { } }; +export const ListAmlUserFeatureResult: msRest.CompositeMapper = { + serializedName: "ListAmlUserFeatureResult", + type: { + name: "Composite", + className: "ListAmlUserFeatureResult", + modelProperties: { + value: { + readOnly: true, + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AmlUserFeature" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const ListUsagesResult: msRest.CompositeMapper = { serializedName: "ListUsagesResult", type: { @@ -1693,6 +2536,36 @@ export const ListUsagesResult: msRest.CompositeMapper = { } }; +export const ListWorkspaceQuotas: msRest.CompositeMapper = { + serializedName: "ListWorkspaceQuotas", + type: { + name: "Composite", + className: "ListWorkspaceQuotas", + modelProperties: { + value: { + readOnly: true, + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceQuota" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const PaginatedComputeResourcesList: msRest.CompositeMapper = { serializedName: "PaginatedComputeResourcesList", type: { @@ -1721,6 +2594,34 @@ export const PaginatedComputeResourcesList: msRest.CompositeMapper = { } }; +export const SkuListResult: msRest.CompositeMapper = { + serializedName: "SkuListResult", + type: { + name: "Composite", + className: "SkuListResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "WorkspaceSku" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const discriminators = { 'Compute' : Compute, 'Compute.AKS' : AKS, diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/parameters.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/parameters.ts index 705365dcbf19..fb67bf1c0003 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/models/parameters.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/parameters.ts @@ -64,6 +64,16 @@ export const nextPageLink: msRest.OperationURLParameter = { }, skipEncoding: true }; +export const privateEndpointConnectionName: msRest.OperationURLParameter = { + parameterPath: "privateEndpointConnectionName", + mapper: { + required: true, + serializedName: "privateEndpointConnectionName", + type: { + name: "String" + } + } +}; export const resourceGroupName: msRest.OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateEndpointConnectionsMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateEndpointConnectionsMappers.ts new file mode 100644 index 000000000000..889f0ef6af54 --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateEndpointConnectionsMappers.ts @@ -0,0 +1,49 @@ +/* + * 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 { + discriminators, + AKS, + AksNetworkingConfiguration, + AKSProperties, + AmlCompute, + AmlComputeProperties, + BaseResource, + Compute, + ComputeResource, + Databricks, + DatabricksProperties, + DataFactory, + DataLakeAnalytics, + DataLakeAnalyticsProperties, + EncryptionProperty, + ErrorDetail, + ErrorResponse, + HDInsight, + HDInsightProperties, + Identity, + KeyVaultProperties, + MachineLearningServiceError, + NodeStateCounts, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + Resource, + ResourceId, + ScaleSettings, + SharedPrivateLinkResource, + Sku, + SslConfiguration, + SystemService, + UserAccountCredentials, + VirtualMachine, + VirtualMachineProperties, + VirtualMachineSshCredentials, + Workspace +} from "../models/mappers"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateLinkResourcesMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateLinkResourcesMappers.ts new file mode 100644 index 000000000000..a585c36cf76c --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/privateLinkResourcesMappers.ts @@ -0,0 +1,51 @@ +/* + * 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 { + discriminators, + AKS, + AksNetworkingConfiguration, + AKSProperties, + AmlCompute, + AmlComputeProperties, + BaseResource, + CloudError, + Compute, + ComputeResource, + Databricks, + DatabricksProperties, + DataFactory, + DataLakeAnalytics, + DataLakeAnalyticsProperties, + EncryptionProperty, + ErrorDetail, + ErrorResponse, + HDInsight, + HDInsightProperties, + Identity, + KeyVaultProperties, + MachineLearningServiceError, + NodeStateCounts, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkResourceListResult, + PrivateLinkServiceConnectionState, + Resource, + ResourceId, + ScaleSettings, + SharedPrivateLinkResource, + Sku, + SslConfiguration, + SystemService, + UserAccountCredentials, + VirtualMachine, + VirtualMachineProperties, + VirtualMachineSshCredentials, + Workspace +} from "../models/mappers"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/quotasMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/quotasMappers.ts new file mode 100644 index 000000000000..2598859dbe90 --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/quotasMappers.ts @@ -0,0 +1,22 @@ +/* + * 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 { + discriminators, + CloudError, + ErrorDetail, + ErrorResponse, + ListWorkspaceQuotas, + MachineLearningServiceError, + QuotaBaseProperties, + QuotaUpdateParameters, + ResourceName, + ResourceQuota, + UpdateWorkspaceQuotas, + UpdateWorkspaceQuotasResult +} from "../models/mappers"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspaceFeaturesMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspaceFeaturesMappers.ts new file mode 100644 index 000000000000..ea9f1ebd9ffb --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspaceFeaturesMappers.ts @@ -0,0 +1,16 @@ +/* + * 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 { + discriminators, + AmlUserFeature, + ErrorDetail, + ErrorResponse, + ListAmlUserFeatureResult, + MachineLearningServiceError +} from "../models/mappers"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspacesMappers.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspacesMappers.ts index 147ed31e4a00..f083274beae2 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspacesMappers.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/models/workspacesMappers.ts @@ -21,19 +21,27 @@ export { DataFactory, DataLakeAnalytics, DataLakeAnalyticsProperties, + EncryptionProperty, ErrorDetail, ErrorResponse, HDInsight, HDInsightProperties, Identity, + KeyVaultProperties, ListWorkspaceKeysResult, MachineLearningServiceError, NodeStateCounts, Password, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, RegistryListCredentialsResult, Resource, ResourceId, ScaleSettings, + SharedPrivateLinkResource, + Sku, SslConfiguration, SystemService, UserAccountCredentials, diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/index.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/index.ts index eb4867fd5155..4b6e0e8b15d3 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/index.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/index.ts @@ -10,6 +10,10 @@ export * from "./operations"; export * from "./workspaces"; +export * from "./workspaceFeatures"; export * from "./usages"; export * from "./virtualMachineSizes"; +export * from "./quotas"; export * from "./machineLearningCompute"; +export * from "./privateEndpointConnections"; +export * from "./privateLinkResources"; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateEndpointConnections.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateEndpointConnections.ts new file mode 100644 index 000000000000..d2d003897a96 --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateEndpointConnections.ts @@ -0,0 +1,235 @@ +/* + * 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/privateEndpointConnectionsMappers"; +import * as Parameters from "../models/parameters"; +import { AzureMachineLearningWorkspacesContext } from "../azureMachineLearningWorkspacesContext"; + +/** Class representing a PrivateEndpointConnections. */ +export class PrivateEndpointConnections { + private readonly client: AzureMachineLearningWorkspacesContext; + + /** + * Create a PrivateEndpointConnections. + * @param {AzureMachineLearningWorkspacesContext} client Reference to the service client. + */ + constructor(client: AzureMachineLearningWorkspacesContext) { + this.client = client; + } + + /** + * Gets the specified private endpoint connection associated with the workspace. + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param callback The callback + */ + get(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Update the state of specified private endpoint connection associated with the workspace. + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param properties The private endpoint connection properties. + * @param [options] The optional parameters + * @returns Promise + */ + put(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, properties: Models.PrivateEndpointConnection, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param properties The private endpoint connection properties. + * @param callback The callback + */ + put(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, properties: Models.PrivateEndpointConnection, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param properties The private endpoint connection properties. + * @param options The optional parameters + * @param callback The callback + */ + put(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, properties: Models.PrivateEndpointConnection, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + put(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, properties: Models.PrivateEndpointConnection, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + properties, + options + }, + putOperationSpec, + callback) as Promise; + } + + /** + * Deletes the specified private endpoint connection associated with the workspace. + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param privateEndpointConnectionName The name of the private endpoint connection associated with + * the workspace + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, workspaceName: string, privateEndpointConnectionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + privateEndpointConnectionName, + options + }, + deleteMethodOperationSpec, + callback); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnection + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; + +const putOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "properties", + mapper: { + ...Mappers.PrivateEndpointConnection, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnection + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName, + Parameters.privateEndpointConnectionName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateLinkResources.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateLinkResources.ts new file mode 100644 index 000000000000..b2f679e33662 --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/privateLinkResources.ts @@ -0,0 +1,87 @@ +/* + * 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/privateLinkResourcesMappers"; +import * as Parameters from "../models/parameters"; +import { AzureMachineLearningWorkspacesContext } from "../azureMachineLearningWorkspacesContext"; + +/** Class representing a PrivateLinkResources. */ +export class PrivateLinkResources { + private readonly client: AzureMachineLearningWorkspacesContext; + + /** + * Create a PrivateLinkResources. + * @param {AzureMachineLearningWorkspacesContext} client Reference to the service client. + */ + constructor(client: AzureMachineLearningWorkspacesContext) { + this.client = client; + } + + /** + * Gets the private link resources that need to be created for a workspace. + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param [options] The optional parameters + * @returns Promise + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param options The optional parameters + * @param callback The callback + */ + listByWorkspace(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByWorkspace(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + listByWorkspaceOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByWorkspaceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateLinkResourceListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/quotas.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/quotas.ts new file mode 100644 index 000000000000..b38d59b29325 --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/quotas.ts @@ -0,0 +1,194 @@ +/* + * 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/quotasMappers"; +import * as Parameters from "../models/parameters"; +import { AzureMachineLearningWorkspacesContext } from "../azureMachineLearningWorkspacesContext"; + +/** Class representing a Quotas. */ +export class Quotas { + private readonly client: AzureMachineLearningWorkspacesContext; + + /** + * Create a Quotas. + * @param {AzureMachineLearningWorkspacesContext} client Reference to the service client. + */ + constructor(client: AzureMachineLearningWorkspacesContext) { + this.client = client; + } + + /** + * Update quota for each VM family in workspace. + * @param location The location for update quota is queried. + * @param parameters Quota update parameters. + * @param [options] The optional parameters + * @returns Promise + */ + update(location: string, parameters: Models.QuotaUpdateParameters, options?: msRest.RequestOptionsBase): Promise; + /** + * @param location The location for update quota is queried. + * @param parameters Quota update parameters. + * @param callback The callback + */ + update(location: string, parameters: Models.QuotaUpdateParameters, callback: msRest.ServiceCallback): void; + /** + * @param location The location for update quota is queried. + * @param parameters Quota update parameters. + * @param options The optional parameters + * @param callback The callback + */ + update(location: string, parameters: Models.QuotaUpdateParameters, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(location: string, parameters: Models.QuotaUpdateParameters, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + location, + parameters, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Gets the currently assigned Workspace Quotas based on VMFamily. + * @param location The location for which resource usage is queried. + * @param [options] The optional parameters + * @returns Promise + */ + list(location: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param location The location for which resource usage is queried. + * @param callback The callback + */ + list(location: string, callback: msRest.ServiceCallback): void; + /** + * @param location The location for which resource usage is queried. + * @param options The optional parameters + * @param callback The callback + */ + list(location: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(location: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + location, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Gets the currently assigned Workspace Quotas based on VMFamily. + * @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 updateOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas", + urlParameters: [ + Parameters.location, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "parameters", + mapper: { + ...Mappers.QuotaUpdateParameters, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.UpdateWorkspaceQuotasResult + }, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas", + urlParameters: [ + Parameters.subscriptionId, + Parameters.location + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListWorkspaceQuotas + }, + 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.ListWorkspaceQuotas + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaceFeatures.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaceFeatures.ts new file mode 100644 index 000000000000..e227cca9ecaf --- /dev/null +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaceFeatures.ts @@ -0,0 +1,136 @@ +/* + * 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/workspaceFeaturesMappers"; +import * as Parameters from "../models/parameters"; +import { AzureMachineLearningWorkspacesContext } from "../azureMachineLearningWorkspacesContext"; + +/** Class representing a WorkspaceFeatures. */ +export class WorkspaceFeatures { + private readonly client: AzureMachineLearningWorkspacesContext; + + /** + * Create a WorkspaceFeatures. + * @param {AzureMachineLearningWorkspacesContext} client Reference to the service client. + */ + constructor(client: AzureMachineLearningWorkspacesContext) { + this.client = client; + } + + /** + * Lists all enabled features for a workspace + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param callback The callback + */ + list(resourceGroupName: string, workspaceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, workspaceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, workspaceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + workspaceName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Lists all enabled features for a workspace + * @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 listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListAmlUserFeatureResult + }, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListAmlUserFeatureResult + }, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; diff --git a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaces.ts b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaces.ts index 4f9cbb878a71..e9c9e5a2412a 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaces.ts +++ b/sdk/machinelearningservices/arm-machinelearningservices/src/operations/workspaces.ts @@ -9,6 +9,7 @@ */ 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/workspacesMappers"; import * as Parameters from "../models/parameters"; @@ -66,32 +67,9 @@ export class Workspaces { * @param [options] The optional parameters * @returns Promise */ - createOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, options?: msRest.RequestOptionsBase): Promise; - /** - * @param resourceGroupName Name of the resource group in which workspace is located. - * @param workspaceName Name of Azure Machine Learning workspace. - * @param parameters The parameters for creating or updating a machine learning workspace. - * @param callback The callback - */ - createOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName Name of the resource group in which workspace is located. - * @param workspaceName Name of Azure Machine Learning workspace. - * @param parameters The parameters for creating or updating a machine learning workspace. - * @param options The optional parameters - * @param callback The callback - */ - createOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - resourceGroupName, - workspaceName, - parameters, - options - }, - createOrUpdateOperationSpec, - callback) as Promise; + createOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, options?: msRest.RequestOptionsBase): Promise { + return this.beginCreateOrUpdate(resourceGroupName,workspaceName,parameters,options) + .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** @@ -280,6 +258,26 @@ export class Workspaces { callback) as Promise; } + /** + * Creates or updates a workspace with the specified parameters. + * @param resourceGroupName Name of the resource group in which workspace is located. + * @param workspaceName Name of Azure Machine Learning workspace. + * @param parameters The parameters for creating or updating a machine learning workspace. + * @param [options] The optional parameters + * @returns Promise + */ + beginCreateOrUpdate(resourceGroupName: string, workspaceName: string, parameters: Models.Workspace, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + workspaceName, + parameters, + options + }, + beginCreateOrUpdateOperationSpec, + options); + } + /** * Lists all the available machine learning workspaces under the specified resource group. * @param nextPageLink The NextLink from the previous successful call to List operation. @@ -364,41 +362,6 @@ const getOperationSpec: msRest.OperationSpec = { serializer }; -const createOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}", - urlParameters: [ - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.workspaceName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.Workspace, - required: true - } - }, - responses: { - 200: { - bodyMapper: Mappers.Workspace - }, - 201: { - bodyMapper: Mappers.Workspace - }, - default: { - bodyMapper: Mappers.MachineLearningServiceError - } - }, - serializer -}; - const deleteMethodOperationSpec: msRest.OperationSpec = { httpMethod: "DELETE", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}", @@ -552,6 +515,42 @@ const listBySubscriptionOperationSpec: msRest.OperationSpec = { serializer }; +const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.workspaceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "parameters", + mapper: { + ...Mappers.Workspace, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Workspace + }, + 201: { + bodyMapper: Mappers.Workspace + }, + 202: {}, + default: { + bodyMapper: Mappers.MachineLearningServiceError + } + }, + serializer +}; + const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", diff --git a/sdk/machinelearningservices/arm-machinelearningservices/tsconfig.json b/sdk/machinelearningservices/arm-machinelearningservices/tsconfig.json index 87bbf5b5fa49..422b584abd5e 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/tsconfig.json +++ b/sdk/machinelearningservices/arm-machinelearningservices/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "forceConsistentCasingInFileNames": true, - "lib": ["es6"], + "lib": ["es6", "dom"], "declaration": true, "outDir": "./esm", "importHelpers": true