diff --git a/lib/services/hdInsightManagement/README.md b/lib/services/hdInsightManagement/README.md index 3f1c3b8d46..730875cafc 100644 --- a/lib/services/hdInsightManagement/README.md +++ b/lib/services/hdInsightManagement/README.md @@ -3,22 +3,23 @@ uid: azure-arm-hdinsight summary: *content --- -# Microsoft Azure SDK for Node.js - HDInsightManagementClient +**This SDK will be deprecated next year and will be replaced by a new TypeScript-based isomorphic SDK (found at https://github.com/Azure/azure-sdk-for-js) which works on Node.js and browsers.** +## Microsoft Azure SDK for Node.js - HDInsightManagementClient This project provides a Node.js package for accessing Azure. Right now it supports: - **Node.js version 6.x.x or higher** -## Features +### Features -## How to Install +### How to Install ```bash npm install azure-arm-hdinsight ``` -## How to use +### How to use -### Authentication, client creation and get clusters as an example. +#### Authentication, client creation and get clusters as an example. ```javascript const msRestAzure = require("ms-rest-azure"); @@ -37,6 +38,6 @@ msRestAzure.interactiveLogin().then((creds) => { console.dir(err, {depth: null, colors: true}); }); -## Related projects +### Related projects - [Microsoft Azure SDK for Node.js](https://github.com/Azure/azure-sdk-for-node) diff --git a/lib/services/hdInsightManagement/lib/models/application.js b/lib/services/hdInsightManagement/lib/models/application.js index 948e9e9f9f..06c82d894f 100644 --- a/lib/services/hdInsightManagement/lib/models/application.js +++ b/lib/services/hdInsightManagement/lib/models/application.js @@ -20,29 +20,29 @@ const models = require('./index'); class Application extends models['ProxyResource'] { /** * Create a Application. - * @member {string} [etag] The ETag for the application - * @member {object} [tags] The tags for the application. - * @member {object} [properties] The properties of the application. - * @member {object} [properties.computeProfile] The list of roles in the + * @property {string} [etag] The ETag for the application + * @property {object} [tags] The tags for the application. + * @property {object} [properties] The properties of the application. + * @property {object} [properties.computeProfile] The list of roles in the * cluster. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {array} [properties.installScriptActions] The list of install - * script actions. - * @member {array} [properties.uninstallScriptActions] The list of uninstall + * @property {array} [properties.computeProfile.roles] The list of roles in + * the cluster. + * @property {array} [properties.installScriptActions] The list of install * script actions. - * @member {array} [properties.httpsEndpoints] The list of application HTTPS - * endpoints. - * @member {array} [properties.sshEndpoints] The list of application SSH + * @property {array} [properties.uninstallScriptActions] The list of + * uninstall script actions. + * @property {array} [properties.httpsEndpoints] The list of application + * HTTPS endpoints. + * @property {array} [properties.sshEndpoints] The list of application SSH * endpoints. - * @member {string} [properties.provisioningState] The provisioning state of - * the application. - * @member {string} [properties.applicationType] The application type. - * @member {string} [properties.applicationState] The application state. - * @member {array} [properties.errors] The list of errors. - * @member {string} [properties.createdDate] The application create date + * @property {string} [properties.provisioningState] The provisioning state + * of the application. + * @property {string} [properties.applicationType] The application type. + * @property {string} [properties.applicationState] The application state. + * @property {array} [properties.errors] The list of errors. + * @property {string} [properties.createdDate] The application create date * time. - * @member {string} [properties.marketplaceIdentifier] The marketplace + * @property {string} [properties.marketplaceIdentifier] The marketplace * identifier. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/applicationGetEndpoint.js b/lib/services/hdInsightManagement/lib/models/applicationGetEndpoint.js index ae30baa84a..a8aa0d2e43 100644 --- a/lib/services/hdInsightManagement/lib/models/applicationGetEndpoint.js +++ b/lib/services/hdInsightManagement/lib/models/applicationGetEndpoint.js @@ -17,9 +17,9 @@ class ApplicationGetEndpoint { /** * Create a ApplicationGetEndpoint. - * @member {string} [location] The location of the endpoint. - * @member {number} [destinationPort] The destination port to connect to. - * @member {number} [publicPort] The public port to connect to. + * @property {string} [location] The location of the endpoint. + * @property {number} [destinationPort] The destination port to connect to. + * @property {number} [publicPort] The public port to connect to. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/applicationGetHttpsEndpoint.js b/lib/services/hdInsightManagement/lib/models/applicationGetHttpsEndpoint.js index e70b41fa23..00067f5b26 100644 --- a/lib/services/hdInsightManagement/lib/models/applicationGetHttpsEndpoint.js +++ b/lib/services/hdInsightManagement/lib/models/applicationGetHttpsEndpoint.js @@ -17,11 +17,11 @@ class ApplicationGetHttpsEndpoint { /** * Create a ApplicationGetHttpsEndpoint. - * @member {array} [accessModes] The list of access modes for the + * @property {array} [accessModes] The list of access modes for the * application. - * @member {string} [location] The location of the endpoint. - * @member {number} [destinationPort] The destination port to connect to. - * @member {number} [publicPort] The public port to connect to. + * @property {string} [location] The location of the endpoint. + * @property {number} [destinationPort] The destination port to connect to. + * @property {number} [publicPort] The public port to connect to. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/applicationListResult.js b/lib/services/hdInsightManagement/lib/models/applicationListResult.js index e2c3aea269..38bcc3d715 100644 --- a/lib/services/hdInsightManagement/lib/models/applicationListResult.js +++ b/lib/services/hdInsightManagement/lib/models/applicationListResult.js @@ -17,8 +17,8 @@ class ApplicationListResult extends Array { /** * Create a ApplicationListResult. - * @member {string} [nextLink] The URL to get the next set of operation list - * results if there are any. + * @property {string} [nextLink] The URL to get the next set of operation + * list results if there are any. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/applicationProperties.js b/lib/services/hdInsightManagement/lib/models/applicationProperties.js index 56a383f31c..3aa6adc45f 100644 --- a/lib/services/hdInsightManagement/lib/models/applicationProperties.js +++ b/lib/services/hdInsightManagement/lib/models/applicationProperties.js @@ -17,20 +17,22 @@ class ApplicationProperties { /** * Create a ApplicationProperties. - * @member {object} [computeProfile] The list of roles in the cluster. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {array} [installScriptActions] The list of install script actions. - * @member {array} [uninstallScriptActions] The list of uninstall script + * @property {object} [computeProfile] The list of roles in the cluster. + * @property {array} [computeProfile.roles] The list of roles in the cluster. + * @property {array} [installScriptActions] The list of install script * actions. - * @member {array} [httpsEndpoints] The list of application HTTPS endpoints. - * @member {array} [sshEndpoints] The list of application SSH endpoints. - * @member {string} [provisioningState] The provisioning state of the + * @property {array} [uninstallScriptActions] The list of uninstall script + * actions. + * @property {array} [httpsEndpoints] The list of application HTTPS + * endpoints. + * @property {array} [sshEndpoints] The list of application SSH endpoints. + * @property {string} [provisioningState] The provisioning state of the * application. - * @member {string} [applicationType] The application type. - * @member {string} [applicationState] The application state. - * @member {array} [errors] The list of errors. - * @member {string} [createdDate] The application create date time. - * @member {string} [marketplaceIdentifier] The marketplace identifier. + * @property {string} [applicationType] The application type. + * @property {string} [applicationState] The application state. + * @property {array} [errors] The list of errors. + * @property {string} [createdDate] The application create date time. + * @property {string} [marketplaceIdentifier] The marketplace identifier. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/cluster.js b/lib/services/hdInsightManagement/lib/models/cluster.js index 1729397f80..d79eeba0c8 100644 --- a/lib/services/hdInsightManagement/lib/models/cluster.js +++ b/lib/services/hdInsightManagement/lib/models/cluster.js @@ -20,70 +20,86 @@ const models = require('./index'); class Cluster extends models['TrackedResource'] { /** * Create a Cluster. - * @member {string} [etag] The ETag for the resource - * @member {object} [properties] The properties of the cluster. - * @member {string} [properties.clusterVersion] The version of the cluster. - * @member {string} [properties.osType] The type of operating system. + * @property {string} [etag] The ETag for the resource + * @property {object} [properties] The properties of the cluster. + * @property {string} [properties.clusterVersion] The version of the cluster. + * @property {string} [properties.osType] The type of operating system. * Possible values include: 'Windows', 'Linux' - * @member {string} [properties.tier] The cluster tier. Possible values + * @property {string} [properties.tier] The cluster tier. Possible values * include: 'Standard', 'Premium' - * @member {object} [properties.clusterDefinition] The cluster definition. - * @member {string} [properties.clusterDefinition.blueprint] The link to the - * blueprint. - * @member {string} [properties.clusterDefinition.kind] The type of cluster. - * @member {object} [properties.clusterDefinition.componentVersion] The + * @property {object} [properties.clusterDefinition] The cluster definition. + * @property {string} [properties.clusterDefinition.blueprint] The link to + * the blueprint. + * @property {string} [properties.clusterDefinition.kind] The type of + * cluster. + * @property {object} [properties.clusterDefinition.componentVersion] The * versions of different services in the cluster. - * @member {object} [properties.clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [properties.securityProfile] The security profile. - * @member {string} [properties.securityProfile.directoryType] The directory - * type. Possible values include: 'ActiveDirectory' - * @member {string} [properties.securityProfile.domain] The organization's + * @property {object} [properties.clusterDefinition.configurations] The + * cluster configurations. + * @property {object} [properties.securityProfile] The security profile. + * @property {string} [properties.securityProfile.directoryType] The + * directory type. Possible values include: 'ActiveDirectory' + * @property {string} [properties.securityProfile.domain] The organization's * active directory domain. - * @member {string} [properties.securityProfile.organizationalUnitDN] The + * @property {string} [properties.securityProfile.organizationalUnitDN] The * organizational unit within the Active Directory to place the cluster and * service accounts. - * @member {array} [properties.securityProfile.ldapsUrls] The LDAPS protocol - * URLs to communicate with the Active Directory. - * @member {string} [properties.securityProfile.domainUsername] The domain + * @property {array} [properties.securityProfile.ldapsUrls] The LDAPS + * protocol URLs to communicate with the Active Directory. + * @property {string} [properties.securityProfile.domainUsername] The domain * user account that will have admin privileges on the cluster. - * @member {string} [properties.securityProfile.domainUserPassword] The + * @property {string} [properties.securityProfile.domainUserPassword] The * domain admin password. - * @member {array} [properties.securityProfile.clusterUsersGroupDNs] + * @property {array} [properties.securityProfile.clusterUsersGroupDNs] * Optional. The Distinguished Names for cluster user groups - * @member {string} [properties.securityProfile.aaddsResourceId] The resource - * ID of the user's Azure Active Directory Domain Service. - * @member {string} [properties.securityProfile.msiResourceId] User assigned - * identity that has permissions to read and create cluster-related artifacts - * in the user's AADDS. - * @member {object} [properties.computeProfile] The compute profile. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {string} [properties.provisioningState] The provisioning state, + * @property {string} [properties.securityProfile.aaddsResourceId] The + * resource ID of the user's Azure Active Directory Domain Service. + * @property {string} [properties.securityProfile.msiResourceId] User + * assigned identity that has permissions to read and create cluster-related + * artifacts in the user's AADDS. + * @property {object} [properties.computeProfile] The compute profile. + * @property {array} [properties.computeProfile.roles] The list of roles in + * the cluster. + * @property {string} [properties.provisioningState] The provisioning state, * which only appears in the response. Possible values include: 'InProgress', * 'Failed', 'Succeeded', 'Canceled', 'Deleting' - * @member {string} [properties.createdDate] The date on which the cluster + * @property {string} [properties.createdDate] The date on which the cluster * was created. - * @member {string} [properties.clusterState] The state of the cluster. - * @member {object} [properties.quotaInfo] The quota information. - * @member {number} [properties.quotaInfo.coresUsed] The cores used by the + * @property {string} [properties.clusterState] The state of the cluster. + * @property {object} [properties.quotaInfo] The quota information. + * @property {number} [properties.quotaInfo.coresUsed] The cores used by the * cluster. - * @member {array} [properties.errors] The list of errors. - * @member {array} [properties.connectivityEndpoints] The list of + * @property {array} [properties.errors] The list of errors. + * @property {array} [properties.connectivityEndpoints] The list of * connectivity endpoints. - * @member {object} [identity] The identity of the cluster, if configured. - * @member {string} [identity.principalId] The principal id of cluster + * @property {object} [properties.diskEncryptionProperties] The disk + * encryption properties. + * @property {string} [properties.diskEncryptionProperties.vaultUri] Base key + * vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * @property {string} [properties.diskEncryptionProperties.keyName] Key name + * that is used for enabling disk encryption. + * @property {string} [properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * @property {string} + * [properties.diskEncryptionProperties.encryptionAlgorithm] Algorithm + * identifier for encryption, default RSA-OAEP. Possible values include: + * 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * @property {string} [properties.diskEncryptionProperties.msiResourceId] + * Resource ID of Managed Identity that is used to access the key vault. + * @property {object} [identity] The identity of the cluster, if configured. + * @property {string} [identity.principalId] The principal id of cluster * identity. This property will only be provided for a system assigned * identity. - * @member {string} [identity.tenantId] The tenant id associated with the + * @property {string} [identity.tenantId] The tenant id associated with the * cluster. This property will only be provided for a system assigned * identity. - * @member {string} [identity.type] The type of identity used for the + * @property {string} [identity.type] The type of identity used for the * cluster. The type 'SystemAssigned, UserAssigned' includes both an * implicitly created identity and a set of user assigned identities. * Possible values include: 'SystemAssigned', 'UserAssigned', * 'SystemAssigned, UserAssigned', 'None' - * @member {object} [identity.userAssignedIdentities] The list of user + * @property {object} [identity.userAssignedIdentities] The list of user * identities associated with the cluster. The user identity dictionary key * references will be ARM resource ids in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. diff --git a/lib/services/hdInsightManagement/lib/models/clusterCreateParametersExtended.js b/lib/services/hdInsightManagement/lib/models/clusterCreateParametersExtended.js index 107334b35e..5f0185b3ed 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterCreateParametersExtended.js +++ b/lib/services/hdInsightManagement/lib/models/clusterCreateParametersExtended.js @@ -17,62 +17,78 @@ class ClusterCreateParametersExtended { /** * Create a ClusterCreateParametersExtended. - * @member {string} [location] The location of the cluster. - * @member {object} [tags] The resource tags. - * @member {object} [properties] The cluster create parameters. - * @member {string} [properties.clusterVersion] The version of the cluster. - * @member {string} [properties.osType] The type of operating system. + * @property {string} [location] The location of the cluster. + * @property {object} [tags] The resource tags. + * @property {object} [properties] The cluster create parameters. + * @property {string} [properties.clusterVersion] The version of the cluster. + * @property {string} [properties.osType] The type of operating system. * Possible values include: 'Windows', 'Linux' - * @member {string} [properties.tier] The cluster tier. Possible values + * @property {string} [properties.tier] The cluster tier. Possible values * include: 'Standard', 'Premium' - * @member {object} [properties.clusterDefinition] The cluster definition. - * @member {string} [properties.clusterDefinition.blueprint] The link to the - * blueprint. - * @member {string} [properties.clusterDefinition.kind] The type of cluster. - * @member {object} [properties.clusterDefinition.componentVersion] The + * @property {object} [properties.clusterDefinition] The cluster definition. + * @property {string} [properties.clusterDefinition.blueprint] The link to + * the blueprint. + * @property {string} [properties.clusterDefinition.kind] The type of + * cluster. + * @property {object} [properties.clusterDefinition.componentVersion] The * versions of different services in the cluster. - * @member {object} [properties.clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [properties.securityProfile] The security profile. - * @member {string} [properties.securityProfile.directoryType] The directory - * type. Possible values include: 'ActiveDirectory' - * @member {string} [properties.securityProfile.domain] The organization's + * @property {object} [properties.clusterDefinition.configurations] The + * cluster configurations. + * @property {object} [properties.securityProfile] The security profile. + * @property {string} [properties.securityProfile.directoryType] The + * directory type. Possible values include: 'ActiveDirectory' + * @property {string} [properties.securityProfile.domain] The organization's * active directory domain. - * @member {string} [properties.securityProfile.organizationalUnitDN] The + * @property {string} [properties.securityProfile.organizationalUnitDN] The * organizational unit within the Active Directory to place the cluster and * service accounts. - * @member {array} [properties.securityProfile.ldapsUrls] The LDAPS protocol - * URLs to communicate with the Active Directory. - * @member {string} [properties.securityProfile.domainUsername] The domain + * @property {array} [properties.securityProfile.ldapsUrls] The LDAPS + * protocol URLs to communicate with the Active Directory. + * @property {string} [properties.securityProfile.domainUsername] The domain * user account that will have admin privileges on the cluster. - * @member {string} [properties.securityProfile.domainUserPassword] The + * @property {string} [properties.securityProfile.domainUserPassword] The * domain admin password. - * @member {array} [properties.securityProfile.clusterUsersGroupDNs] + * @property {array} [properties.securityProfile.clusterUsersGroupDNs] * Optional. The Distinguished Names for cluster user groups - * @member {string} [properties.securityProfile.aaddsResourceId] The resource - * ID of the user's Azure Active Directory Domain Service. - * @member {string} [properties.securityProfile.msiResourceId] User assigned - * identity that has permissions to read and create cluster-related artifacts - * in the user's AADDS. - * @member {object} [properties.computeProfile] The compute profile. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {object} [properties.storageProfile] The storage profile. - * @member {array} [properties.storageProfile.storageaccounts] The list of + * @property {string} [properties.securityProfile.aaddsResourceId] The + * resource ID of the user's Azure Active Directory Domain Service. + * @property {string} [properties.securityProfile.msiResourceId] User + * assigned identity that has permissions to read and create cluster-related + * artifacts in the user's AADDS. + * @property {object} [properties.computeProfile] The compute profile. + * @property {array} [properties.computeProfile.roles] The list of roles in + * the cluster. + * @property {object} [properties.storageProfile] The storage profile. + * @property {array} [properties.storageProfile.storageaccounts] The list of * storage accounts in the cluster. - * @member {object} [identity] The identity of the cluster, if configured. - * @member {string} [identity.principalId] The principal id of cluster + * @property {object} [properties.diskEncryptionProperties] The disk + * encryption properties. + * @property {string} [properties.diskEncryptionProperties.vaultUri] Base key + * vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * @property {string} [properties.diskEncryptionProperties.keyName] Key name + * that is used for enabling disk encryption. + * @property {string} [properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * @property {string} + * [properties.diskEncryptionProperties.encryptionAlgorithm] Algorithm + * identifier for encryption, default RSA-OAEP. Possible values include: + * 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * @property {string} [properties.diskEncryptionProperties.msiResourceId] + * Resource ID of Managed Identity that is used to access the key vault. + * @property {object} [identity] The identity of the cluster, if configured. + * @property {string} [identity.principalId] The principal id of cluster * identity. This property will only be provided for a system assigned * identity. - * @member {string} [identity.tenantId] The tenant id associated with the + * @property {string} [identity.tenantId] The tenant id associated with the * cluster. This property will only be provided for a system assigned * identity. - * @member {string} [identity.type] The type of identity used for the + * @property {string} [identity.type] The type of identity used for the * cluster. The type 'SystemAssigned, UserAssigned' includes both an * implicitly created identity and a set of user assigned identities. * Possible values include: 'SystemAssigned', 'UserAssigned', * 'SystemAssigned, UserAssigned', 'None' - * @member {object} [identity.userAssignedIdentities] The list of user + * @property {object} [identity.userAssignedIdentities] The list of user * identities associated with the cluster. The user identity dictionary key * references will be ARM resource ids in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. diff --git a/lib/services/hdInsightManagement/lib/models/clusterCreateProperties.js b/lib/services/hdInsightManagement/lib/models/clusterCreateProperties.js index 9e4cec42e3..644e35cf4e 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterCreateProperties.js +++ b/lib/services/hdInsightManagement/lib/models/clusterCreateProperties.js @@ -17,44 +17,58 @@ class ClusterCreateProperties { /** * Create a ClusterCreateProperties. - * @member {string} [clusterVersion] The version of the cluster. - * @member {string} [osType] The type of operating system. Possible values + * @property {string} [clusterVersion] The version of the cluster. + * @property {string} [osType] The type of operating system. Possible values * include: 'Windows', 'Linux' - * @member {string} [tier] The cluster tier. Possible values include: + * @property {string} [tier] The cluster tier. Possible values include: * 'Standard', 'Premium' - * @member {object} [clusterDefinition] The cluster definition. - * @member {string} [clusterDefinition.blueprint] The link to the blueprint. - * @member {string} [clusterDefinition.kind] The type of cluster. - * @member {object} [clusterDefinition.componentVersion] The versions of + * @property {object} [clusterDefinition] The cluster definition. + * @property {string} [clusterDefinition.blueprint] The link to the + * blueprint. + * @property {string} [clusterDefinition.kind] The type of cluster. + * @property {object} [clusterDefinition.componentVersion] The versions of * different services in the cluster. - * @member {object} [clusterDefinition.configurations] The cluster + * @property {object} [clusterDefinition.configurations] The cluster * configurations. - * @member {object} [securityProfile] The security profile. - * @member {string} [securityProfile.directoryType] The directory type. + * @property {object} [securityProfile] The security profile. + * @property {string} [securityProfile.directoryType] The directory type. * Possible values include: 'ActiveDirectory' - * @member {string} [securityProfile.domain] The organization's active + * @property {string} [securityProfile.domain] The organization's active * directory domain. - * @member {string} [securityProfile.organizationalUnitDN] The organizational - * unit within the Active Directory to place the cluster and service - * accounts. - * @member {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to + * @property {string} [securityProfile.organizationalUnitDN] The + * organizational unit within the Active Directory to place the cluster and + * service accounts. + * @property {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to * communicate with the Active Directory. - * @member {string} [securityProfile.domainUsername] The domain user account - * that will have admin privileges on the cluster. - * @member {string} [securityProfile.domainUserPassword] The domain admin + * @property {string} [securityProfile.domainUsername] The domain user + * account that will have admin privileges on the cluster. + * @property {string} [securityProfile.domainUserPassword] The domain admin * password. - * @member {array} [securityProfile.clusterUsersGroupDNs] Optional. The + * @property {array} [securityProfile.clusterUsersGroupDNs] Optional. The * Distinguished Names for cluster user groups - * @member {string} [securityProfile.aaddsResourceId] The resource ID of the - * user's Azure Active Directory Domain Service. - * @member {string} [securityProfile.msiResourceId] User assigned identity + * @property {string} [securityProfile.aaddsResourceId] The resource ID of + * the user's Azure Active Directory Domain Service. + * @property {string} [securityProfile.msiResourceId] User assigned identity * that has permissions to read and create cluster-related artifacts in the * user's AADDS. - * @member {object} [computeProfile] The compute profile. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {object} [storageProfile] The storage profile. - * @member {array} [storageProfile.storageaccounts] The list of storage + * @property {object} [computeProfile] The compute profile. + * @property {array} [computeProfile.roles] The list of roles in the cluster. + * @property {object} [storageProfile] The storage profile. + * @property {array} [storageProfile.storageaccounts] The list of storage * accounts in the cluster. + * @property {object} [diskEncryptionProperties] The disk encryption + * properties. + * @property {string} [diskEncryptionProperties.vaultUri] Base key vault URI + * where the customers key is located eg. https://myvault.vault.azure.net + * @property {string} [diskEncryptionProperties.keyName] Key name that is + * used for enabling disk encryption. + * @property {string} [diskEncryptionProperties.keyVersion] Specific key + * version that is used for enabling disk encryption. + * @property {string} [diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * @property {string} [diskEncryptionProperties.msiResourceId] Resource ID of + * Managed Identity that is used to access the key vault. */ constructor() { } @@ -127,6 +141,14 @@ class ClusterCreateProperties { name: 'Composite', className: 'StorageProfile' } + }, + diskEncryptionProperties: { + required: false, + serializedName: 'diskEncryptionProperties', + type: { + name: 'Composite', + className: 'DiskEncryptionProperties' + } } } } diff --git a/lib/services/hdInsightManagement/lib/models/clusterDefinition.js b/lib/services/hdInsightManagement/lib/models/clusterDefinition.js index 5383294934..4e46ee97bf 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterDefinition.js +++ b/lib/services/hdInsightManagement/lib/models/clusterDefinition.js @@ -17,11 +17,11 @@ class ClusterDefinition { /** * Create a ClusterDefinition. - * @member {string} [blueprint] The link to the blueprint. - * @member {string} [kind] The type of cluster. - * @member {object} [componentVersion] The versions of different services in - * the cluster. - * @member {object} [configurations] The cluster configurations. + * @property {string} [blueprint] The link to the blueprint. + * @property {string} [kind] The type of cluster. + * @property {object} [componentVersion] The versions of different services + * in the cluster. + * @property {object} [configurations] The cluster configurations. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/clusterDiskEncryptionParameters.js b/lib/services/hdInsightManagement/lib/models/clusterDiskEncryptionParameters.js new file mode 100644 index 0000000000..27a9b30ae1 --- /dev/null +++ b/lib/services/hdInsightManagement/lib/models/clusterDiskEncryptionParameters.js @@ -0,0 +1,71 @@ +/* + * 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. + */ + +'use strict'; + +/** + * The Disk Encryption Cluster request parameters. + * + */ +class ClusterDiskEncryptionParameters { + /** + * Create a ClusterDiskEncryptionParameters. + * @property {string} [vaultUri] Base key vault URI where the customers key + * is located eg. https://myvault.vault.azure.net + * @property {string} [keyName] Key name that is used for enabling disk + * encryption. + * @property {string} [keyVersion] Specific key version that is used for + * enabling disk encryption. + */ + constructor() { + } + + /** + * Defines the metadata of ClusterDiskEncryptionParameters + * + * @returns {object} metadata of ClusterDiskEncryptionParameters + * + */ + mapper() { + return { + required: false, + serializedName: 'ClusterDiskEncryptionParameters', + type: { + name: 'Composite', + className: 'ClusterDiskEncryptionParameters', + modelProperties: { + vaultUri: { + required: false, + serializedName: 'vaultUri', + type: { + name: 'String' + } + }, + keyName: { + required: false, + serializedName: 'keyName', + type: { + name: 'String' + } + }, + keyVersion: { + required: false, + serializedName: 'keyVersion', + type: { + name: 'String' + } + } + } + } + }; + } +} + +module.exports = ClusterDiskEncryptionParameters; diff --git a/lib/services/hdInsightManagement/lib/models/clusterGetProperties.js b/lib/services/hdInsightManagement/lib/models/clusterGetProperties.js index bc5dcbc986..697b36f7ba 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterGetProperties.js +++ b/lib/services/hdInsightManagement/lib/models/clusterGetProperties.js @@ -17,51 +17,66 @@ class ClusterGetProperties { /** * Create a ClusterGetProperties. - * @member {string} [clusterVersion] The version of the cluster. - * @member {string} [osType] The type of operating system. Possible values + * @property {string} [clusterVersion] The version of the cluster. + * @property {string} [osType] The type of operating system. Possible values * include: 'Windows', 'Linux' - * @member {string} [tier] The cluster tier. Possible values include: + * @property {string} [tier] The cluster tier. Possible values include: * 'Standard', 'Premium' - * @member {object} clusterDefinition The cluster definition. - * @member {string} [clusterDefinition.blueprint] The link to the blueprint. - * @member {string} [clusterDefinition.kind] The type of cluster. - * @member {object} [clusterDefinition.componentVersion] The versions of + * @property {object} clusterDefinition The cluster definition. + * @property {string} [clusterDefinition.blueprint] The link to the + * blueprint. + * @property {string} [clusterDefinition.kind] The type of cluster. + * @property {object} [clusterDefinition.componentVersion] The versions of * different services in the cluster. - * @member {object} [clusterDefinition.configurations] The cluster + * @property {object} [clusterDefinition.configurations] The cluster * configurations. - * @member {object} [securityProfile] The security profile. - * @member {string} [securityProfile.directoryType] The directory type. + * @property {object} [securityProfile] The security profile. + * @property {string} [securityProfile.directoryType] The directory type. * Possible values include: 'ActiveDirectory' - * @member {string} [securityProfile.domain] The organization's active + * @property {string} [securityProfile.domain] The organization's active * directory domain. - * @member {string} [securityProfile.organizationalUnitDN] The organizational - * unit within the Active Directory to place the cluster and service - * accounts. - * @member {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to + * @property {string} [securityProfile.organizationalUnitDN] The + * organizational unit within the Active Directory to place the cluster and + * service accounts. + * @property {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to * communicate with the Active Directory. - * @member {string} [securityProfile.domainUsername] The domain user account - * that will have admin privileges on the cluster. - * @member {string} [securityProfile.domainUserPassword] The domain admin + * @property {string} [securityProfile.domainUsername] The domain user + * account that will have admin privileges on the cluster. + * @property {string} [securityProfile.domainUserPassword] The domain admin * password. - * @member {array} [securityProfile.clusterUsersGroupDNs] Optional. The + * @property {array} [securityProfile.clusterUsersGroupDNs] Optional. The * Distinguished Names for cluster user groups - * @member {string} [securityProfile.aaddsResourceId] The resource ID of the - * user's Azure Active Directory Domain Service. - * @member {string} [securityProfile.msiResourceId] User assigned identity + * @property {string} [securityProfile.aaddsResourceId] The resource ID of + * the user's Azure Active Directory Domain Service. + * @property {string} [securityProfile.msiResourceId] User assigned identity * that has permissions to read and create cluster-related artifacts in the * user's AADDS. - * @member {object} [computeProfile] The compute profile. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {string} [provisioningState] The provisioning state, which only + * @property {object} [computeProfile] The compute profile. + * @property {array} [computeProfile.roles] The list of roles in the cluster. + * @property {string} [provisioningState] The provisioning state, which only * appears in the response. Possible values include: 'InProgress', 'Failed', * 'Succeeded', 'Canceled', 'Deleting' - * @member {string} [createdDate] The date on which the cluster was created. - * @member {string} [clusterState] The state of the cluster. - * @member {object} [quotaInfo] The quota information. - * @member {number} [quotaInfo.coresUsed] The cores used by the cluster. - * @member {array} [errors] The list of errors. - * @member {array} [connectivityEndpoints] The list of connectivity + * @property {string} [createdDate] The date on which the cluster was + * created. + * @property {string} [clusterState] The state of the cluster. + * @property {object} [quotaInfo] The quota information. + * @property {number} [quotaInfo.coresUsed] The cores used by the cluster. + * @property {array} [errors] The list of errors. + * @property {array} [connectivityEndpoints] The list of connectivity * endpoints. + * @property {object} [diskEncryptionProperties] The disk encryption + * properties. + * @property {string} [diskEncryptionProperties.vaultUri] Base key vault URI + * where the customers key is located eg. https://myvault.vault.azure.net + * @property {string} [diskEncryptionProperties.keyName] Key name that is + * used for enabling disk encryption. + * @property {string} [diskEncryptionProperties.keyVersion] Specific key + * version that is used for enabling disk encryption. + * @property {string} [diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * @property {string} [diskEncryptionProperties.msiResourceId] Resource ID of + * Managed Identity that is used to access the key vault. */ constructor() { } @@ -186,6 +201,14 @@ class ClusterGetProperties { } } } + }, + diskEncryptionProperties: { + required: false, + serializedName: 'diskEncryptionProperties', + type: { + name: 'Composite', + className: 'DiskEncryptionProperties' + } } } } diff --git a/lib/services/hdInsightManagement/lib/models/clusterIdentity.js b/lib/services/hdInsightManagement/lib/models/clusterIdentity.js index 68ca7b954f..0840764814 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterIdentity.js +++ b/lib/services/hdInsightManagement/lib/models/clusterIdentity.js @@ -17,15 +17,15 @@ class ClusterIdentity { /** * Create a ClusterIdentity. - * @member {string} [principalId] The principal id of cluster identity. This - * property will only be provided for a system assigned identity. - * @member {string} [tenantId] The tenant id associated with the cluster. + * @property {string} [principalId] The principal id of cluster identity. * This property will only be provided for a system assigned identity. - * @member {string} [type] The type of identity used for the cluster. The + * @property {string} [tenantId] The tenant id associated with the cluster. + * This property will only be provided for a system assigned identity. + * @property {string} [type] The type of identity used for the cluster. The * type 'SystemAssigned, UserAssigned' includes both an implicitly created * identity and a set of user assigned identities. Possible values include: * 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' - * @member {object} [userAssignedIdentities] The list of user identities + * @property {object} [userAssignedIdentities] The list of user identities * associated with the cluster. The user identity dictionary key references * will be ARM resource ids in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. diff --git a/lib/services/hdInsightManagement/lib/models/clusterIdentityUserAssignedIdentitiesValue.js b/lib/services/hdInsightManagement/lib/models/clusterIdentityUserAssignedIdentitiesValue.js index 1f81b839d9..1c5af8a949 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterIdentityUserAssignedIdentitiesValue.js +++ b/lib/services/hdInsightManagement/lib/models/clusterIdentityUserAssignedIdentitiesValue.js @@ -16,8 +16,9 @@ class ClusterIdentityUserAssignedIdentitiesValue { /** * Create a ClusterIdentityUserAssignedIdentitiesValue. - * @member {string} [principalId] The principal id of user assigned identity. - * @member {string} [clientId] The client id of user assigned identity. + * @property {string} [principalId] The principal id of user assigned + * identity. + * @property {string} [clientId] The client id of user assigned identity. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/clusterListPersistedScriptActionsResult.js b/lib/services/hdInsightManagement/lib/models/clusterListPersistedScriptActionsResult.js index 220986673e..795d917d3f 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterListPersistedScriptActionsResult.js +++ b/lib/services/hdInsightManagement/lib/models/clusterListPersistedScriptActionsResult.js @@ -17,8 +17,8 @@ class ClusterListPersistedScriptActionsResult { /** * Create a ClusterListPersistedScriptActionsResult. - * @member {array} [value] The list of Persisted Script Actions. - * @member {string} [nextLink] The link (url) to the next page of results. + * @property {array} [value] The list of Persisted Script Actions. + * @property {string} [nextLink] The link (url) to the next page of results. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/clusterListResult.js b/lib/services/hdInsightManagement/lib/models/clusterListResult.js index 1a631acfea..c4a0b88722 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterListResult.js +++ b/lib/services/hdInsightManagement/lib/models/clusterListResult.js @@ -16,7 +16,7 @@ class ClusterListResult extends Array { /** * Create a ClusterListResult. - * @member {string} [nextLink] The link (url) to the next page of results. + * @property {string} [nextLink] The link (url) to the next page of results. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/clusterListRuntimeScriptActionDetailResult.js b/lib/services/hdInsightManagement/lib/models/clusterListRuntimeScriptActionDetailResult.js index 8f4730c4c6..0e5f005ad0 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterListRuntimeScriptActionDetailResult.js +++ b/lib/services/hdInsightManagement/lib/models/clusterListRuntimeScriptActionDetailResult.js @@ -17,9 +17,9 @@ class ClusterListRuntimeScriptActionDetailResult { /** * Create a ClusterListRuntimeScriptActionDetailResult. - * @member {array} [value] The list of persisted script action details for + * @property {array} [value] The list of persisted script action details for * the cluster. - * @member {string} [nextLink] The link (url) to the next page of results. + * @property {string} [nextLink] The link (url) to the next page of results. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/clusterMonitoringRequest.js b/lib/services/hdInsightManagement/lib/models/clusterMonitoringRequest.js index f3e9c3ee65..418f250754 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterMonitoringRequest.js +++ b/lib/services/hdInsightManagement/lib/models/clusterMonitoringRequest.js @@ -17,9 +17,9 @@ class ClusterMonitoringRequest { /** * Create a ClusterMonitoringRequest. - * @member {string} [workspaceId] The Operations Management Suite (OMS) + * @property {string} [workspaceId] The Operations Management Suite (OMS) * workspace ID. - * @member {string} [primaryKey] The Operations Management Suite (OMS) + * @property {string} [primaryKey] The Operations Management Suite (OMS) * workspace key. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/clusterMonitoringResponse.js b/lib/services/hdInsightManagement/lib/models/clusterMonitoringResponse.js index 31ff720c34..be74045da3 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterMonitoringResponse.js +++ b/lib/services/hdInsightManagement/lib/models/clusterMonitoringResponse.js @@ -17,9 +17,9 @@ class ClusterMonitoringResponse { /** * Create a ClusterMonitoringResponse. - * @member {boolean} [clusterMonitoringEnabled] The status of the Operations - * Management Suite (OMS) on the HDInsight cluster. - * @member {string} [workspaceId] The workspace ID of the Operations + * @property {boolean} [clusterMonitoringEnabled] The status of the + * Operations Management Suite (OMS) on the HDInsight cluster. + * @property {string} [workspaceId] The workspace ID of the Operations * Management Suite (OMS) on the HDInsight cluster. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/clusterPatchParameters.js b/lib/services/hdInsightManagement/lib/models/clusterPatchParameters.js index 1b9ef6a912..4534968139 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterPatchParameters.js +++ b/lib/services/hdInsightManagement/lib/models/clusterPatchParameters.js @@ -17,7 +17,7 @@ class ClusterPatchParameters { /** * Create a ClusterPatchParameters. - * @member {object} [tags] The resource tags. + * @property {object} [tags] The resource tags. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/clusterResizeParameters.js b/lib/services/hdInsightManagement/lib/models/clusterResizeParameters.js index 7213bf2099..6451a20034 100644 --- a/lib/services/hdInsightManagement/lib/models/clusterResizeParameters.js +++ b/lib/services/hdInsightManagement/lib/models/clusterResizeParameters.js @@ -17,7 +17,7 @@ class ClusterResizeParameters { /** * Create a ClusterResizeParameters. - * @member {number} [targetInstanceCount] The target instance count for the + * @property {number} [targetInstanceCount] The target instance count for the * operation. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/computeProfile.js b/lib/services/hdInsightManagement/lib/models/computeProfile.js index 2d1af1b30e..d714fb225d 100644 --- a/lib/services/hdInsightManagement/lib/models/computeProfile.js +++ b/lib/services/hdInsightManagement/lib/models/computeProfile.js @@ -17,7 +17,7 @@ class ComputeProfile { /** * Create a ComputeProfile. - * @member {array} [roles] The list of roles in the cluster. + * @property {array} [roles] The list of roles in the cluster. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/connectivityEndpoint.js b/lib/services/hdInsightManagement/lib/models/connectivityEndpoint.js index 40174d8520..e90cf624e8 100644 --- a/lib/services/hdInsightManagement/lib/models/connectivityEndpoint.js +++ b/lib/services/hdInsightManagement/lib/models/connectivityEndpoint.js @@ -17,10 +17,10 @@ class ConnectivityEndpoint { /** * Create a ConnectivityEndpoint. - * @member {string} [name] The name of the endpoint. - * @member {string} [protocol] The protocol of the endpoint. - * @member {string} [location] The location of the endpoint. - * @member {number} [port] The port to connect to. + * @property {string} [name] The name of the endpoint. + * @property {string} [protocol] The protocol of the endpoint. + * @property {string} [location] The location of the endpoint. + * @property {number} [port] The port to connect to. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/dataDisksGroups.js b/lib/services/hdInsightManagement/lib/models/dataDisksGroups.js index 642a1a2ef3..8c9cb792ac 100644 --- a/lib/services/hdInsightManagement/lib/models/dataDisksGroups.js +++ b/lib/services/hdInsightManagement/lib/models/dataDisksGroups.js @@ -17,10 +17,10 @@ class DataDisksGroups { /** * Create a DataDisksGroups. - * @member {number} [disksPerNode] The number of disks per node. - * @member {string} [storageAccountType] ReadOnly. The storage account type. - * Do not set this value. - * @member {number} [diskSizeGB] ReadOnly. The DiskSize in GB. Do not set + * @property {number} [disksPerNode] The number of disks per node. + * @property {string} [storageAccountType] ReadOnly. The storage account + * type. Do not set this value. + * @property {number} [diskSizeGB] ReadOnly. The DiskSize in GB. Do not set * this value. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/diskEncryptionProperties.js b/lib/services/hdInsightManagement/lib/models/diskEncryptionProperties.js new file mode 100644 index 0000000000..d474ad19a9 --- /dev/null +++ b/lib/services/hdInsightManagement/lib/models/diskEncryptionProperties.js @@ -0,0 +1,90 @@ +/* + * 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. + */ + +'use strict'; + +/** + * The disk encryption properties + * + */ +class DiskEncryptionProperties { + /** + * Create a DiskEncryptionProperties. + * @property {string} [vaultUri] Base key vault URI where the customers key + * is located eg. https://myvault.vault.azure.net + * @property {string} [keyName] Key name that is used for enabling disk + * encryption. + * @property {string} [keyVersion] Specific key version that is used for + * enabling disk encryption. + * @property {string} [encryptionAlgorithm] Algorithm identifier for + * encryption, default RSA-OAEP. Possible values include: 'RSA-OAEP', + * 'RSA-OAEP-256', 'RSA1_5' + * @property {string} [msiResourceId] Resource ID of Managed Identity that is + * used to access the key vault. + */ + constructor() { + } + + /** + * Defines the metadata of DiskEncryptionProperties + * + * @returns {object} metadata of DiskEncryptionProperties + * + */ + mapper() { + return { + required: false, + serializedName: 'DiskEncryptionProperties', + type: { + name: 'Composite', + className: 'DiskEncryptionProperties', + modelProperties: { + vaultUri: { + required: false, + serializedName: 'vaultUri', + type: { + name: 'String' + } + }, + keyName: { + required: false, + serializedName: 'keyName', + type: { + name: 'String' + } + }, + keyVersion: { + required: false, + serializedName: 'keyVersion', + type: { + name: 'String' + } + }, + encryptionAlgorithm: { + required: false, + serializedName: 'encryptionAlgorithm', + type: { + name: 'String' + } + }, + msiResourceId: { + required: false, + serializedName: 'msiResourceId', + type: { + name: 'String' + } + } + } + } + }; + } +} + +module.exports = DiskEncryptionProperties; diff --git a/lib/services/hdInsightManagement/lib/models/errorResponse.js b/lib/services/hdInsightManagement/lib/models/errorResponse.js index f952d62061..fc85ac1b8b 100644 --- a/lib/services/hdInsightManagement/lib/models/errorResponse.js +++ b/lib/services/hdInsightManagement/lib/models/errorResponse.js @@ -17,8 +17,8 @@ class ErrorResponse { /** * Create a ErrorResponse. - * @member {string} [code] Error code - * @member {string} [message] Error message indicating why the operation + * @property {string} [code] Error code + * @property {string} [message] Error message indicating why the operation * failed. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/errors.js b/lib/services/hdInsightManagement/lib/models/errors.js index ab1430cd14..4deee28cff 100644 --- a/lib/services/hdInsightManagement/lib/models/errors.js +++ b/lib/services/hdInsightManagement/lib/models/errors.js @@ -17,8 +17,8 @@ class Errors { /** * Create a Errors. - * @member {string} [code] The error code. - * @member {string} [message] The error message. + * @property {string} [code] The error code. + * @property {string} [message] The error message. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/executeScriptActionParameters.js b/lib/services/hdInsightManagement/lib/models/executeScriptActionParameters.js index bc6eb15ead..186b4ed1bf 100644 --- a/lib/services/hdInsightManagement/lib/models/executeScriptActionParameters.js +++ b/lib/services/hdInsightManagement/lib/models/executeScriptActionParameters.js @@ -17,9 +17,9 @@ class ExecuteScriptActionParameters { /** * Create a ExecuteScriptActionParameters. - * @member {array} [scriptActions] The list of run time script actions. - * @member {boolean} persistOnSuccess Gets or sets if the scripts needs to be - * persisted. + * @property {array} [scriptActions] The list of run time script actions. + * @property {boolean} persistOnSuccess Gets or sets if the scripts needs to + * be persisted. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/extension.js b/lib/services/hdInsightManagement/lib/models/extension.js index 3b478e2586..8042f25ff5 100644 --- a/lib/services/hdInsightManagement/lib/models/extension.js +++ b/lib/services/hdInsightManagement/lib/models/extension.js @@ -17,9 +17,9 @@ class Extension { /** * Create a Extension. - * @member {string} [workspaceId] The workspace ID for the cluster monitoring - * extension. - * @member {string} [primaryKey] The certificate for the cluster monitoring + * @property {string} [workspaceId] The workspace ID for the cluster + * monitoring extension. + * @property {string} [primaryKey] The certificate for the cluster monitoring * extensions. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/hardwareProfile.js b/lib/services/hdInsightManagement/lib/models/hardwareProfile.js index 3dacb65447..cef80eb591 100644 --- a/lib/services/hdInsightManagement/lib/models/hardwareProfile.js +++ b/lib/services/hdInsightManagement/lib/models/hardwareProfile.js @@ -17,7 +17,7 @@ class HardwareProfile { /** * Create a HardwareProfile. - * @member {string} [vmSize] The size of the VM + * @property {string} [vmSize] The size of the VM */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/index.d.ts b/lib/services/hdInsightManagement/lib/models/index.d.ts index fb99d9d241..ebbfcc4f2d 100644 --- a/lib/services/hdInsightManagement/lib/models/index.d.ts +++ b/lib/services/hdInsightManagement/lib/models/index.d.ts @@ -1,1158 +1,1049 @@ /* * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { BaseResource } from 'ms-rest-azure'; -import { CloudError } from 'ms-rest-azure'; -import * as moment from 'moment'; +import { BaseResource, CloudError } from "ms-rest-azure"; +import * as moment from "moment"; -export { BaseResource } from 'ms-rest-azure'; -export { CloudError } from 'ms-rest-azure'; +export { + BaseResource, + CloudError +}; /** - * @class - * Initializes a new instance of the ClusterDefinition class. - * @constructor * The cluster definition. - * - * @member {string} [blueprint] The link to the blueprint. - * @member {string} [kind] The type of cluster. - * @member {object} [componentVersion] The versions of different services in - * the cluster. - * @member {object} [configurations] The cluster configurations. */ export interface ClusterDefinition { + /** + * The link to the blueprint. + */ blueprint?: string; + /** + * The type of cluster. + */ kind?: string; + /** + * The versions of different services in the cluster. + */ componentVersion?: { [propertyName: string]: string }; + /** + * The cluster configurations. + */ configurations?: any; } /** - * @class - * Initializes a new instance of the SecurityProfile class. - * @constructor - * The security profile which contains Ssh public key for the HDInsight - * cluster. - * - * @member {string} [directoryType] The directory type. Possible values - * include: 'ActiveDirectory' - * @member {string} [domain] The organization's active directory domain. - * @member {string} [organizationalUnitDN] The organizational unit within the - * Active Directory to place the cluster and service accounts. - * @member {array} [ldapsUrls] The LDAPS protocol URLs to communicate with the - * Active Directory. - * @member {string} [domainUsername] The domain user account that will have - * admin privileges on the cluster. - * @member {string} [domainUserPassword] The domain admin password. - * @member {array} [clusterUsersGroupDNs] Optional. The Distinguished Names for - * cluster user groups - * @member {string} [aaddsResourceId] The resource ID of the user's Azure - * Active Directory Domain Service. - * @member {string} [msiResourceId] User assigned identity that has permissions - * to read and create cluster-related artifacts in the user's AADDS. + * The security profile which contains Ssh public key for the HDInsight cluster. */ export interface SecurityProfile { + /** + * The directory type. Possible values include: 'ActiveDirectory' + */ directoryType?: string; + /** + * The organization's active directory domain. + */ domain?: string; + /** + * The organizational unit within the Active Directory to place the cluster and service accounts. + */ organizationalUnitDN?: string; + /** + * The LDAPS protocol URLs to communicate with the Active Directory. + */ ldapsUrls?: string[]; + /** + * The domain user account that will have admin privileges on the cluster. + */ domainUsername?: string; + /** + * The domain admin password. + */ domainUserPassword?: string; + /** + * Optional. The Distinguished Names for cluster user groups + */ clusterUsersGroupDNs?: string[]; + /** + * The resource ID of the user's Azure Active Directory Domain Service. + */ aaddsResourceId?: string; + /** + * User assigned identity that has permissions to read and create cluster-related artifacts in + * the user's AADDS. + */ msiResourceId?: string; } /** - * @class - * Initializes a new instance of the HardwareProfile class. - * @constructor * The hardware profile. - * - * @member {string} [vmSize] The size of the VM */ export interface HardwareProfile { + /** + * The size of the VM + */ vmSize?: string; } /** - * @class - * Initializes a new instance of the VirtualNetworkProfile class. - * @constructor * The virtual network properties. - * - * @member {string} [id] The ID of the virtual network. - * @member {string} [subnet] The name of the subnet. */ export interface VirtualNetworkProfile { + /** + * The ID of the virtual network. + */ id?: string; + /** + * The name of the subnet. + */ subnet?: string; } /** - * @class - * Initializes a new instance of the DataDisksGroups class. - * @constructor * The data disks groups for the role. - * - * @member {number} [disksPerNode] The number of disks per node. - * @member {string} [storageAccountType] ReadOnly. The storage account type. Do - * not set this value. - * @member {number} [diskSizeGB] ReadOnly. The DiskSize in GB. Do not set this - * value. */ export interface DataDisksGroups { + /** + * The number of disks per node. + */ disksPerNode?: number; + /** + * ReadOnly. The storage account type. Do not set this value. + */ readonly storageAccountType?: string; + /** + * ReadOnly. The DiskSize in GB. Do not set this value. + */ readonly diskSizeGB?: number; } /** - * @class - * Initializes a new instance of the SshPublicKey class. - * @constructor * The SSH public key for the cluster nodes. - * - * @member {string} [certificateData] The certificate for SSH. */ export interface SshPublicKey { + /** + * The certificate for SSH. + */ certificateData?: string; } /** - * @class - * Initializes a new instance of the SshProfile class. - * @constructor * The list of SSH public keys. - * - * @member {array} [publicKeys] The list of SSH public keys. */ export interface SshProfile { + /** + * The list of SSH public keys. + */ publicKeys?: SshPublicKey[]; } /** - * @class - * Initializes a new instance of the LinuxOperatingSystemProfile class. - * @constructor * The ssh username, password, and ssh public key. - * - * @member {string} [username] The username. - * @member {string} [password] The password. - * @member {object} [sshProfile] The SSH profile. - * @member {array} [sshProfile.publicKeys] The list of SSH public keys. */ export interface LinuxOperatingSystemProfile { + /** + * The username. + */ username?: string; + /** + * The password. + */ password?: string; + /** + * The SSH profile. + */ sshProfile?: SshProfile; } /** - * @class - * Initializes a new instance of the OsProfile class. - * @constructor * The Linux operation systems profile. - * - * @member {object} [linuxOperatingSystemProfile] The Linux OS profile. - * @member {string} [linuxOperatingSystemProfile.username] The username. - * @member {string} [linuxOperatingSystemProfile.password] The password. - * @member {object} [linuxOperatingSystemProfile.sshProfile] The SSH profile. - * @member {array} [linuxOperatingSystemProfile.sshProfile.publicKeys] The list - * of SSH public keys. */ export interface OsProfile { + /** + * The Linux OS profile. + */ linuxOperatingSystemProfile?: LinuxOperatingSystemProfile; } /** - * @class - * Initializes a new instance of the ScriptAction class. - * @constructor * Describes a script action on role on the cluster. - * - * @member {string} name The name of the script action. - * @member {string} uri The URI to the script. - * @member {string} parameters The parameters for the script provided. */ export interface ScriptAction { + /** + * The name of the script action. + */ name: string; + /** + * The URI to the script. + */ uri: string; + /** + * The parameters for the script provided. + */ parameters: string; } /** - * @class - * Initializes a new instance of the Role class. - * @constructor * Describes a role on the cluster. - * - * @member {string} [name] The name of the role. - * @member {number} [minInstanceCount] The minimum instance count of the - * cluster. - * @member {number} [targetInstanceCount] The instance count of the cluster. - * @member {object} [hardwareProfile] The hardware profile. - * @member {string} [hardwareProfile.vmSize] The size of the VM - * @member {object} [osProfile] The operating system profile. - * @member {object} [osProfile.linuxOperatingSystemProfile] The Linux OS - * profile. - * @member {string} [osProfile.linuxOperatingSystemProfile.username] The - * username. - * @member {string} [osProfile.linuxOperatingSystemProfile.password] The - * password. - * @member {object} [osProfile.linuxOperatingSystemProfile.sshProfile] The SSH - * profile. - * @member {array} - * [osProfile.linuxOperatingSystemProfile.sshProfile.publicKeys] The list of - * SSH public keys. - * @member {object} [virtualNetworkProfile] The virtual network profile. - * @member {string} [virtualNetworkProfile.id] The ID of the virtual network. - * @member {string} [virtualNetworkProfile.subnet] The name of the subnet. - * @member {array} [dataDisksGroups] The data disks groups for the role. - * @member {array} [scriptActions] The list of script actions on the role. */ export interface Role { + /** + * The name of the role. + */ name?: string; + /** + * The minimum instance count of the cluster. + */ minInstanceCount?: number; + /** + * The instance count of the cluster. + */ targetInstanceCount?: number; + /** + * The hardware profile. + */ hardwareProfile?: HardwareProfile; + /** + * The operating system profile. + */ osProfile?: OsProfile; + /** + * The virtual network profile. + */ virtualNetworkProfile?: VirtualNetworkProfile; + /** + * The data disks groups for the role. + */ dataDisksGroups?: DataDisksGroups[]; + /** + * The list of script actions on the role. + */ scriptActions?: ScriptAction[]; } /** - * @class - * Initializes a new instance of the ComputeProfile class. - * @constructor * Describes the compute profile. - * - * @member {array} [roles] The list of roles in the cluster. */ export interface ComputeProfile { + /** + * The list of roles in the cluster. + */ roles?: Role[]; } /** - * @class - * Initializes a new instance of the StorageAccount class. - * @constructor * The storage Account. - * - * @member {string} [name] The name of the storage account. - * @member {boolean} [isDefault] Whether or not the storage account is the - * default storage account. - * @member {string} [container] The container in the storage account, only to - * be specified for WASB storage accounts. - * @member {string} [fileSystem] The filesystem, only to be specified for Azure - * Data Lake Storage type Gen 2. - * @member {string} [key] The storage account access key. */ export interface StorageAccount { + /** + * The name of the storage account. + */ name?: string; + /** + * Whether or not the storage account is the default storage account. + */ isDefault?: boolean; + /** + * The container in the storage account, only to be specified for WASB storage accounts. + */ container?: string; + /** + * The filesystem, only to be specified for Azure Data Lake Storage type Gen 2. + */ fileSystem?: string; + /** + * The storage account access key. + */ key?: string; } /** - * @class - * Initializes a new instance of the StorageProfile class. - * @constructor * The storage profile. - * - * @member {array} [storageaccounts] The list of storage accounts in the - * cluster. */ export interface StorageProfile { + /** + * The list of storage accounts in the cluster. + */ storageaccounts?: StorageAccount[]; } /** - * @class - * Initializes a new instance of the ClusterCreateProperties class. - * @constructor + * The disk encryption properties + */ +export interface DiskEncryptionProperties { + /** + * Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net + */ + vaultUri?: string; + /** + * Key name that is used for enabling disk encryption. + */ + keyName?: string; + /** + * Specific key version that is used for enabling disk encryption. + */ + keyVersion?: string; + /** + * Algorithm identifier for encryption, default RSA-OAEP. Possible values include: 'RSA-OAEP', + * 'RSA-OAEP-256', 'RSA1_5' + */ + encryptionAlgorithm?: string; + /** + * Resource ID of Managed Identity that is used to access the key vault. + */ + msiResourceId?: string; +} + +/** * The cluster create parameters. - * - * @member {string} [clusterVersion] The version of the cluster. - * @member {string} [osType] The type of operating system. Possible values - * include: 'Windows', 'Linux' - * @member {string} [tier] The cluster tier. Possible values include: - * 'Standard', 'Premium' - * @member {object} [clusterDefinition] The cluster definition. - * @member {string} [clusterDefinition.blueprint] The link to the blueprint. - * @member {string} [clusterDefinition.kind] The type of cluster. - * @member {object} [clusterDefinition.componentVersion] The versions of - * different services in the cluster. - * @member {object} [clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [securityProfile] The security profile. - * @member {string} [securityProfile.directoryType] The directory type. - * Possible values include: 'ActiveDirectory' - * @member {string} [securityProfile.domain] The organization's active - * directory domain. - * @member {string} [securityProfile.organizationalUnitDN] The organizational - * unit within the Active Directory to place the cluster and service accounts. - * @member {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to - * communicate with the Active Directory. - * @member {string} [securityProfile.domainUsername] The domain user account - * that will have admin privileges on the cluster. - * @member {string} [securityProfile.domainUserPassword] The domain admin - * password. - * @member {array} [securityProfile.clusterUsersGroupDNs] Optional. The - * Distinguished Names for cluster user groups - * @member {string} [securityProfile.aaddsResourceId] The resource ID of the - * user's Azure Active Directory Domain Service. - * @member {string} [securityProfile.msiResourceId] User assigned identity that - * has permissions to read and create cluster-related artifacts in the user's - * AADDS. - * @member {object} [computeProfile] The compute profile. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {object} [storageProfile] The storage profile. - * @member {array} [storageProfile.storageaccounts] The list of storage - * accounts in the cluster. */ export interface ClusterCreateProperties { + /** + * The version of the cluster. + */ clusterVersion?: string; + /** + * The type of operating system. Possible values include: 'Windows', 'Linux' + */ osType?: string; + /** + * The cluster tier. Possible values include: 'Standard', 'Premium' + */ tier?: string; + /** + * The cluster definition. + */ clusterDefinition?: ClusterDefinition; + /** + * The security profile. + */ securityProfile?: SecurityProfile; + /** + * The compute profile. + */ computeProfile?: ComputeProfile; + /** + * The storage profile. + */ storageProfile?: StorageProfile; + /** + * The disk encryption properties. + */ + diskEncryptionProperties?: DiskEncryptionProperties; } -/** - * @class - * Initializes a new instance of the ClusterIdentityUserAssignedIdentitiesValue class. - * @constructor - * @member {string} [principalId] The principal id of user assigned identity. - * @member {string} [clientId] The client id of user assigned identity. - */ export interface ClusterIdentityUserAssignedIdentitiesValue { + /** + * The principal id of user assigned identity. + */ readonly principalId?: string; + /** + * The client id of user assigned identity. + */ readonly clientId?: string; } /** - * @class - * Initializes a new instance of the ClusterIdentity class. - * @constructor * Identity for the cluster. - * - * @member {string} [principalId] The principal id of cluster identity. This - * property will only be provided for a system assigned identity. - * @member {string} [tenantId] The tenant id associated with the cluster. This - * property will only be provided for a system assigned identity. - * @member {string} [type] The type of identity used for the cluster. The type - * 'SystemAssigned, UserAssigned' includes both an implicitly created identity - * and a set of user assigned identities. Possible values include: - * 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' - * @member {object} [userAssignedIdentities] The list of user identities - * associated with the cluster. The user identity dictionary key references - * will be ARM resource ids in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - */ +*/ export interface ClusterIdentity { + /** + * The principal id of cluster identity. This property will only be provided for a system + * assigned identity. + */ readonly principalId?: string; + /** + * The tenant id associated with the cluster. This property will only be provided for a system + * assigned identity. + */ readonly tenantId?: string; + /** + * The type of identity used for the cluster. The type 'SystemAssigned, UserAssigned' includes + * both an implicitly created identity and a set of user assigned identities. Possible values + * include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + */ type?: string; + /** + * The list of user identities associated with the cluster. The user identity dictionary key + * references will be ARM resource ids in the form: + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + */ userAssignedIdentities?: { [propertyName: string]: ClusterIdentityUserAssignedIdentitiesValue }; } /** - * @class - * Initializes a new instance of the ClusterCreateParametersExtended class. - * @constructor * The CreateCluster request parameters. - * - * @member {string} [location] The location of the cluster. - * @member {object} [tags] The resource tags. - * @member {object} [properties] The cluster create parameters. - * @member {string} [properties.clusterVersion] The version of the cluster. - * @member {string} [properties.osType] The type of operating system. Possible - * values include: 'Windows', 'Linux' - * @member {string} [properties.tier] The cluster tier. Possible values - * include: 'Standard', 'Premium' - * @member {object} [properties.clusterDefinition] The cluster definition. - * @member {string} [properties.clusterDefinition.blueprint] The link to the - * blueprint. - * @member {string} [properties.clusterDefinition.kind] The type of cluster. - * @member {object} [properties.clusterDefinition.componentVersion] The - * versions of different services in the cluster. - * @member {object} [properties.clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [properties.securityProfile] The security profile. - * @member {string} [properties.securityProfile.directoryType] The directory - * type. Possible values include: 'ActiveDirectory' - * @member {string} [properties.securityProfile.domain] The organization's - * active directory domain. - * @member {string} [properties.securityProfile.organizationalUnitDN] The - * organizational unit within the Active Directory to place the cluster and - * service accounts. - * @member {array} [properties.securityProfile.ldapsUrls] The LDAPS protocol - * URLs to communicate with the Active Directory. - * @member {string} [properties.securityProfile.domainUsername] The domain user - * account that will have admin privileges on the cluster. - * @member {string} [properties.securityProfile.domainUserPassword] The domain - * admin password. - * @member {array} [properties.securityProfile.clusterUsersGroupDNs] Optional. - * The Distinguished Names for cluster user groups - * @member {string} [properties.securityProfile.aaddsResourceId] The resource - * ID of the user's Azure Active Directory Domain Service. - * @member {string} [properties.securityProfile.msiResourceId] User assigned - * identity that has permissions to read and create cluster-related artifacts - * in the user's AADDS. - * @member {object} [properties.computeProfile] The compute profile. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {object} [properties.storageProfile] The storage profile. - * @member {array} [properties.storageProfile.storageaccounts] The list of - * storage accounts in the cluster. - * @member {object} [identity] The identity of the cluster, if configured. - * @member {string} [identity.principalId] The principal id of cluster - * identity. This property will only be provided for a system assigned - * identity. - * @member {string} [identity.tenantId] The tenant id associated with the - * cluster. This property will only be provided for a system assigned identity. - * @member {string} [identity.type] The type of identity used for the cluster. - * The type 'SystemAssigned, UserAssigned' includes both an implicitly created - * identity and a set of user assigned identities. Possible values include: - * 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' - * @member {object} [identity.userAssignedIdentities] The list of user - * identities associated with the cluster. The user identity dictionary key - * references will be ARM resource ids in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - */ +*/ export interface ClusterCreateParametersExtended { + /** + * The location of the cluster. + */ location?: string; + /** + * The resource tags. + */ tags?: { [propertyName: string]: string }; + /** + * The cluster create parameters. + */ properties?: ClusterCreateProperties; + /** + * The identity of the cluster, if configured. + */ identity?: ClusterIdentity; } /** - * @class - * Initializes a new instance of the ClusterPatchParameters class. - * @constructor * The PatchCluster request parameters - * - * @member {object} [tags] The resource tags. - */ +*/ export interface ClusterPatchParameters { + /** + * The resource tags. + */ tags?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the QuotaInfo class. - * @constructor * The quota properties for the cluster. - * - * @member {number} [coresUsed] The cores used by the cluster. - */ +*/ export interface QuotaInfo { + /** + * The cores used by the cluster. + */ coresUsed?: number; } /** - * @class - * Initializes a new instance of the Errors class. - * @constructor * The error message associated with the cluster creation. - * - * @member {string} [code] The error code. - * @member {string} [message] The error message. - */ +*/ export interface Errors { + /** + * The error code. + */ code?: string; + /** + * The error message. + */ message?: string; } /** - * @class - * Initializes a new instance of the ConnectivityEndpoint class. - * @constructor * The connectivity properties - * - * @member {string} [name] The name of the endpoint. - * @member {string} [protocol] The protocol of the endpoint. - * @member {string} [location] The location of the endpoint. - * @member {number} [port] The port to connect to. - */ +*/ export interface ConnectivityEndpoint { + /** + * The name of the endpoint. + */ name?: string; + /** + * The protocol of the endpoint. + */ protocol?: string; + /** + * The location of the endpoint. + */ location?: string; + /** + * The port to connect to. + */ port?: number; } /** - * @class - * Initializes a new instance of the ClusterGetProperties class. - * @constructor * The properties of cluster. - * - * @member {string} [clusterVersion] The version of the cluster. - * @member {string} [osType] The type of operating system. Possible values - * include: 'Windows', 'Linux' - * @member {string} [tier] The cluster tier. Possible values include: - * 'Standard', 'Premium' - * @member {object} clusterDefinition The cluster definition. - * @member {string} [clusterDefinition.blueprint] The link to the blueprint. - * @member {string} [clusterDefinition.kind] The type of cluster. - * @member {object} [clusterDefinition.componentVersion] The versions of - * different services in the cluster. - * @member {object} [clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [securityProfile] The security profile. - * @member {string} [securityProfile.directoryType] The directory type. - * Possible values include: 'ActiveDirectory' - * @member {string} [securityProfile.domain] The organization's active - * directory domain. - * @member {string} [securityProfile.organizationalUnitDN] The organizational - * unit within the Active Directory to place the cluster and service accounts. - * @member {array} [securityProfile.ldapsUrls] The LDAPS protocol URLs to - * communicate with the Active Directory. - * @member {string} [securityProfile.domainUsername] The domain user account - * that will have admin privileges on the cluster. - * @member {string} [securityProfile.domainUserPassword] The domain admin - * password. - * @member {array} [securityProfile.clusterUsersGroupDNs] Optional. The - * Distinguished Names for cluster user groups - * @member {string} [securityProfile.aaddsResourceId] The resource ID of the - * user's Azure Active Directory Domain Service. - * @member {string} [securityProfile.msiResourceId] User assigned identity that - * has permissions to read and create cluster-related artifacts in the user's - * AADDS. - * @member {object} [computeProfile] The compute profile. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {string} [provisioningState] The provisioning state, which only - * appears in the response. Possible values include: 'InProgress', 'Failed', - * 'Succeeded', 'Canceled', 'Deleting' - * @member {string} [createdDate] The date on which the cluster was created. - * @member {string} [clusterState] The state of the cluster. - * @member {object} [quotaInfo] The quota information. - * @member {number} [quotaInfo.coresUsed] The cores used by the cluster. - * @member {array} [errors] The list of errors. - * @member {array} [connectivityEndpoints] The list of connectivity endpoints. - */ +*/ export interface ClusterGetProperties { + /** + * The version of the cluster. + */ clusterVersion?: string; + /** + * The type of operating system. Possible values include: 'Windows', 'Linux' + */ osType?: string; + /** + * The cluster tier. Possible values include: 'Standard', 'Premium' + */ tier?: string; + /** + * The cluster definition. + */ clusterDefinition: ClusterDefinition; + /** + * The security profile. + */ securityProfile?: SecurityProfile; + /** + * The compute profile. + */ computeProfile?: ComputeProfile; + /** + * The provisioning state, which only appears in the response. Possible values include: + * 'InProgress', 'Failed', 'Succeeded', 'Canceled', 'Deleting' + */ provisioningState?: string; + /** + * The date on which the cluster was created. + */ createdDate?: string; + /** + * The state of the cluster. + */ clusterState?: string; + /** + * The quota information. + */ quotaInfo?: QuotaInfo; + /** + * The list of errors. + */ errors?: Errors[]; + /** + * The list of connectivity endpoints. + */ connectivityEndpoints?: ConnectivityEndpoint[]; + /** + * The disk encryption properties. + */ + diskEncryptionProperties?: DiskEncryptionProperties; } /** - * @class - * Initializes a new instance of the Resource class. - * @constructor * The core properties of ARM resources - * - * @member {string} [id] Fully qualified resource Id for the resource. - * @member {string} [name] The name of the resource - * @member {string} [type] The type of the resource. - */ +*/ export interface Resource extends BaseResource { + /** + * Fully qualified resource Id for the resource. + */ readonly id?: string; + /** + * The name of the resource + */ readonly name?: string; + /** + * The type of the resource. + */ readonly type?: string; } /** - * @class - * Initializes a new instance of the TrackedResource class. - * @constructor * The resource model definition for a ARM tracked top level resource - * - * @member {string} [location] The Azure Region where the resource lives - * @member {object} [tags] Resource tags. - */ +*/ export interface TrackedResource extends Resource { + /** + * The Azure Region where the resource lives + */ location?: string; + /** + * Resource tags. + */ tags?: { [propertyName: string]: string }; } /** - * @class - * Initializes a new instance of the Cluster class. - * @constructor * The HDInsight cluster. - * - * @member {string} [etag] The ETag for the resource - * @member {object} [properties] The properties of the cluster. - * @member {string} [properties.clusterVersion] The version of the cluster. - * @member {string} [properties.osType] The type of operating system. Possible - * values include: 'Windows', 'Linux' - * @member {string} [properties.tier] The cluster tier. Possible values - * include: 'Standard', 'Premium' - * @member {object} [properties.clusterDefinition] The cluster definition. - * @member {string} [properties.clusterDefinition.blueprint] The link to the - * blueprint. - * @member {string} [properties.clusterDefinition.kind] The type of cluster. - * @member {object} [properties.clusterDefinition.componentVersion] The - * versions of different services in the cluster. - * @member {object} [properties.clusterDefinition.configurations] The cluster - * configurations. - * @member {object} [properties.securityProfile] The security profile. - * @member {string} [properties.securityProfile.directoryType] The directory - * type. Possible values include: 'ActiveDirectory' - * @member {string} [properties.securityProfile.domain] The organization's - * active directory domain. - * @member {string} [properties.securityProfile.organizationalUnitDN] The - * organizational unit within the Active Directory to place the cluster and - * service accounts. - * @member {array} [properties.securityProfile.ldapsUrls] The LDAPS protocol - * URLs to communicate with the Active Directory. - * @member {string} [properties.securityProfile.domainUsername] The domain user - * account that will have admin privileges on the cluster. - * @member {string} [properties.securityProfile.domainUserPassword] The domain - * admin password. - * @member {array} [properties.securityProfile.clusterUsersGroupDNs] Optional. - * The Distinguished Names for cluster user groups - * @member {string} [properties.securityProfile.aaddsResourceId] The resource - * ID of the user's Azure Active Directory Domain Service. - * @member {string} [properties.securityProfile.msiResourceId] User assigned - * identity that has permissions to read and create cluster-related artifacts - * in the user's AADDS. - * @member {object} [properties.computeProfile] The compute profile. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {string} [properties.provisioningState] The provisioning state, - * which only appears in the response. Possible values include: 'InProgress', - * 'Failed', 'Succeeded', 'Canceled', 'Deleting' - * @member {string} [properties.createdDate] The date on which the cluster was - * created. - * @member {string} [properties.clusterState] The state of the cluster. - * @member {object} [properties.quotaInfo] The quota information. - * @member {number} [properties.quotaInfo.coresUsed] The cores used by the - * cluster. - * @member {array} [properties.errors] The list of errors. - * @member {array} [properties.connectivityEndpoints] The list of connectivity - * endpoints. - * @member {object} [identity] The identity of the cluster, if configured. - * @member {string} [identity.principalId] The principal id of cluster - * identity. This property will only be provided for a system assigned - * identity. - * @member {string} [identity.tenantId] The tenant id associated with the - * cluster. This property will only be provided for a system assigned identity. - * @member {string} [identity.type] The type of identity used for the cluster. - * The type 'SystemAssigned, UserAssigned' includes both an implicitly created - * identity and a set of user assigned identities. Possible values include: - * 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' - * @member {object} [identity.userAssignedIdentities] The list of user - * identities associated with the cluster. The user identity dictionary key - * references will be ARM resource ids in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - */ +*/ export interface Cluster extends TrackedResource { + /** + * The ETag for the resource + */ etag?: string; + /** + * The properties of the cluster. + */ properties?: ClusterGetProperties; + /** + * The identity of the cluster, if configured. + */ identity?: ClusterIdentity; } /** - * @class - * Initializes a new instance of the RuntimeScriptAction class. - * @constructor * Describes a script action on a running cluster. - * - * @member {string} name The name of the script action. - * @member {string} uri The URI to the script. - * @member {string} [parameters] The parameters for the script - * @member {array} roles The list of roles where script will be executed. - * @member {string} [applicationName] The application name of the script - * action, if any. - */ +*/ export interface RuntimeScriptAction { + /** + * The name of the script action. + */ name: string; + /** + * The URI to the script. + */ uri: string; + /** + * The parameters for the script + */ parameters?: string; + /** + * The list of roles where script will be executed. + */ roles: string[]; + /** + * The application name of the script action, if any. + */ readonly applicationName?: string; } /** - * @class - * Initializes a new instance of the ExecuteScriptActionParameters class. - * @constructor * The parameters for the script actions to execute on a running cluster. - * - * @member {array} [scriptActions] The list of run time script actions. - * @member {boolean} persistOnSuccess Gets or sets if the scripts needs to be - * persisted. - */ +*/ export interface ExecuteScriptActionParameters { + /** + * The list of run time script actions. + */ scriptActions?: RuntimeScriptAction[]; + /** + * Gets or sets if the scripts needs to be persisted. + */ persistOnSuccess: boolean; } /** - * @class - * Initializes a new instance of the ClusterListPersistedScriptActionsResult class. - * @constructor * The ListPersistedScriptActions operation response. - * - * @member {array} [value] The list of Persisted Script Actions. - * @member {string} [nextLink] The link (url) to the next page of results. - */ +*/ export interface ClusterListPersistedScriptActionsResult { + /** + * The list of Persisted Script Actions. + */ value?: RuntimeScriptAction[]; + /** + * The link (url) to the next page of results. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the ScriptActionExecutionSummary class. - * @constructor * The execution summary of a script action. - * - * @member {string} [status] The status of script action execution. - * @member {number} [instanceCount] The instance count for a given script - * action execution status. - */ +*/ export interface ScriptActionExecutionSummary { + /** + * The status of script action execution. + */ readonly status?: string; + /** + * The instance count for a given script action execution status. + */ readonly instanceCount?: number; } /** - * @class - * Initializes a new instance of the RuntimeScriptActionDetail class. - * @constructor * The execution details of a script action. - * - * @member {number} [scriptExecutionId] The execution id of the script action. - * @member {string} [startTime] The start time of script action execution. - * @member {string} [endTime] The end time of script action execution. - * @member {string} [status] The current execution status of the script action. - * @member {string} [operation] The reason why the script action was executed. - * @member {array} [executionSummary] The summary of script action execution - * result. - * @member {string} [debugInformation] The script action execution debug - * information. - */ +*/ export interface RuntimeScriptActionDetail extends RuntimeScriptAction { + /** + * The execution id of the script action. + */ readonly scriptExecutionId?: number; + /** + * The start time of script action execution. + */ readonly startTime?: string; + /** + * The end time of script action execution. + */ readonly endTime?: string; + /** + * The current execution status of the script action. + */ readonly status?: string; + /** + * The reason why the script action was executed. + */ readonly operation?: string; + /** + * The summary of script action execution result. + */ readonly executionSummary?: ScriptActionExecutionSummary[]; + /** + * The script action execution debug information. + */ readonly debugInformation?: string; } /** - * @class - * Initializes a new instance of the ClusterListRuntimeScriptActionDetailResult class. - * @constructor * The list runtime script action detail response. - * - * @member {array} [value] The list of persisted script action details for the - * cluster. - * @member {string} [nextLink] The link (url) to the next page of results. - */ +*/ export interface ClusterListRuntimeScriptActionDetailResult { + /** + * The list of persisted script action details for the cluster. + */ readonly value?: RuntimeScriptActionDetail[]; + /** + * The link (url) to the next page of results. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the ClusterResizeParameters class. - * @constructor * The Resize Cluster request parameters. - * - * @member {number} [targetInstanceCount] The target instance count for the - * operation. - */ +*/ export interface ClusterResizeParameters { + /** + * The target instance count for the operation. + */ targetInstanceCount?: number; } /** - * @class - * Initializes a new instance of the OperationResource class. - * @constructor + * The Disk Encryption Cluster request parameters. +*/ +export interface ClusterDiskEncryptionParameters { + /** + * Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net + */ + vaultUri?: string; + /** + * Key name that is used for enabling disk encryption. + */ + keyName?: string; + /** + * Specific key version that is used for enabling disk encryption. + */ + keyVersion?: string; +} + +/** * The azure async operation response. - * - * @member {string} [status] The async operation state. Possible values - * include: 'InProgress', 'Succeeded', 'Failed' - * @member {object} [error] The operation error information. - * @member {string} [error.code] The error code. - * @member {string} [error.message] The error message. - */ +*/ export interface OperationResource { + /** + * The async operation state. Possible values include: 'InProgress', 'Succeeded', 'Failed' + */ status?: string; + /** + * The operation error information. + */ error?: Errors; } /** - * @class - * Initializes a new instance of the ProxyResource class. - * @constructor - * The resource model definition for a ARM proxy resource. It will have - * everything other than required location and tags - * - */ + * The resource model definition for a ARM proxy resource. It will have everything other than + * required location and tags +*/ export interface ProxyResource extends Resource { } /** - * @class - * Initializes a new instance of the ErrorResponse class. - * @constructor * Describes the format of Error response. - * - * @member {string} [code] Error code - * @member {string} [message] Error message indicating why the operation - * failed. - */ +*/ export interface ErrorResponse { + /** + * Error code + */ code?: string; + /** + * Error message indicating why the operation failed. + */ message?: string; } /** - * @class - * Initializes a new instance of the ApplicationGetHttpsEndpoint class. - * @constructor * Gets the application HTTP endpoints. - * - * @member {array} [accessModes] The list of access modes for the application. - * @member {string} [location] The location of the endpoint. - * @member {number} [destinationPort] The destination port to connect to. - * @member {number} [publicPort] The public port to connect to. - */ +*/ export interface ApplicationGetHttpsEndpoint { + /** + * The list of access modes for the application. + */ accessModes?: string[]; + /** + * The location of the endpoint. + */ location?: string; + /** + * The destination port to connect to. + */ destinationPort?: number; + /** + * The public port to connect to. + */ publicPort?: number; } /** - * @class - * Initializes a new instance of the ApplicationGetEndpoint class. - * @constructor * Gets the application SSH endpoint - * - * @member {string} [location] The location of the endpoint. - * @member {number} [destinationPort] The destination port to connect to. - * @member {number} [publicPort] The public port to connect to. - */ +*/ export interface ApplicationGetEndpoint { + /** + * The location of the endpoint. + */ location?: string; + /** + * The destination port to connect to. + */ destinationPort?: number; + /** + * The public port to connect to. + */ publicPort?: number; } /** - * @class - * Initializes a new instance of the ApplicationProperties class. - * @constructor * The HDInsight cluster application GET response. - * - * @member {object} [computeProfile] The list of roles in the cluster. - * @member {array} [computeProfile.roles] The list of roles in the cluster. - * @member {array} [installScriptActions] The list of install script actions. - * @member {array} [uninstallScriptActions] The list of uninstall script - * actions. - * @member {array} [httpsEndpoints] The list of application HTTPS endpoints. - * @member {array} [sshEndpoints] The list of application SSH endpoints. - * @member {string} [provisioningState] The provisioning state of the - * application. - * @member {string} [applicationType] The application type. - * @member {string} [applicationState] The application state. - * @member {array} [errors] The list of errors. - * @member {string} [createdDate] The application create date time. - * @member {string} [marketplaceIdentifier] The marketplace identifier. - */ +*/ export interface ApplicationProperties { + /** + * The list of roles in the cluster. + */ computeProfile?: ComputeProfile; + /** + * The list of install script actions. + */ installScriptActions?: RuntimeScriptAction[]; + /** + * The list of uninstall script actions. + */ uninstallScriptActions?: RuntimeScriptAction[]; + /** + * The list of application HTTPS endpoints. + */ httpsEndpoints?: ApplicationGetHttpsEndpoint[]; + /** + * The list of application SSH endpoints. + */ sshEndpoints?: ApplicationGetEndpoint[]; + /** + * The provisioning state of the application. + */ readonly provisioningState?: string; + /** + * The application type. + */ applicationType?: string; + /** + * The application state. + */ readonly applicationState?: string; + /** + * The list of errors. + */ errors?: Errors[]; + /** + * The application create date time. + */ readonly createdDate?: string; + /** + * The marketplace identifier. + */ readonly marketplaceIdentifier?: string; } /** - * @class - * Initializes a new instance of the Application class. - * @constructor * The HDInsight cluster application - * - * @member {string} [etag] The ETag for the application - * @member {object} [tags] The tags for the application. - * @member {object} [properties] The properties of the application. - * @member {object} [properties.computeProfile] The list of roles in the - * cluster. - * @member {array} [properties.computeProfile.roles] The list of roles in the - * cluster. - * @member {array} [properties.installScriptActions] The list of install script - * actions. - * @member {array} [properties.uninstallScriptActions] The list of uninstall - * script actions. - * @member {array} [properties.httpsEndpoints] The list of application HTTPS - * endpoints. - * @member {array} [properties.sshEndpoints] The list of application SSH - * endpoints. - * @member {string} [properties.provisioningState] The provisioning state of - * the application. - * @member {string} [properties.applicationType] The application type. - * @member {string} [properties.applicationState] The application state. - * @member {array} [properties.errors] The list of errors. - * @member {string} [properties.createdDate] The application create date time. - * @member {string} [properties.marketplaceIdentifier] The marketplace - * identifier. - */ +*/ export interface Application extends ProxyResource { + /** + * The ETag for the application + */ etag?: string; + /** + * The tags for the application. + */ tags?: { [propertyName: string]: string }; + /** + * The properties of the application. + */ properties?: ApplicationProperties; } /** - * @class - * Initializes a new instance of the LocalizedName class. - * @constructor * The details about the localizable name of a type of usage. - * - * @member {string} [value] The name of the used resource. - * @member {string} [localizedValue] The localized name of the used resource. - */ +*/ export interface LocalizedName { + /** + * The name of the used resource. + */ value?: string; + /** + * The localized name of the used resource. + */ localizedValue?: string; } /** - * @class - * Initializes a new instance of the Usage class. - * @constructor * The details about the usage of a particular limited resource. - * - * @member {string} [unit] The type of measurement for usage. - * @member {number} [currentValue] The current usage. - * @member {number} [limit] The maximum allowed usage. - * @member {object} [name] The details about the localizable name of the used - * resource. - * @member {string} [name.value] The name of the used resource. - * @member {string} [name.localizedValue] The localized name of the used - * resource. - */ +*/ export interface Usage { + /** + * The type of measurement for usage. + */ unit?: string; + /** + * The current usage. + */ currentValue?: number; + /** + * The maximum allowed usage. + */ limit?: number; + /** + * The details about the localizable name of the used resource. + */ name?: LocalizedName; } /** - * @class - * Initializes a new instance of the UsagesListResult class. - * @constructor * The response for the operation to get regional usages for a subscription. - * - * @member {array} [value] The list of usages. - */ +*/ export interface UsagesListResult { + /** + * The list of usages. + */ value?: Usage[]; } /** - * @class - * Initializes a new instance of the Extension class. - * @constructor * Cluster monitoring extensions - * - * @member {string} [workspaceId] The workspace ID for the cluster monitoring - * extension. - * @member {string} [primaryKey] The certificate for the cluster monitoring - * extensions. - */ +*/ export interface Extension { + /** + * The workspace ID for the cluster monitoring extension. + */ workspaceId?: string; + /** + * The certificate for the cluster monitoring extensions. + */ primaryKey?: string; } /** - * @class - * Initializes a new instance of the ClusterMonitoringResponse class. - * @constructor * The Operations Management Suite (OMS) status response - * - * @member {boolean} [clusterMonitoringEnabled] The status of the Operations - * Management Suite (OMS) on the HDInsight cluster. - * @member {string} [workspaceId] The workspace ID of the Operations Management - * Suite (OMS) on the HDInsight cluster. - */ +*/ export interface ClusterMonitoringResponse { + /** + * The status of the Operations Management Suite (OMS) on the HDInsight cluster. + */ clusterMonitoringEnabled?: boolean; + /** + * The workspace ID of the Operations Management Suite (OMS) on the HDInsight cluster. + */ workspaceId?: string; } /** - * @class - * Initializes a new instance of the ClusterMonitoringRequest class. - * @constructor * The Operations Management Suite (OMS) parameters. - * - * @member {string} [workspaceId] The Operations Management Suite (OMS) - * workspace ID. - * @member {string} [primaryKey] The Operations Management Suite (OMS) - * workspace key. - */ +*/ export interface ClusterMonitoringRequest { + /** + * The Operations Management Suite (OMS) workspace ID. + */ workspaceId?: string; + /** + * The Operations Management Suite (OMS) workspace key. + */ primaryKey?: string; } /** - * @class - * Initializes a new instance of the ScriptActionPersistedGetResponseSpec class. - * @constructor * The persisted script action for cluster. - * - * @member {string} [name] The name of script action. - * @member {string} [uri] The URI to the script. - * @member {string} [parameters] The parameters for the script provided. - * @member {array} [roles] The list of roles where script will be executed. - * @member {string} [applicationName] The application name for the script - * action. - */ +*/ export interface ScriptActionPersistedGetResponseSpec { + /** + * The name of script action. + */ name?: string; + /** + * The URI to the script. + */ uri?: string; + /** + * The parameters for the script provided. + */ parameters?: string; + /** + * The list of roles where script will be executed. + */ roles?: string[]; + /** + * The application name for the script action. + */ applicationName?: string; } /** - * @class - * Initializes a new instance of the OperationDisplay class. - * @constructor * The object that represents the operation. - * - * @member {string} [provider] The service provider: Microsoft.HDInsight - * @member {string} [resource] The resource on which the operation is - * performed: Cluster, Applications, etc. - * @member {string} [operation] The operation type: read, write, delete, etc. - */ +*/ export interface OperationDisplay { + /** + * The service provider: Microsoft.HDInsight + */ provider?: string; + /** + * The resource on which the operation is performed: Cluster, Applications, etc. + */ resource?: string; + /** + * The operation type: read, write, delete, etc. + */ operation?: string; } /** - * @class - * Initializes a new instance of the Operation class. - * @constructor * The HDInsight REST API operation. - * - * @member {string} [name] The operation name: - * {provider}/{resource}/{operation} - * @member {object} [display] The object that represents the operation. - * @member {string} [display.provider] The service provider: - * Microsoft.HDInsight - * @member {string} [display.resource] The resource on which the operation is - * performed: Cluster, Applications, etc. - * @member {string} [display.operation] The operation type: read, write, - * delete, etc. - */ +*/ export interface Operation { + /** + * The operation name: {provider}/{resource}/{operation} + */ name?: string; + /** + * The object that represents the operation. + */ display?: OperationDisplay; } - /** - * @class - * Initializes a new instance of the ClusterListResult class. - * @constructor * The List Cluster operation response. - * - * @member {string} [nextLink] The link (url) to the next page of results. - */ +*/ export interface ClusterListResult extends Array { + /** + * The link (url) to the next page of results. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the ApplicationListResult class. - * @constructor - * Result of the request to list cluster Applications. It contains a list of - * operations and a URL link to get the next set of results. - * - * @member {string} [nextLink] The URL to get the next set of operation list - * results if there are any. - */ + * Result of the request to list cluster Applications. It contains a list of operations and a URL + * link to get the next set of results. +*/ export interface ApplicationListResult extends Array { + /** + * The URL to get the next set of operation list results if there are any. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the ScriptActionsList class. - * @constructor * The persisted script action for the cluster. - * - * @member {string} [nextLink] The link (url) to the next page of results. - */ +*/ export interface ScriptActionsList extends Array { + /** + * The link (url) to the next page of results. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the ScriptActionExecutionHistoryList class. - * @constructor * The list script execution history response. - * - * @member {string} [nextLink] The link (url) to the next page of results. - */ +*/ export interface ScriptActionExecutionHistoryList extends Array { + /** + * The link (url) to the next page of results. + */ readonly nextLink?: string; } /** - * @class - * Initializes a new instance of the OperationListResult class. - * @constructor - * Result of the request to list HDInsight operations. It contains a list of - * operations and a URL link to get the next set of results. - * - * @member {string} [nextLink] The URL to get the next set of operation list - * results if there are any. - */ + * Result of the request to list HDInsight operations. It contains a list of operations and a URL + * link to get the next set of results. +*/ export interface OperationListResult extends Array { + /** + * The URL to get the next set of operation list results if there are any. + */ nextLink?: string; } diff --git a/lib/services/hdInsightManagement/lib/models/index.js b/lib/services/hdInsightManagement/lib/models/index.js index d9fce93bce..3d79a33a08 100644 --- a/lib/services/hdInsightManagement/lib/models/index.js +++ b/lib/services/hdInsightManagement/lib/models/index.js @@ -32,6 +32,7 @@ exports.Role = require('./role'); exports.ComputeProfile = require('./computeProfile'); exports.StorageAccount = require('./storageAccount'); exports.StorageProfile = require('./storageProfile'); +exports.DiskEncryptionProperties = require('./diskEncryptionProperties'); exports.ClusterCreateProperties = require('./clusterCreateProperties'); exports.ClusterIdentityUserAssignedIdentitiesValue = require('./clusterIdentityUserAssignedIdentitiesValue'); exports.ClusterIdentity = require('./clusterIdentity'); @@ -51,6 +52,7 @@ exports.ScriptActionExecutionSummary = require('./scriptActionExecutionSummary') exports.RuntimeScriptActionDetail = require('./runtimeScriptActionDetail'); exports.ClusterListRuntimeScriptActionDetailResult = require('./clusterListRuntimeScriptActionDetailResult'); exports.ClusterResizeParameters = require('./clusterResizeParameters'); +exports.ClusterDiskEncryptionParameters = require('./clusterDiskEncryptionParameters'); exports.OperationResource = require('./operationResource'); exports.ProxyResource = require('./proxyResource'); exports.ErrorResponse = require('./errorResponse'); diff --git a/lib/services/hdInsightManagement/lib/models/linuxOperatingSystemProfile.js b/lib/services/hdInsightManagement/lib/models/linuxOperatingSystemProfile.js index d8e4625855..22738fb4f1 100644 --- a/lib/services/hdInsightManagement/lib/models/linuxOperatingSystemProfile.js +++ b/lib/services/hdInsightManagement/lib/models/linuxOperatingSystemProfile.js @@ -17,10 +17,10 @@ class LinuxOperatingSystemProfile { /** * Create a LinuxOperatingSystemProfile. - * @member {string} [username] The username. - * @member {string} [password] The password. - * @member {object} [sshProfile] The SSH profile. - * @member {array} [sshProfile.publicKeys] The list of SSH public keys. + * @property {string} [username] The username. + * @property {string} [password] The password. + * @property {object} [sshProfile] The SSH profile. + * @property {array} [sshProfile.publicKeys] The list of SSH public keys. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/localizedName.js b/lib/services/hdInsightManagement/lib/models/localizedName.js index e293961473..51eb715be4 100644 --- a/lib/services/hdInsightManagement/lib/models/localizedName.js +++ b/lib/services/hdInsightManagement/lib/models/localizedName.js @@ -17,8 +17,9 @@ class LocalizedName { /** * Create a LocalizedName. - * @member {string} [value] The name of the used resource. - * @member {string} [localizedValue] The localized name of the used resource. + * @property {string} [value] The name of the used resource. + * @property {string} [localizedValue] The localized name of the used + * resource. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/operation.js b/lib/services/hdInsightManagement/lib/models/operation.js index 2896b2e26d..5c47954771 100644 --- a/lib/services/hdInsightManagement/lib/models/operation.js +++ b/lib/services/hdInsightManagement/lib/models/operation.js @@ -17,14 +17,14 @@ class Operation { /** * Create a Operation. - * @member {string} [name] The operation name: + * @property {string} [name] The operation name: * {provider}/{resource}/{operation} - * @member {object} [display] The object that represents the operation. - * @member {string} [display.provider] The service provider: + * @property {object} [display] The object that represents the operation. + * @property {string} [display.provider] The service provider: * Microsoft.HDInsight - * @member {string} [display.resource] The resource on which the operation is - * performed: Cluster, Applications, etc. - * @member {string} [display.operation] The operation type: read, write, + * @property {string} [display.resource] The resource on which the operation + * is performed: Cluster, Applications, etc. + * @property {string} [display.operation] The operation type: read, write, * delete, etc. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/operationDisplay.js b/lib/services/hdInsightManagement/lib/models/operationDisplay.js index 1bbb9f1f22..baa89cf07e 100644 --- a/lib/services/hdInsightManagement/lib/models/operationDisplay.js +++ b/lib/services/hdInsightManagement/lib/models/operationDisplay.js @@ -17,10 +17,11 @@ class OperationDisplay { /** * Create a OperationDisplay. - * @member {string} [provider] The service provider: Microsoft.HDInsight - * @member {string} [resource] The resource on which the operation is + * @property {string} [provider] The service provider: Microsoft.HDInsight + * @property {string} [resource] The resource on which the operation is * performed: Cluster, Applications, etc. - * @member {string} [operation] The operation type: read, write, delete, etc. + * @property {string} [operation] The operation type: read, write, delete, + * etc. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/operationListResult.js b/lib/services/hdInsightManagement/lib/models/operationListResult.js index a6ae70b33c..3887dd3a1c 100644 --- a/lib/services/hdInsightManagement/lib/models/operationListResult.js +++ b/lib/services/hdInsightManagement/lib/models/operationListResult.js @@ -17,8 +17,8 @@ class OperationListResult extends Array { /** * Create a OperationListResult. - * @member {string} [nextLink] The URL to get the next set of operation list - * results if there are any. + * @property {string} [nextLink] The URL to get the next set of operation + * list results if there are any. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/operationResource.js b/lib/services/hdInsightManagement/lib/models/operationResource.js index a83cdd3be5..1f48b45bda 100644 --- a/lib/services/hdInsightManagement/lib/models/operationResource.js +++ b/lib/services/hdInsightManagement/lib/models/operationResource.js @@ -17,11 +17,11 @@ class OperationResource { /** * Create a OperationResource. - * @member {string} [status] The async operation state. Possible values + * @property {string} [status] The async operation state. Possible values * include: 'InProgress', 'Succeeded', 'Failed' - * @member {object} [error] The operation error information. - * @member {string} [error.code] The error code. - * @member {string} [error.message] The error message. + * @property {object} [error] The operation error information. + * @property {string} [error.code] The error code. + * @property {string} [error.message] The error message. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/osProfile.js b/lib/services/hdInsightManagement/lib/models/osProfile.js index 6b54fbc2ca..fd25c7eea6 100644 --- a/lib/services/hdInsightManagement/lib/models/osProfile.js +++ b/lib/services/hdInsightManagement/lib/models/osProfile.js @@ -17,11 +17,12 @@ class OsProfile { /** * Create a OsProfile. - * @member {object} [linuxOperatingSystemProfile] The Linux OS profile. - * @member {string} [linuxOperatingSystemProfile.username] The username. - * @member {string} [linuxOperatingSystemProfile.password] The password. - * @member {object} [linuxOperatingSystemProfile.sshProfile] The SSH profile. - * @member {array} [linuxOperatingSystemProfile.sshProfile.publicKeys] The + * @property {object} [linuxOperatingSystemProfile] The Linux OS profile. + * @property {string} [linuxOperatingSystemProfile.username] The username. + * @property {string} [linuxOperatingSystemProfile.password] The password. + * @property {object} [linuxOperatingSystemProfile.sshProfile] The SSH + * profile. + * @property {array} [linuxOperatingSystemProfile.sshProfile.publicKeys] The * list of SSH public keys. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/quotaInfo.js b/lib/services/hdInsightManagement/lib/models/quotaInfo.js index 8e765bcb8d..68f7fdc9cf 100644 --- a/lib/services/hdInsightManagement/lib/models/quotaInfo.js +++ b/lib/services/hdInsightManagement/lib/models/quotaInfo.js @@ -17,7 +17,7 @@ class QuotaInfo { /** * Create a QuotaInfo. - * @member {number} [coresUsed] The cores used by the cluster. + * @property {number} [coresUsed] The cores used by the cluster. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/resource.js b/lib/services/hdInsightManagement/lib/models/resource.js index d12ac7693d..7de8a5734e 100644 --- a/lib/services/hdInsightManagement/lib/models/resource.js +++ b/lib/services/hdInsightManagement/lib/models/resource.js @@ -20,9 +20,9 @@ const models = require('./index'); class Resource extends models['BaseResource'] { /** * Create a Resource. - * @member {string} [id] Fully qualified resource Id for the resource. - * @member {string} [name] The name of the resource - * @member {string} [type] The type of the resource. + * @property {string} [id] Fully qualified resource Id for the resource. + * @property {string} [name] The name of the resource + * @property {string} [type] The type of the resource. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/role.js b/lib/services/hdInsightManagement/lib/models/role.js index 7a0313e045..8fb737edb1 100644 --- a/lib/services/hdInsightManagement/lib/models/role.js +++ b/lib/services/hdInsightManagement/lib/models/role.js @@ -17,29 +17,31 @@ class Role { /** * Create a Role. - * @member {string} [name] The name of the role. - * @member {number} [minInstanceCount] The minimum instance count of the + * @property {string} [name] The name of the role. + * @property {number} [minInstanceCount] The minimum instance count of the * cluster. - * @member {number} [targetInstanceCount] The instance count of the cluster. - * @member {object} [hardwareProfile] The hardware profile. - * @member {string} [hardwareProfile.vmSize] The size of the VM - * @member {object} [osProfile] The operating system profile. - * @member {object} [osProfile.linuxOperatingSystemProfile] The Linux OS + * @property {number} [targetInstanceCount] The instance count of the + * cluster. + * @property {object} [hardwareProfile] The hardware profile. + * @property {string} [hardwareProfile.vmSize] The size of the VM + * @property {object} [osProfile] The operating system profile. + * @property {object} [osProfile.linuxOperatingSystemProfile] The Linux OS * profile. - * @member {string} [osProfile.linuxOperatingSystemProfile.username] The + * @property {string} [osProfile.linuxOperatingSystemProfile.username] The * username. - * @member {string} [osProfile.linuxOperatingSystemProfile.password] The + * @property {string} [osProfile.linuxOperatingSystemProfile.password] The * password. - * @member {object} [osProfile.linuxOperatingSystemProfile.sshProfile] The + * @property {object} [osProfile.linuxOperatingSystemProfile.sshProfile] The * SSH profile. - * @member {array} + * @property {array} * [osProfile.linuxOperatingSystemProfile.sshProfile.publicKeys] The list of * SSH public keys. - * @member {object} [virtualNetworkProfile] The virtual network profile. - * @member {string} [virtualNetworkProfile.id] The ID of the virtual network. - * @member {string} [virtualNetworkProfile.subnet] The name of the subnet. - * @member {array} [dataDisksGroups] The data disks groups for the role. - * @member {array} [scriptActions] The list of script actions on the role. + * @property {object} [virtualNetworkProfile] The virtual network profile. + * @property {string} [virtualNetworkProfile.id] The ID of the virtual + * network. + * @property {string} [virtualNetworkProfile.subnet] The name of the subnet. + * @property {array} [dataDisksGroups] The data disks groups for the role. + * @property {array} [scriptActions] The list of script actions on the role. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/runtimeScriptAction.js b/lib/services/hdInsightManagement/lib/models/runtimeScriptAction.js index 2c4e64af6d..87eb33b306 100644 --- a/lib/services/hdInsightManagement/lib/models/runtimeScriptAction.js +++ b/lib/services/hdInsightManagement/lib/models/runtimeScriptAction.js @@ -17,11 +17,11 @@ class RuntimeScriptAction { /** * Create a RuntimeScriptAction. - * @member {string} name The name of the script action. - * @member {string} uri The URI to the script. - * @member {string} [parameters] The parameters for the script - * @member {array} roles The list of roles where script will be executed. - * @member {string} [applicationName] The application name of the script + * @property {string} name The name of the script action. + * @property {string} uri The URI to the script. + * @property {string} [parameters] The parameters for the script + * @property {array} roles The list of roles where script will be executed. + * @property {string} [applicationName] The application name of the script * action, if any. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/runtimeScriptActionDetail.js b/lib/services/hdInsightManagement/lib/models/runtimeScriptActionDetail.js index 8d96ddb756..ce3647df27 100644 --- a/lib/services/hdInsightManagement/lib/models/runtimeScriptActionDetail.js +++ b/lib/services/hdInsightManagement/lib/models/runtimeScriptActionDetail.js @@ -20,17 +20,17 @@ const models = require('./index'); class RuntimeScriptActionDetail extends models['RuntimeScriptAction'] { /** * Create a RuntimeScriptActionDetail. - * @member {number} [scriptExecutionId] The execution id of the script + * @property {number} [scriptExecutionId] The execution id of the script * action. - * @member {string} [startTime] The start time of script action execution. - * @member {string} [endTime] The end time of script action execution. - * @member {string} [status] The current execution status of the script + * @property {string} [startTime] The start time of script action execution. + * @property {string} [endTime] The end time of script action execution. + * @property {string} [status] The current execution status of the script * action. - * @member {string} [operation] The reason why the script action was + * @property {string} [operation] The reason why the script action was * executed. - * @member {array} [executionSummary] The summary of script action execution - * result. - * @member {string} [debugInformation] The script action execution debug + * @property {array} [executionSummary] The summary of script action + * execution result. + * @property {string} [debugInformation] The script action execution debug * information. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/scriptAction.js b/lib/services/hdInsightManagement/lib/models/scriptAction.js index 64c467f8ca..5ee67ed1e2 100644 --- a/lib/services/hdInsightManagement/lib/models/scriptAction.js +++ b/lib/services/hdInsightManagement/lib/models/scriptAction.js @@ -17,9 +17,9 @@ class ScriptAction { /** * Create a ScriptAction. - * @member {string} name The name of the script action. - * @member {string} uri The URI to the script. - * @member {string} parameters The parameters for the script provided. + * @property {string} name The name of the script action. + * @property {string} uri The URI to the script. + * @property {string} parameters The parameters for the script provided. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/scriptActionExecutionHistoryList.js b/lib/services/hdInsightManagement/lib/models/scriptActionExecutionHistoryList.js index 05da10f6a5..f900568767 100644 --- a/lib/services/hdInsightManagement/lib/models/scriptActionExecutionHistoryList.js +++ b/lib/services/hdInsightManagement/lib/models/scriptActionExecutionHistoryList.js @@ -16,7 +16,7 @@ class ScriptActionExecutionHistoryList extends Array { /** * Create a ScriptActionExecutionHistoryList. - * @member {string} [nextLink] The link (url) to the next page of results. + * @property {string} [nextLink] The link (url) to the next page of results. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/scriptActionExecutionSummary.js b/lib/services/hdInsightManagement/lib/models/scriptActionExecutionSummary.js index 707e548917..1f9f8e0432 100644 --- a/lib/services/hdInsightManagement/lib/models/scriptActionExecutionSummary.js +++ b/lib/services/hdInsightManagement/lib/models/scriptActionExecutionSummary.js @@ -17,8 +17,8 @@ class ScriptActionExecutionSummary { /** * Create a ScriptActionExecutionSummary. - * @member {string} [status] The status of script action execution. - * @member {number} [instanceCount] The instance count for a given script + * @property {string} [status] The status of script action execution. + * @property {number} [instanceCount] The instance count for a given script * action execution status. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/scriptActionPersistedGetResponseSpec.js b/lib/services/hdInsightManagement/lib/models/scriptActionPersistedGetResponseSpec.js index 5b1dfd812f..223a20788f 100644 --- a/lib/services/hdInsightManagement/lib/models/scriptActionPersistedGetResponseSpec.js +++ b/lib/services/hdInsightManagement/lib/models/scriptActionPersistedGetResponseSpec.js @@ -17,11 +17,11 @@ class ScriptActionPersistedGetResponseSpec { /** * Create a ScriptActionPersistedGetResponseSpec. - * @member {string} [name] The name of script action. - * @member {string} [uri] The URI to the script. - * @member {string} [parameters] The parameters for the script provided. - * @member {array} [roles] The list of roles where script will be executed. - * @member {string} [applicationName] The application name for the script + * @property {string} [name] The name of script action. + * @property {string} [uri] The URI to the script. + * @property {string} [parameters] The parameters for the script provided. + * @property {array} [roles] The list of roles where script will be executed. + * @property {string} [applicationName] The application name for the script * action. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/scriptActionsList.js b/lib/services/hdInsightManagement/lib/models/scriptActionsList.js index b48c4fe8aa..c60a0018fd 100644 --- a/lib/services/hdInsightManagement/lib/models/scriptActionsList.js +++ b/lib/services/hdInsightManagement/lib/models/scriptActionsList.js @@ -16,7 +16,7 @@ class ScriptActionsList extends Array { /** * Create a ScriptActionsList. - * @member {string} [nextLink] The link (url) to the next page of results. + * @property {string} [nextLink] The link (url) to the next page of results. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/securityProfile.js b/lib/services/hdInsightManagement/lib/models/securityProfile.js index 6729d72348..d074328c43 100644 --- a/lib/services/hdInsightManagement/lib/models/securityProfile.js +++ b/lib/services/hdInsightManagement/lib/models/securityProfile.js @@ -18,21 +18,21 @@ class SecurityProfile { /** * Create a SecurityProfile. - * @member {string} [directoryType] The directory type. Possible values + * @property {string} [directoryType] The directory type. Possible values * include: 'ActiveDirectory' - * @member {string} [domain] The organization's active directory domain. - * @member {string} [organizationalUnitDN] The organizational unit within the - * Active Directory to place the cluster and service accounts. - * @member {array} [ldapsUrls] The LDAPS protocol URLs to communicate with + * @property {string} [domain] The organization's active directory domain. + * @property {string} [organizationalUnitDN] The organizational unit within + * the Active Directory to place the cluster and service accounts. + * @property {array} [ldapsUrls] The LDAPS protocol URLs to communicate with * the Active Directory. - * @member {string} [domainUsername] The domain user account that will have + * @property {string} [domainUsername] The domain user account that will have * admin privileges on the cluster. - * @member {string} [domainUserPassword] The domain admin password. - * @member {array} [clusterUsersGroupDNs] Optional. The Distinguished Names + * @property {string} [domainUserPassword] The domain admin password. + * @property {array} [clusterUsersGroupDNs] Optional. The Distinguished Names * for cluster user groups - * @member {string} [aaddsResourceId] The resource ID of the user's Azure + * @property {string} [aaddsResourceId] The resource ID of the user's Azure * Active Directory Domain Service. - * @member {string} [msiResourceId] User assigned identity that has + * @property {string} [msiResourceId] User assigned identity that has * permissions to read and create cluster-related artifacts in the user's * AADDS. */ diff --git a/lib/services/hdInsightManagement/lib/models/sshProfile.js b/lib/services/hdInsightManagement/lib/models/sshProfile.js index d6554aed73..736766a82e 100644 --- a/lib/services/hdInsightManagement/lib/models/sshProfile.js +++ b/lib/services/hdInsightManagement/lib/models/sshProfile.js @@ -17,7 +17,7 @@ class SshProfile { /** * Create a SshProfile. - * @member {array} [publicKeys] The list of SSH public keys. + * @property {array} [publicKeys] The list of SSH public keys. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/sshPublicKey.js b/lib/services/hdInsightManagement/lib/models/sshPublicKey.js index fdf0a2d5aa..1fe9ec82b6 100644 --- a/lib/services/hdInsightManagement/lib/models/sshPublicKey.js +++ b/lib/services/hdInsightManagement/lib/models/sshPublicKey.js @@ -17,7 +17,7 @@ class SshPublicKey { /** * Create a SshPublicKey. - * @member {string} [certificateData] The certificate for SSH. + * @property {string} [certificateData] The certificate for SSH. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/storageAccount.js b/lib/services/hdInsightManagement/lib/models/storageAccount.js index b7aa335f48..f95e791f1b 100644 --- a/lib/services/hdInsightManagement/lib/models/storageAccount.js +++ b/lib/services/hdInsightManagement/lib/models/storageAccount.js @@ -17,14 +17,14 @@ class StorageAccount { /** * Create a StorageAccount. - * @member {string} [name] The name of the storage account. - * @member {boolean} [isDefault] Whether or not the storage account is the + * @property {string} [name] The name of the storage account. + * @property {boolean} [isDefault] Whether or not the storage account is the * default storage account. - * @member {string} [container] The container in the storage account, only to - * be specified for WASB storage accounts. - * @member {string} [fileSystem] The filesystem, only to be specified for + * @property {string} [container] The container in the storage account, only + * to be specified for WASB storage accounts. + * @property {string} [fileSystem] The filesystem, only to be specified for * Azure Data Lake Storage type Gen 2. - * @member {string} [key] The storage account access key. + * @property {string} [key] The storage account access key. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/storageProfile.js b/lib/services/hdInsightManagement/lib/models/storageProfile.js index 052ad37e66..ff2b95943a 100644 --- a/lib/services/hdInsightManagement/lib/models/storageProfile.js +++ b/lib/services/hdInsightManagement/lib/models/storageProfile.js @@ -17,7 +17,7 @@ class StorageProfile { /** * Create a StorageProfile. - * @member {array} [storageaccounts] The list of storage accounts in the + * @property {array} [storageaccounts] The list of storage accounts in the * cluster. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/trackedResource.js b/lib/services/hdInsightManagement/lib/models/trackedResource.js index 3111dfa308..16546acf7b 100644 --- a/lib/services/hdInsightManagement/lib/models/trackedResource.js +++ b/lib/services/hdInsightManagement/lib/models/trackedResource.js @@ -20,8 +20,8 @@ const models = require('./index'); class TrackedResource extends models['Resource'] { /** * Create a TrackedResource. - * @member {string} [location] The Azure Region where the resource lives - * @member {object} [tags] Resource tags. + * @property {string} [location] The Azure Region where the resource lives + * @property {object} [tags] Resource tags. */ constructor() { super(); diff --git a/lib/services/hdInsightManagement/lib/models/usage.js b/lib/services/hdInsightManagement/lib/models/usage.js index 008f23f04b..e179f487c9 100644 --- a/lib/services/hdInsightManagement/lib/models/usage.js +++ b/lib/services/hdInsightManagement/lib/models/usage.js @@ -17,13 +17,13 @@ class Usage { /** * Create a Usage. - * @member {string} [unit] The type of measurement for usage. - * @member {number} [currentValue] The current usage. - * @member {number} [limit] The maximum allowed usage. - * @member {object} [name] The details about the localizable name of the used - * resource. - * @member {string} [name.value] The name of the used resource. - * @member {string} [name.localizedValue] The localized name of the used + * @property {string} [unit] The type of measurement for usage. + * @property {number} [currentValue] The current usage. + * @property {number} [limit] The maximum allowed usage. + * @property {object} [name] The details about the localizable name of the + * used resource. + * @property {string} [name.value] The name of the used resource. + * @property {string} [name.localizedValue] The localized name of the used * resource. */ constructor() { diff --git a/lib/services/hdInsightManagement/lib/models/usagesListResult.js b/lib/services/hdInsightManagement/lib/models/usagesListResult.js index 317ea904f3..1955b71780 100644 --- a/lib/services/hdInsightManagement/lib/models/usagesListResult.js +++ b/lib/services/hdInsightManagement/lib/models/usagesListResult.js @@ -17,7 +17,7 @@ class UsagesListResult { /** * Create a UsagesListResult. - * @member {array} [value] The list of usages. + * @property {array} [value] The list of usages. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/models/virtualNetworkProfile.js b/lib/services/hdInsightManagement/lib/models/virtualNetworkProfile.js index 2b30efb3cb..6bc2f147d8 100644 --- a/lib/services/hdInsightManagement/lib/models/virtualNetworkProfile.js +++ b/lib/services/hdInsightManagement/lib/models/virtualNetworkProfile.js @@ -17,8 +17,8 @@ class VirtualNetworkProfile { /** * Create a VirtualNetworkProfile. - * @member {string} [id] The ID of the virtual network. - * @member {string} [subnet] The name of the subnet. + * @property {string} [id] The ID of the virtual network. + * @property {string} [subnet] The name of the subnet. */ constructor() { } diff --git a/lib/services/hdInsightManagement/lib/operations/clusters.js b/lib/services/hdInsightManagement/lib/operations/clusters.js index bc05de32ca..0fa7f3e46f 100644 --- a/lib/services/hdInsightManagement/lib/operations/clusters.js +++ b/lib/services/hdInsightManagement/lib/operations/clusters.js @@ -96,6 +96,28 @@ const WebResource = msRest.WebResource; * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -899,6 +921,80 @@ function _list(options, callback) { } +/** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} callback - The callback. + * + * @returns {function} callback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ +function _rotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, callback) { + /* jshint validthis: true */ + let client = this.client; + if(!callback && typeof options === 'function') { + callback = options; + options = null; + } + + if (!callback) { + throw new Error('callback cannot be null.'); + } + + // Send request + this.beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, (err, parsedResult, httpRequest, response) => { + if (err) return callback(err); + + let initialResult = new msRest.HttpOperationResponse(); + initialResult.request = httpRequest; + initialResult.response = response; + initialResult.body = response.body; + client.getLongRunningOperationResult(initialResult, options, (err, pollingResult) => { + if (err) return callback(err); + + // Create Result + let result = null; + + httpRequest = pollingResult.request; + response = pollingResult.response; + let responseBody = pollingResult.body; + if (responseBody === '') responseBody = null; + + // Deserialize Response + + return callback(null, result, httpRequest, response); + }); + }); +} + + /** * Executes script actions on the specified HDInsight cluster. * @@ -1050,6 +1146,28 @@ function _executeScriptActions(resourceGroupName, clusterName, parameters, optio * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -1500,6 +1618,162 @@ function _beginResize(resourceGroupName, clusterName, parameters, options, callb }); } +/** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} callback - The callback. + * + * @returns {function} callback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ +function _beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, callback) { + /* jshint validthis: true */ + let client = this.client; + if(!callback && typeof options === 'function') { + callback = options; + options = null; + } + if (!callback) { + throw new Error('callback cannot be null.'); + } + // Validate + try { + if (this.client.subscriptionId === null || this.client.subscriptionId === undefined || typeof this.client.subscriptionId.valueOf() !== 'string') { + throw new Error('this.client.subscriptionId cannot be null or undefined and it must be of type string.'); + } + if (resourceGroupName === null || resourceGroupName === undefined || typeof resourceGroupName.valueOf() !== 'string') { + throw new Error('resourceGroupName cannot be null or undefined and it must be of type string.'); + } + if (clusterName === null || clusterName === undefined || typeof clusterName.valueOf() !== 'string') { + throw new Error('clusterName cannot be null or undefined and it must be of type string.'); + } + if (this.client.apiVersion === null || this.client.apiVersion === undefined || typeof this.client.apiVersion.valueOf() !== 'string') { + throw new Error('this.client.apiVersion cannot be null or undefined and it must be of type string.'); + } + if (parameters === null || parameters === undefined) { + throw new Error('parameters cannot be null or undefined.'); + } + if (this.client.acceptLanguage !== null && this.client.acceptLanguage !== undefined && typeof this.client.acceptLanguage.valueOf() !== 'string') { + throw new Error('this.client.acceptLanguage must be of type string.'); + } + } catch (error) { + return callback(error); + } + + // Construct URL + let baseUrl = this.client.baseUri; + let requestUrl = baseUrl + (baseUrl.endsWith('/') ? '' : '/') + 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/rotatediskencryptionkey'; + requestUrl = requestUrl.replace('{subscriptionId}', encodeURIComponent(this.client.subscriptionId)); + requestUrl = requestUrl.replace('{resourceGroupName}', encodeURIComponent(resourceGroupName)); + requestUrl = requestUrl.replace('{clusterName}', encodeURIComponent(clusterName)); + let queryParameters = []; + queryParameters.push('api-version=' + encodeURIComponent(this.client.apiVersion)); + if (queryParameters.length > 0) { + requestUrl += '?' + queryParameters.join('&'); + } + + // Create HTTP transport objects + let httpRequest = new WebResource(); + httpRequest.method = 'POST'; + httpRequest.url = requestUrl; + httpRequest.headers = {}; + // Set Headers + httpRequest.headers['Content-Type'] = 'application/json; charset=utf-8'; + if (this.client.generateClientRequestId) { + httpRequest.headers['x-ms-client-request-id'] = msRestAzure.generateUuid(); + } + if (this.client.acceptLanguage !== undefined && this.client.acceptLanguage !== null) { + httpRequest.headers['accept-language'] = this.client.acceptLanguage; + } + if(options) { + for(let headerName in options['customHeaders']) { + if (options['customHeaders'].hasOwnProperty(headerName)) { + httpRequest.headers[headerName] = options['customHeaders'][headerName]; + } + } + } + // Serialize Request + let requestContent = null; + let requestModel = null; + try { + if (parameters !== null && parameters !== undefined) { + let requestModelMapper = new client.models['ClusterDiskEncryptionParameters']().mapper(); + requestModel = client.serialize(requestModelMapper, parameters, 'parameters'); + requestContent = JSON.stringify(requestModel); + } + } catch (error) { + let serializationError = new Error(`Error "${error.message}" occurred in serializing the ` + + `payload - ${JSON.stringify(parameters, null, 2)}.`); + return callback(serializationError); + } + httpRequest.body = requestContent; + // Send Request + return client.pipeline(httpRequest, (err, response, responseBody) => { + if (err) { + return callback(err); + } + let statusCode = response.statusCode; + if (statusCode !== 200 && statusCode !== 202) { + let error = new Error(responseBody); + error.statusCode = response.statusCode; + error.request = msRest.stripRequest(httpRequest); + error.response = msRest.stripResponse(response); + if (responseBody === '') responseBody = null; + let parsedErrorResponse; + try { + parsedErrorResponse = JSON.parse(responseBody); + if (parsedErrorResponse) { + let internalError = null; + if (parsedErrorResponse.error) internalError = parsedErrorResponse.error; + error.code = internalError ? internalError.code : parsedErrorResponse.code; + error.message = internalError ? internalError.message : parsedErrorResponse.message; + } + if (parsedErrorResponse !== null && parsedErrorResponse !== undefined) { + let resultMapper = new client.models['ErrorResponse']().mapper(); + error.body = client.deserialize(resultMapper, parsedErrorResponse, 'error.body'); + } + } catch (defaultError) { + error.message = `Error "${defaultError.message}" occurred in deserializing the responseBody ` + + `- "${responseBody}" for the default response.`; + return callback(error); + } + return callback(error); + } + // Create Result + let result = null; + if (responseBody === '') responseBody = null; + + return callback(null, result, httpRequest, response); + }); +} + /** * Executes script actions on the specified HDInsight cluster. * @@ -1924,10 +2198,12 @@ class Clusters { this._listByResourceGroup = _listByResourceGroup; this._resize = _resize; this._list = _list; + this._rotateDiskEncryptionKey = _rotateDiskEncryptionKey; this._executeScriptActions = _executeScriptActions; this._beginCreate = _beginCreate; this._beginDeleteMethod = _beginDeleteMethod; this._beginResize = _beginResize; + this._beginRotateDiskEncryptionKey = _beginRotateDiskEncryptionKey; this._beginExecuteScriptActions = _beginExecuteScriptActions; this._listByResourceGroupNext = _listByResourceGroupNext; this._listNext = _listNext; @@ -2014,6 +2290,28 @@ class Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -2134,6 +2432,28 @@ class Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -2715,6 +3035,113 @@ class Clusters { } } + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error} - The error object. + */ + rotateDiskEncryptionKeyWithHttpOperationResponse(resourceGroupName, clusterName, parameters, options) { + let client = this.client; + let self = this; + return new Promise((resolve, reject) => { + self._rotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, (err, result, request, response) => { + let httpOperationResponse = new msRest.HttpOperationResponse(request, response); + httpOperationResponse.body = result; + if (err) { reject(err); } + else { resolve(httpOperationResponse); } + return; + }); + }); + } + + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} [optionalCallback] - The optional callback. + * + * @returns {function|Promise} If a callback was passed as the last parameter + * then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned + * + * @resolve {null} - The deserialized result object. + * + * @reject {Error} - The error object. + * + * {function} optionalCallback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ + rotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, optionalCallback) { + let client = this.client; + let self = this; + if (!optionalCallback && typeof options === 'function') { + optionalCallback = options; + options = null; + } + if (!optionalCallback) { + return new Promise((resolve, reject) => { + self._rotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, (err, result, request, response) => { + if (err) { reject(err); } + else { resolve(result); } + return; + }); + }); + } else { + return self._rotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, optionalCallback); + } + } + /** * Executes script actions on the specified HDInsight cluster. * @@ -2897,6 +3324,28 @@ class Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -3017,6 +3466,28 @@ class Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -3258,6 +3729,113 @@ class Clusters { } } + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error} - The error object. + */ + beginRotateDiskEncryptionKeyWithHttpOperationResponse(resourceGroupName, clusterName, parameters, options) { + let client = this.client; + let self = this; + return new Promise((resolve, reject) => { + self._beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, (err, result, request, response) => { + let httpOperationResponse = new msRest.HttpOperationResponse(request, response); + httpOperationResponse.body = result; + if (err) { reject(err); } + else { resolve(httpOperationResponse); } + return; + }); + }); + } + + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {function} [optionalCallback] - The optional callback. + * + * @returns {function|Promise} If a callback was passed as the last parameter + * then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned + * + * @resolve {null} - The deserialized result object. + * + * @reject {Error} - The error object. + * + * {function} optionalCallback(err, result, request, response) + * + * {Error} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {object} [request] - The HTTP Request object if an error did not occur. + * + * {stream} [response] - The HTTP Response stream if an error did not occur. + */ + beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, optionalCallback) { + let client = this.client; + let self = this; + if (!optionalCallback && typeof options === 'function') { + optionalCallback = options; + options = null; + } + if (!optionalCallback) { + return new Promise((resolve, reject) => { + self._beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, (err, result, request, response) => { + if (err) { reject(err); } + else { resolve(result); } + return; + }); + }); + } else { + return self._beginRotateDiskEncryptionKey(resourceGroupName, clusterName, parameters, options, optionalCallback); + } + } + /** * Executes script actions on the specified HDInsight cluster. * diff --git a/lib/services/hdInsightManagement/lib/operations/index.d.ts b/lib/services/hdInsightManagement/lib/operations/index.d.ts index 168023edfd..835fee92e0 100644 --- a/lib/services/hdInsightManagement/lib/operations/index.d.ts +++ b/lib/services/hdInsightManagement/lib/operations/index.d.ts @@ -102,6 +102,28 @@ export interface Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -210,6 +232,28 @@ export interface Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -614,6 +658,86 @@ export interface Clusters { list(options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + */ + rotateDiskEncryptionKeyWithHttpOperationResponse(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; + + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {ServiceCallback} [optionalCallback] - The optional callback. + * + * @returns {ServiceCallback|Promise} If a callback was passed as the last + * parameter then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned. + * + * @resolve {null} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + * + * {ServiceCallback} optionalCallback(err, result, request, response) + * + * {Error|ServiceError} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {WebResource} [request] - The HTTP Request object if an error did not occur. + * + * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur. + */ + rotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise; + rotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, callback: ServiceCallback): void; + rotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; + + /** * Executes script actions on the specified HDInsight cluster. * @@ -769,6 +893,28 @@ export interface Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -877,6 +1023,28 @@ export interface Clusters { * @param {array} [parameters.properties.storageProfile.storageaccounts] The * list of storage accounts in the cluster. * + * @param {object} [parameters.properties.diskEncryptionProperties] The disk + * encryption properties. + * + * @param {string} [parameters.properties.diskEncryptionProperties.vaultUri] + * Base key vault URI where the customers key is located eg. + * https://myvault.vault.azure.net + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyName] Key + * name that is used for enabling disk encryption. + * + * @param {string} [parameters.properties.diskEncryptionProperties.keyVersion] + * Specific key version that is used for enabling disk encryption. + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.encryptionAlgorithm] + * Algorithm identifier for encryption, default RSA-OAEP. Possible values + * include: 'RSA-OAEP', 'RSA-OAEP-256', 'RSA1_5' + * + * @param {string} + * [parameters.properties.diskEncryptionProperties.msiResourceId] Resource ID + * of Managed Identity that is used to access the key vault. + * * @param {object} [parameters.identity] The identity of the cluster, if * configured. * @@ -1049,6 +1217,86 @@ export interface Clusters { beginResize(resourceGroupName: string, clusterName: string, parameters: models.ClusterResizeParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @returns {Promise} A promise is returned + * + * @resolve {HttpOperationResponse} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + */ + beginRotateDiskEncryptionKeyWithHttpOperationResponse(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise>; + + /** + * Rotate disk encryption key of the specified HDInsight cluster. + * + * @param {string} resourceGroupName The name of the resource group. + * + * @param {string} clusterName The name of the cluster. + * + * @param {object} parameters The parameters for the disk encryption operation. + * + * @param {string} [parameters.vaultUri] Base key vault URI where the customers + * key is located eg. https://myvault.vault.azure.net + * + * @param {string} [parameters.keyName] Key name that is used for enabling disk + * encryption. + * + * @param {string} [parameters.keyVersion] Specific key version that is used + * for enabling disk encryption. + * + * @param {object} [options] Optional Parameters. + * + * @param {object} [options.customHeaders] Headers that will be added to the + * request + * + * @param {ServiceCallback} [optionalCallback] - The optional callback. + * + * @returns {ServiceCallback|Promise} If a callback was passed as the last + * parameter then it returns the callback else returns a Promise. + * + * {Promise} A promise is returned. + * + * @resolve {null} - The deserialized result object. + * + * @reject {Error|ServiceError} - The error object. + * + * {ServiceCallback} optionalCallback(err, result, request, response) + * + * {Error|ServiceError} err - The Error object if an error occurred, null otherwise. + * + * {null} [result] - The deserialized result object if an error did not occur. + * + * {WebResource} [request] - The HTTP Request object if an error did not occur. + * + * {http.IncomingMessage} [response] - The HTTP Response stream if an error did not occur. + */ + beginRotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options?: { customHeaders? : { [headerName: string]: string; } }): Promise; + beginRotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, callback: ServiceCallback): void; + beginRotateDiskEncryptionKey(resourceGroupName: string, clusterName: string, parameters: models.ClusterDiskEncryptionParameters, options: { customHeaders? : { [headerName: string]: string; } }, callback: ServiceCallback): void; + + /** * Executes script actions on the specified HDInsight cluster. * diff --git a/lib/services/hdInsightManagement/package.json b/lib/services/hdInsightManagement/package.json index df6b494cac..2272d9ff23 100644 --- a/lib/services/hdInsightManagement/package.json +++ b/lib/services/hdInsightManagement/package.json @@ -22,4 +22,4 @@ "bugs": { "url": "https://github.com/azure/azure-sdk-for-node/issues" } -} \ No newline at end of file +}