Source code for azure.mgmt.kusto.models._models_py3

# coding=utf-8
# --------------------------------------------------------------------------
# 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.
# --------------------------------------------------------------------------

from msrest.serialization import Model
from msrest.exceptions import HttpOperationError


[docs]class Resource(Model): """Resource. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } def __init__(self, **kwargs) -> None: super(Resource, self).__init__(**kwargs) self.id = None self.name = None self.type = None
[docs]class ProxyResource(Resource): """The resource model definition for a ARM proxy resource. It will have everything other than required location and tags. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } def __init__(self, **kwargs) -> None: super(ProxyResource, self).__init__(**kwargs)
[docs]class AttachedDatabaseConfiguration(ProxyResource): """Class representing an attached database configuration. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState :param database_name: Required. The name of the database which you would like to attach, use * if you want to follow all current and future databases. :type database_name: str :param cluster_resource_id: Required. The resource id of the cluster where the databases you would like to attach reside. :type cluster_resource_id: str :ivar attached_database_names: The list of databases from the clusterResourceId which are currently attached to the cluster. :vartype attached_database_names: list[str] :param default_principals_modification_kind: Required. The default principals modification kind. Possible values include: 'Union', 'Replace', 'None' :type default_principals_modification_kind: str or ~azure.mgmt.kusto.models.DefaultPrincipalsModificationKind """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'database_name': {'required': True}, 'cluster_resource_id': {'required': True}, 'attached_database_names': {'readonly': True}, 'default_principals_modification_kind': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'database_name': {'key': 'properties.databaseName', 'type': 'str'}, 'cluster_resource_id': {'key': 'properties.clusterResourceId', 'type': 'str'}, 'attached_database_names': {'key': 'properties.attachedDatabaseNames', 'type': '[str]'}, 'default_principals_modification_kind': {'key': 'properties.defaultPrincipalsModificationKind', 'type': 'str'}, } def __init__(self, *, database_name: str, cluster_resource_id: str, default_principals_modification_kind, location: str=None, **kwargs) -> None: super(AttachedDatabaseConfiguration, self).__init__(**kwargs) self.location = location self.provisioning_state = None self.database_name = database_name self.cluster_resource_id = cluster_resource_id self.attached_database_names = None self.default_principals_modification_kind = default_principals_modification_kind
[docs]class AzureCapacity(Model): """Azure capacity definition. All required parameters must be populated in order to send to Azure. :param scale_type: Required. Scale type. Possible values include: 'automatic', 'manual', 'none' :type scale_type: str or ~azure.mgmt.kusto.models.AzureScaleType :param minimum: Required. Minimum allowed capacity. :type minimum: int :param maximum: Required. Maximum allowed capacity. :type maximum: int :param default: Required. The default capacity that would be used. :type default: int """ _validation = { 'scale_type': {'required': True}, 'minimum': {'required': True}, 'maximum': {'required': True}, 'default': {'required': True}, } _attribute_map = { 'scale_type': {'key': 'scaleType', 'type': 'str'}, 'minimum': {'key': 'minimum', 'type': 'int'}, 'maximum': {'key': 'maximum', 'type': 'int'}, 'default': {'key': 'default', 'type': 'int'}, } def __init__(self, *, scale_type, minimum: int, maximum: int, default: int, **kwargs) -> None: super(AzureCapacity, self).__init__(**kwargs) self.scale_type = scale_type self.minimum = minimum self.maximum = maximum self.default = default
[docs]class AzureEntityResource(Resource): """The resource model definition for a Azure Resource Manager resource with an etag. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :ivar etag: Resource Etag. :vartype etag: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'etag': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'etag': {'key': 'etag', 'type': 'str'}, } def __init__(self, **kwargs) -> None: super(AzureEntityResource, self).__init__(**kwargs) self.etag = None
[docs]class AzureResourceSku(Model): """Azure resource SKU definition. :param resource_type: Resource Namespace and Type. :type resource_type: str :param sku: The SKU details. :type sku: ~azure.mgmt.kusto.models.AzureSku :param capacity: The number of instances of the cluster. :type capacity: ~azure.mgmt.kusto.models.AzureCapacity """ _attribute_map = { 'resource_type': {'key': 'resourceType', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'AzureSku'}, 'capacity': {'key': 'capacity', 'type': 'AzureCapacity'}, } def __init__(self, *, resource_type: str=None, sku=None, capacity=None, **kwargs) -> None: super(AzureResourceSku, self).__init__(**kwargs) self.resource_type = resource_type self.sku = sku self.capacity = capacity
[docs]class AzureSku(Model): """Azure SKU definition. All required parameters must be populated in order to send to Azure. :param name: Required. SKU name. Possible values include: 'Standard_DS13_v2+1TB_PS', 'Standard_DS13_v2+2TB_PS', 'Standard_DS14_v2+3TB_PS', 'Standard_DS14_v2+4TB_PS', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_L8s', 'Standard_L16s', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_L4s', 'Dev(No SLA)_Standard_D11_v2', 'Standard_E2a_v4', 'Standard_E4a_v4', 'Standard_E8a_v4', 'Standard_E16a_v4', 'Standard_E8as_v4+1TB_PS', 'Standard_E8as_v4+2TB_PS', 'Standard_E16as_v4+3TB_PS', 'Standard_E16as_v4+4TB_PS', 'Dev(No SLA)_Standard_E2a_v4' :type name: str or ~azure.mgmt.kusto.models.AzureSkuName :param capacity: The number of instances of the cluster. :type capacity: int :param tier: Required. SKU tier. Possible values include: 'Basic', 'Standard' :type tier: str or ~azure.mgmt.kusto.models.AzureSkuTier """ _validation = { 'name': {'required': True}, 'tier': {'required': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'capacity': {'key': 'capacity', 'type': 'int'}, 'tier': {'key': 'tier', 'type': 'str'}, } def __init__(self, *, name, tier, capacity: int=None, **kwargs) -> None: super(AzureSku, self).__init__(**kwargs) self.name = name self.capacity = capacity self.tier = tier
[docs]class CheckNameRequest(Model): """The result returned from a database check name availability request. All required parameters must be populated in order to send to Azure. :param name: Required. Resource name. :type name: str :param type: Required. The type of resource, for instance Microsoft.Kusto/clusters/databases. Possible values include: 'Microsoft.Kusto/clusters/databases', 'Microsoft.Kusto/clusters/attachedDatabaseConfigurations' :type type: str or ~azure.mgmt.kusto.models.Type """ _validation = { 'name': {'required': True}, 'type': {'required': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'Type'}, } def __init__(self, *, name: str, type, **kwargs) -> None: super(CheckNameRequest, self).__init__(**kwargs) self.name = name self.type = type
[docs]class CheckNameResult(Model): """The result returned from a check name availability request. :param name_available: Specifies a Boolean value that indicates if the name is available. :type name_available: bool :param name: The name that was checked. :type name: str :param message: Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated. :type message: str :param reason: Message providing the reason why the given name is invalid. Possible values include: 'Invalid', 'AlreadyExists' :type reason: str or ~azure.mgmt.kusto.models.Reason """ _attribute_map = { 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, 'name': {'key': 'name', 'type': 'str'}, 'message': {'key': 'message', 'type': 'str'}, 'reason': {'key': 'reason', 'type': 'str'}, } def __init__(self, *, name_available: bool=None, name: str=None, message: str=None, reason=None, **kwargs) -> None: super(CheckNameResult, self).__init__(**kwargs) self.name_available = name_available self.name = name self.message = message self.reason = reason
class CloudError(Model): """An error response from Kusto. :param error: An error response from Kusto. :type error: ~azure.mgmt.kusto.models.CloudErrorBody """ _attribute_map = { 'error': {'key': 'error', 'type': 'CloudErrorBody'}, } def __init__(self, *, error=None, **kwargs) -> None: super(CloudError, self).__init__(**kwargs) self.error = error class CloudErrorException(HttpOperationError): """Server responsed with exception of type: 'CloudError'. :param deserialize: A deserializer :param response: Server response to be deserialized. """ def __init__(self, deserialize, response, *args): super(CloudErrorException, self).__init__(deserialize, response, 'CloudError', *args) class CloudErrorBody(Model): """An error response from Kusto. :param code: An identifier for the error. Codes are invariant and are intended to be consumed programmatically. :type code: str :param message: A message describing the error, intended to be suitable for displaying in a user interface. :type message: str :param target: The target of the particular error. For example, the name of the property in error. :type target: str :param details: A list of additional details about the error. :type details: list[~azure.mgmt.kusto.models.CloudErrorBody] """ _attribute_map = { 'code': {'key': 'code', 'type': 'str'}, 'message': {'key': 'message', 'type': 'str'}, 'target': {'key': 'target', 'type': 'str'}, 'details': {'key': 'details', 'type': '[CloudErrorBody]'}, } def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, **kwargs) -> None: super(CloudErrorBody, self).__init__(**kwargs) self.code = code self.message = message self.target = target self.details = details
[docs]class TrackedResource(Resource): """The resource model definition for a ARM tracked top level resource. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param tags: Resource tags. :type tags: dict[str, str] :param location: Required. The geo-location where the resource lives :type location: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, } def __init__(self, *, location: str, tags=None, **kwargs) -> None: super(TrackedResource, self).__init__(**kwargs) self.tags = tags self.location = location
[docs]class Cluster(TrackedResource): """Class representing a Kusto cluster. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param tags: Resource tags. :type tags: dict[str, str] :param location: Required. The geo-location where the resource lives :type location: str :param sku: Required. The SKU of the cluster. :type sku: ~azure.mgmt.kusto.models.AzureSku :param zones: The availability zones of the cluster. :type zones: list[str] :param identity: The identity of the cluster, if configured. :type identity: ~azure.mgmt.kusto.models.Identity :ivar state: The state of the resource. Possible values include: 'Creating', 'Unavailable', 'Running', 'Deleting', 'Deleted', 'Stopping', 'Stopped', 'Starting', 'Updating' :vartype state: str or ~azure.mgmt.kusto.models.State :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState :ivar uri: The cluster URI. :vartype uri: str :ivar data_ingestion_uri: The cluster data ingestion URI. :vartype data_ingestion_uri: str :ivar state_reason: The reason for the cluster's current state. :vartype state_reason: str :param trusted_external_tenants: The cluster's external tenants. :type trusted_external_tenants: list[~azure.mgmt.kusto.models.TrustedExternalTenant] :param optimized_autoscale: Optimized auto scale definition. :type optimized_autoscale: ~azure.mgmt.kusto.models.OptimizedAutoscale :param enable_disk_encryption: A boolean value that indicates if the cluster's disks are encrypted. :type enable_disk_encryption: bool :param enable_streaming_ingest: A boolean value that indicates if the streaming ingest is enabled. Default value: False . :type enable_streaming_ingest: bool :param virtual_network_configuration: Virtual network definition. :type virtual_network_configuration: ~azure.mgmt.kusto.models.VirtualNetworkConfiguration :param key_vault_properties: KeyVault properties for the cluster encryption. :type key_vault_properties: ~azure.mgmt.kusto.models.KeyVaultProperties :param enable_purge: A boolean value that indicates if the purge operations are enabled. Default value: False . :type enable_purge: bool :ivar language_extensions: List of the cluster's language extensions. :vartype language_extensions: ~azure.mgmt.kusto.models.LanguageExtensionsList :param enable_double_encryption: A boolean value that indicates if double encryption is enabled. Default value: False . :type enable_double_encryption: bool """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'location': {'required': True}, 'sku': {'required': True}, 'state': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'uri': {'readonly': True}, 'data_ingestion_uri': {'readonly': True}, 'state_reason': {'readonly': True}, 'language_extensions': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'AzureSku'}, 'zones': {'key': 'zones', 'type': '[str]'}, 'identity': {'key': 'identity', 'type': 'Identity'}, 'state': {'key': 'properties.state', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'uri': {'key': 'properties.uri', 'type': 'str'}, 'data_ingestion_uri': {'key': 'properties.dataIngestionUri', 'type': 'str'}, 'state_reason': {'key': 'properties.stateReason', 'type': 'str'}, 'trusted_external_tenants': {'key': 'properties.trustedExternalTenants', 'type': '[TrustedExternalTenant]'}, 'optimized_autoscale': {'key': 'properties.optimizedAutoscale', 'type': 'OptimizedAutoscale'}, 'enable_disk_encryption': {'key': 'properties.enableDiskEncryption', 'type': 'bool'}, 'enable_streaming_ingest': {'key': 'properties.enableStreamingIngest', 'type': 'bool'}, 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, 'key_vault_properties': {'key': 'properties.keyVaultProperties', 'type': 'KeyVaultProperties'}, 'enable_purge': {'key': 'properties.enablePurge', 'type': 'bool'}, 'language_extensions': {'key': 'properties.languageExtensions', 'type': 'LanguageExtensionsList'}, 'enable_double_encryption': {'key': 'properties.enableDoubleEncryption', 'type': 'bool'}, } def __init__(self, *, location: str, sku, tags=None, zones=None, identity=None, trusted_external_tenants=None, optimized_autoscale=None, enable_disk_encryption: bool=None, enable_streaming_ingest: bool=False, virtual_network_configuration=None, key_vault_properties=None, enable_purge: bool=False, enable_double_encryption: bool=False, **kwargs) -> None: super(Cluster, self).__init__(tags=tags, location=location, **kwargs) self.sku = sku self.zones = zones self.identity = identity self.state = None self.provisioning_state = None self.uri = None self.data_ingestion_uri = None self.state_reason = None self.trusted_external_tenants = trusted_external_tenants self.optimized_autoscale = optimized_autoscale self.enable_disk_encryption = enable_disk_encryption self.enable_streaming_ingest = enable_streaming_ingest self.virtual_network_configuration = virtual_network_configuration self.key_vault_properties = key_vault_properties self.enable_purge = enable_purge self.language_extensions = None self.enable_double_encryption = enable_double_encryption
[docs]class ClusterCheckNameRequest(Model): """The result returned from a cluster check name availability request. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param name: Required. Cluster name. :type name: str :ivar type: Required. The type of resource, Microsoft.Kusto/clusters. Default value: "Microsoft.Kusto/clusters" . :vartype type: str """ _validation = { 'name': {'required': True}, 'type': {'required': True, 'constant': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } type = "Microsoft.Kusto/clusters" def __init__(self, *, name: str, **kwargs) -> None: super(ClusterCheckNameRequest, self).__init__(**kwargs) self.name = name
[docs]class ClusterPrincipalAssignment(ProxyResource): """Class representing a cluster principal assignment. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param principal_id: Required. The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name. :type principal_id: str :param role: Required. Cluster principal role. Possible values include: 'AllDatabasesAdmin', 'AllDatabasesViewer' :type role: str or ~azure.mgmt.kusto.models.ClusterPrincipalRole :param tenant_id: The tenant id of the principal :type tenant_id: str :param principal_type: Required. Principal type. Possible values include: 'App', 'Group', 'User' :type principal_type: str or ~azure.mgmt.kusto.models.PrincipalType :ivar tenant_name: The tenant name of the principal :vartype tenant_name: str :ivar principal_name: The principal name :vartype principal_name: str :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'principal_id': {'required': True}, 'role': {'required': True}, 'principal_type': {'required': True}, 'tenant_name': {'readonly': True}, 'principal_name': {'readonly': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'principal_id': {'key': 'properties.principalId', 'type': 'str'}, 'role': {'key': 'properties.role', 'type': 'str'}, 'tenant_id': {'key': 'properties.tenantId', 'type': 'str'}, 'principal_type': {'key': 'properties.principalType', 'type': 'str'}, 'tenant_name': {'key': 'properties.tenantName', 'type': 'str'}, 'principal_name': {'key': 'properties.principalName', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, } def __init__(self, *, principal_id: str, role, principal_type, tenant_id: str=None, **kwargs) -> None: super(ClusterPrincipalAssignment, self).__init__(**kwargs) self.principal_id = principal_id self.role = role self.tenant_id = tenant_id self.principal_type = principal_type self.tenant_name = None self.principal_name = None self.provisioning_state = None
[docs]class ClusterPrincipalAssignmentCheckNameRequest(Model): """A principal assignment check name availability request. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param name: Required. Principal Assignment resource name. :type name: str :ivar type: Required. The type of resource, Microsoft.Kusto/clusters/principalAssignments. Default value: "Microsoft.Kusto/clusters/principalAssignments" . :vartype type: str """ _validation = { 'name': {'required': True}, 'type': {'required': True, 'constant': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } type = "Microsoft.Kusto/clusters/principalAssignments" def __init__(self, *, name: str, **kwargs) -> None: super(ClusterPrincipalAssignmentCheckNameRequest, self).__init__(**kwargs) self.name = name
[docs]class ClusterUpdate(Resource): """Class representing an update to a Kusto cluster. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param tags: Resource tags. :type tags: dict[str, str] :param location: Resource location. :type location: str :param sku: The SKU of the cluster. :type sku: ~azure.mgmt.kusto.models.AzureSku :param identity: The identity of the cluster, if configured. :type identity: ~azure.mgmt.kusto.models.Identity :ivar state: The state of the resource. Possible values include: 'Creating', 'Unavailable', 'Running', 'Deleting', 'Deleted', 'Stopping', 'Stopped', 'Starting', 'Updating' :vartype state: str or ~azure.mgmt.kusto.models.State :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState :ivar uri: The cluster URI. :vartype uri: str :ivar data_ingestion_uri: The cluster data ingestion URI. :vartype data_ingestion_uri: str :ivar state_reason: The reason for the cluster's current state. :vartype state_reason: str :param trusted_external_tenants: The cluster's external tenants. :type trusted_external_tenants: list[~azure.mgmt.kusto.models.TrustedExternalTenant] :param optimized_autoscale: Optimized auto scale definition. :type optimized_autoscale: ~azure.mgmt.kusto.models.OptimizedAutoscale :param enable_disk_encryption: A boolean value that indicates if the cluster's disks are encrypted. :type enable_disk_encryption: bool :param enable_streaming_ingest: A boolean value that indicates if the streaming ingest is enabled. Default value: False . :type enable_streaming_ingest: bool :param virtual_network_configuration: Virtual network definition. :type virtual_network_configuration: ~azure.mgmt.kusto.models.VirtualNetworkConfiguration :param key_vault_properties: KeyVault properties for the cluster encryption. :type key_vault_properties: ~azure.mgmt.kusto.models.KeyVaultProperties :param enable_purge: A boolean value that indicates if the purge operations are enabled. Default value: False . :type enable_purge: bool :ivar language_extensions: List of the cluster's language extensions. :vartype language_extensions: ~azure.mgmt.kusto.models.LanguageExtensionsList :param enable_double_encryption: A boolean value that indicates if double encryption is enabled. Default value: False . :type enable_double_encryption: bool """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'state': {'readonly': True}, 'provisioning_state': {'readonly': True}, 'uri': {'readonly': True}, 'data_ingestion_uri': {'readonly': True}, 'state_reason': {'readonly': True}, 'language_extensions': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'AzureSku'}, 'identity': {'key': 'identity', 'type': 'Identity'}, 'state': {'key': 'properties.state', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'uri': {'key': 'properties.uri', 'type': 'str'}, 'data_ingestion_uri': {'key': 'properties.dataIngestionUri', 'type': 'str'}, 'state_reason': {'key': 'properties.stateReason', 'type': 'str'}, 'trusted_external_tenants': {'key': 'properties.trustedExternalTenants', 'type': '[TrustedExternalTenant]'}, 'optimized_autoscale': {'key': 'properties.optimizedAutoscale', 'type': 'OptimizedAutoscale'}, 'enable_disk_encryption': {'key': 'properties.enableDiskEncryption', 'type': 'bool'}, 'enable_streaming_ingest': {'key': 'properties.enableStreamingIngest', 'type': 'bool'}, 'virtual_network_configuration': {'key': 'properties.virtualNetworkConfiguration', 'type': 'VirtualNetworkConfiguration'}, 'key_vault_properties': {'key': 'properties.keyVaultProperties', 'type': 'KeyVaultProperties'}, 'enable_purge': {'key': 'properties.enablePurge', 'type': 'bool'}, 'language_extensions': {'key': 'properties.languageExtensions', 'type': 'LanguageExtensionsList'}, 'enable_double_encryption': {'key': 'properties.enableDoubleEncryption', 'type': 'bool'}, } def __init__(self, *, tags=None, location: str=None, sku=None, identity=None, trusted_external_tenants=None, optimized_autoscale=None, enable_disk_encryption: bool=None, enable_streaming_ingest: bool=False, virtual_network_configuration=None, key_vault_properties=None, enable_purge: bool=False, enable_double_encryption: bool=False, **kwargs) -> None: super(ClusterUpdate, self).__init__(**kwargs) self.tags = tags self.location = location self.sku = sku self.identity = identity self.state = None self.provisioning_state = None self.uri = None self.data_ingestion_uri = None self.state_reason = None self.trusted_external_tenants = trusted_external_tenants self.optimized_autoscale = optimized_autoscale self.enable_disk_encryption = enable_disk_encryption self.enable_streaming_ingest = enable_streaming_ingest self.virtual_network_configuration = virtual_network_configuration self.key_vault_properties = key_vault_properties self.enable_purge = enable_purge self.language_extensions = None self.enable_double_encryption = enable_double_encryption
[docs]class Database(ProxyResource): """Class representing a Kusto database. You probably want to use the sub-classes and not this class directly. Known sub-classes are: ReadWriteDatabase, ReadOnlyFollowingDatabase Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, } _subtype_map = { 'kind': {'ReadWrite': 'ReadWriteDatabase', 'ReadOnlyFollowing': 'ReadOnlyFollowingDatabase'} } def __init__(self, *, location: str=None, **kwargs) -> None: super(Database, self).__init__(**kwargs) self.location = location self.kind = None self.kind = 'Database'
[docs]class DatabasePrincipal(Model): """A class representing database principal entity. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param role: Required. Database principal role. Possible values include: 'Admin', 'Ingestor', 'Monitor', 'User', 'UnrestrictedViewers', 'Viewer' :type role: str or ~azure.mgmt.kusto.models.DatabasePrincipalRole :param name: Required. Database principal name. :type name: str :param type: Required. Database principal type. Possible values include: 'App', 'Group', 'User' :type type: str or ~azure.mgmt.kusto.models.DatabasePrincipalType :param fqn: Database principal fully qualified name. :type fqn: str :param email: Database principal email if exists. :type email: str :param app_id: Application id - relevant only for application principal type. :type app_id: str :ivar tenant_name: The tenant name of the principal :vartype tenant_name: str """ _validation = { 'role': {'required': True}, 'name': {'required': True}, 'type': {'required': True}, 'tenant_name': {'readonly': True}, } _attribute_map = { 'role': {'key': 'role', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'fqn': {'key': 'fqn', 'type': 'str'}, 'email': {'key': 'email', 'type': 'str'}, 'app_id': {'key': 'appId', 'type': 'str'}, 'tenant_name': {'key': 'tenantName', 'type': 'str'}, } def __init__(self, *, role, name: str, type, fqn: str=None, email: str=None, app_id: str=None, **kwargs) -> None: super(DatabasePrincipal, self).__init__(**kwargs) self.role = role self.name = name self.type = type self.fqn = fqn self.email = email self.app_id = app_id self.tenant_name = None
[docs]class DatabasePrincipalAssignment(ProxyResource): """Class representing a database principal assignment. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param principal_id: Required. The principal ID assigned to the database principal. It can be a user email, application ID, or security group name. :type principal_id: str :param role: Required. Database principal role. Possible values include: 'Admin', 'Ingestor', 'Monitor', 'User', 'UnrestrictedViewers', 'Viewer' :type role: str or ~azure.mgmt.kusto.models.DatabasePrincipalRole :param tenant_id: The tenant id of the principal :type tenant_id: str :param principal_type: Required. Principal type. Possible values include: 'App', 'Group', 'User' :type principal_type: str or ~azure.mgmt.kusto.models.PrincipalType :ivar tenant_name: The tenant name of the principal :vartype tenant_name: str :ivar principal_name: The principal name :vartype principal_name: str :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'principal_id': {'required': True}, 'role': {'required': True}, 'principal_type': {'required': True}, 'tenant_name': {'readonly': True}, 'principal_name': {'readonly': True}, 'provisioning_state': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'principal_id': {'key': 'properties.principalId', 'type': 'str'}, 'role': {'key': 'properties.role', 'type': 'str'}, 'tenant_id': {'key': 'properties.tenantId', 'type': 'str'}, 'principal_type': {'key': 'properties.principalType', 'type': 'str'}, 'tenant_name': {'key': 'properties.tenantName', 'type': 'str'}, 'principal_name': {'key': 'properties.principalName', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, } def __init__(self, *, principal_id: str, role, principal_type, tenant_id: str=None, **kwargs) -> None: super(DatabasePrincipalAssignment, self).__init__(**kwargs) self.principal_id = principal_id self.role = role self.tenant_id = tenant_id self.principal_type = principal_type self.tenant_name = None self.principal_name = None self.provisioning_state = None
[docs]class DatabasePrincipalAssignmentCheckNameRequest(Model): """A principal assignment check name availability request. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param name: Required. Principal Assignment resource name. :type name: str :ivar type: Required. The type of resource, Microsoft.Kusto/clusters/databases/principalAssignments. Default value: "Microsoft.Kusto/clusters/databases/principalAssignments" . :vartype type: str """ _validation = { 'name': {'required': True}, 'type': {'required': True, 'constant': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } type = "Microsoft.Kusto/clusters/databases/principalAssignments" def __init__(self, *, name: str, **kwargs) -> None: super(DatabasePrincipalAssignmentCheckNameRequest, self).__init__(**kwargs) self.name = name
[docs]class DatabasePrincipalListRequest(Model): """The list Kusto database principals operation request. :param value: The list of Kusto database principals. :type value: list[~azure.mgmt.kusto.models.DatabasePrincipal] """ _attribute_map = { 'value': {'key': 'value', 'type': '[DatabasePrincipal]'}, } def __init__(self, *, value=None, **kwargs) -> None: super(DatabasePrincipalListRequest, self).__init__(**kwargs) self.value = value
[docs]class DatabasePrincipalListResult(Model): """The list Kusto database principals operation response. :param value: The list of Kusto database principals. :type value: list[~azure.mgmt.kusto.models.DatabasePrincipal] """ _attribute_map = { 'value': {'key': 'value', 'type': '[DatabasePrincipal]'}, } def __init__(self, *, value=None, **kwargs) -> None: super(DatabasePrincipalListResult, self).__init__(**kwargs) self.value = value
[docs]class DatabaseStatistics(Model): """A class that contains database statistics information. :param size: The database size - the total size of compressed data and index in bytes. :type size: float """ _attribute_map = { 'size': {'key': 'size', 'type': 'float'}, } def __init__(self, *, size: float=None, **kwargs) -> None: super(DatabaseStatistics, self).__init__(**kwargs) self.size = size
[docs]class DataConnection(ProxyResource): """Class representing an data connection. You probably want to use the sub-classes and not this class directly. Known sub-classes are: EventHubDataConnection, IotHubDataConnection, EventGridDataConnection Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, } _subtype_map = { 'kind': {'EventHub': 'EventHubDataConnection', 'IotHub': 'IotHubDataConnection', 'EventGrid': 'EventGridDataConnection'} } def __init__(self, *, location: str=None, **kwargs) -> None: super(DataConnection, self).__init__(**kwargs) self.location = location self.kind = None self.kind = 'DataConnection'
[docs]class DataConnectionCheckNameRequest(Model): """A data connection check name availability request. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param name: Required. Data Connection name. :type name: str :ivar type: Required. The type of resource, Microsoft.Kusto/clusters/databases/dataConnections. Default value: "Microsoft.Kusto/clusters/databases/dataConnections" . :vartype type: str """ _validation = { 'name': {'required': True}, 'type': {'required': True, 'constant': True}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, } type = "Microsoft.Kusto/clusters/databases/dataConnections" def __init__(self, *, name: str, **kwargs) -> None: super(DataConnectionCheckNameRequest, self).__init__(**kwargs) self.name = name
[docs]class DataConnectionValidation(Model): """Class representing an data connection validation. :param data_connection_name: The name of the data connection. :type data_connection_name: str :param properties: The data connection properties to validate. :type properties: ~azure.mgmt.kusto.models.DataConnection """ _attribute_map = { 'data_connection_name': {'key': 'dataConnectionName', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'DataConnection'}, } def __init__(self, *, data_connection_name: str=None, properties=None, **kwargs) -> None: super(DataConnectionValidation, self).__init__(**kwargs) self.data_connection_name = data_connection_name self.properties = properties
[docs]class DataConnectionValidationListResult(Model): """The list Kusto data connection validation result. :param value: The list of Kusto data connection validation errors. :type value: list[~azure.mgmt.kusto.models.DataConnectionValidationResult] """ _attribute_map = { 'value': {'key': 'value', 'type': '[DataConnectionValidationResult]'}, } def __init__(self, *, value=None, **kwargs) -> None: super(DataConnectionValidationListResult, self).__init__(**kwargs) self.value = value
[docs]class DataConnectionValidationResult(Model): """The result returned from a data connection validation request. :param error_message: A message which indicates a problem in data connection validation. :type error_message: str """ _attribute_map = { 'error_message': {'key': 'errorMessage', 'type': 'str'}, } def __init__(self, *, error_message: str=None, **kwargs) -> None: super(DataConnectionValidationResult, self).__init__(**kwargs) self.error_message = error_message
[docs]class DiagnoseVirtualNetworkResult(Model): """DiagnoseVirtualNetworkResult. :param findings: The list of network connectivity diagnostic finding :type findings: list[str] """ _attribute_map = { 'findings': {'key': 'findings', 'type': '[str]'}, } def __init__(self, *, findings=None, **kwargs) -> None: super(DiagnoseVirtualNetworkResult, self).__init__(**kwargs) self.findings = findings
[docs]class EventGridDataConnection(DataConnection): """Class representing an Event Grid data connection. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str :param storage_account_resource_id: Required. The resource ID of the storage account where the data resides. :type storage_account_resource_id: str :param event_hub_resource_id: Required. The resource ID where the event grid is configured to send events. :type event_hub_resource_id: str :param consumer_group: Required. The event hub consumer group. :type consumer_group: str :param table_name: The table where the data should be ingested. Optionally the table information can be added to each message. :type table_name: str :param mapping_rule_name: The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message. :type mapping_rule_name: str :param data_format: The data format of the message. Optionally the data format can be added to each message. Possible values include: 'MULTIJSON', 'JSON', 'CSV', 'TSV', 'SCSV', 'SOHSV', 'PSV', 'TXT', 'RAW', 'SINGLEJSON', 'AVRO', 'TSVE', 'PARQUET', 'ORC', 'APACHEAVRO', 'W3CLOGFILE' :type data_format: str or ~azure.mgmt.kusto.models.EventGridDataFormat :param ignore_first_record: A Boolean value that, if set to true, indicates that ingestion should ignore the first record of every file :type ignore_first_record: bool :param blob_storage_event_type: The name of blob storage event type to process. Possible values include: 'Microsoft.Storage.BlobCreated', 'Microsoft.Storage.BlobRenamed' :type blob_storage_event_type: str or ~azure.mgmt.kusto.models.BlobStorageEventType """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, 'storage_account_resource_id': {'required': True}, 'event_hub_resource_id': {'required': True}, 'consumer_group': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'storage_account_resource_id': {'key': 'properties.storageAccountResourceId', 'type': 'str'}, 'event_hub_resource_id': {'key': 'properties.eventHubResourceId', 'type': 'str'}, 'consumer_group': {'key': 'properties.consumerGroup', 'type': 'str'}, 'table_name': {'key': 'properties.tableName', 'type': 'str'}, 'mapping_rule_name': {'key': 'properties.mappingRuleName', 'type': 'str'}, 'data_format': {'key': 'properties.dataFormat', 'type': 'str'}, 'ignore_first_record': {'key': 'properties.ignoreFirstRecord', 'type': 'bool'}, 'blob_storage_event_type': {'key': 'properties.blobStorageEventType', 'type': 'str'}, } def __init__(self, *, storage_account_resource_id: str, event_hub_resource_id: str, consumer_group: str, location: str=None, table_name: str=None, mapping_rule_name: str=None, data_format=None, ignore_first_record: bool=None, blob_storage_event_type=None, **kwargs) -> None: super(EventGridDataConnection, self).__init__(location=location, **kwargs) self.storage_account_resource_id = storage_account_resource_id self.event_hub_resource_id = event_hub_resource_id self.consumer_group = consumer_group self.table_name = table_name self.mapping_rule_name = mapping_rule_name self.data_format = data_format self.ignore_first_record = ignore_first_record self.blob_storage_event_type = blob_storage_event_type self.kind = 'EventGrid'
[docs]class EventHubDataConnection(DataConnection): """Class representing an event hub data connection. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str :param event_hub_resource_id: Required. The resource ID of the event hub to be used to create a data connection. :type event_hub_resource_id: str :param consumer_group: Required. The event hub consumer group. :type consumer_group: str :param table_name: The table where the data should be ingested. Optionally the table information can be added to each message. :type table_name: str :param mapping_rule_name: The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message. :type mapping_rule_name: str :param data_format: The data format of the message. Optionally the data format can be added to each message. Possible values include: 'MULTIJSON', 'JSON', 'CSV', 'TSV', 'SCSV', 'SOHSV', 'PSV', 'TXT', 'RAW', 'SINGLEJSON', 'AVRO', 'TSVE', 'PARQUET', 'ORC', 'APACHEAVRO', 'W3CLOGFILE' :type data_format: str or ~azure.mgmt.kusto.models.EventHubDataFormat :param event_system_properties: System properties of the event hub :type event_system_properties: list[str] :param compression: The event hub messages compression type. Possible values include: 'None', 'GZip' :type compression: str or ~azure.mgmt.kusto.models.Compression """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, 'event_hub_resource_id': {'required': True}, 'consumer_group': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'event_hub_resource_id': {'key': 'properties.eventHubResourceId', 'type': 'str'}, 'consumer_group': {'key': 'properties.consumerGroup', 'type': 'str'}, 'table_name': {'key': 'properties.tableName', 'type': 'str'}, 'mapping_rule_name': {'key': 'properties.mappingRuleName', 'type': 'str'}, 'data_format': {'key': 'properties.dataFormat', 'type': 'str'}, 'event_system_properties': {'key': 'properties.eventSystemProperties', 'type': '[str]'}, 'compression': {'key': 'properties.compression', 'type': 'str'}, } def __init__(self, *, event_hub_resource_id: str, consumer_group: str, location: str=None, table_name: str=None, mapping_rule_name: str=None, data_format=None, event_system_properties=None, compression=None, **kwargs) -> None: super(EventHubDataConnection, self).__init__(location=location, **kwargs) self.event_hub_resource_id = event_hub_resource_id self.consumer_group = consumer_group self.table_name = table_name self.mapping_rule_name = mapping_rule_name self.data_format = data_format self.event_system_properties = event_system_properties self.compression = compression self.kind = 'EventHub'
[docs]class FollowerDatabaseDefinition(Model): """A class representing follower database request. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :param cluster_resource_id: Required. Resource id of the cluster that follows a database owned by this cluster. :type cluster_resource_id: str :param attached_database_configuration_name: Required. Resource name of the attached database configuration in the follower cluster. :type attached_database_configuration_name: str :ivar database_name: The database name owned by this cluster that was followed. * in case following all databases. :vartype database_name: str """ _validation = { 'cluster_resource_id': {'required': True}, 'attached_database_configuration_name': {'required': True}, 'database_name': {'readonly': True}, } _attribute_map = { 'cluster_resource_id': {'key': 'clusterResourceId', 'type': 'str'}, 'attached_database_configuration_name': {'key': 'attachedDatabaseConfigurationName', 'type': 'str'}, 'database_name': {'key': 'databaseName', 'type': 'str'}, } def __init__(self, *, cluster_resource_id: str, attached_database_configuration_name: str, **kwargs) -> None: super(FollowerDatabaseDefinition, self).__init__(**kwargs) self.cluster_resource_id = cluster_resource_id self.attached_database_configuration_name = attached_database_configuration_name self.database_name = None
[docs]class Identity(Model): """Identity for the resource. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar principal_id: The principal ID of resource identity. :vartype principal_id: str :ivar tenant_id: The tenant ID of resource. :vartype tenant_id: str :param type: Required. The identity type. Possible values include: 'None', 'SystemAssigned' :type type: str or ~azure.mgmt.kusto.models.IdentityType :param user_assigned_identities: The list of user identities associated with the Kusto cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. :type user_assigned_identities: dict[str, ~azure.mgmt.kusto.models.IdentityUserAssignedIdentitiesValue] """ _validation = { 'principal_id': {'readonly': True}, 'tenant_id': {'readonly': True}, 'type': {'required': True}, } _attribute_map = { 'principal_id': {'key': 'principalId', 'type': 'str'}, 'tenant_id': {'key': 'tenantId', 'type': 'str'}, 'type': {'key': 'type', 'type': 'IdentityType'}, 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{IdentityUserAssignedIdentitiesValue}'}, } def __init__(self, *, type, user_assigned_identities=None, **kwargs) -> None: super(Identity, self).__init__(**kwargs) self.principal_id = None self.tenant_id = None self.type = type self.user_assigned_identities = user_assigned_identities
[docs]class IdentityUserAssignedIdentitiesValue(Model): """IdentityUserAssignedIdentitiesValue. Variables are only populated by the server, and will be ignored when sending a request. :ivar principal_id: The principal id of user assigned identity. :vartype principal_id: str :ivar client_id: The client id of user assigned identity. :vartype client_id: str """ _validation = { 'principal_id': {'readonly': True}, 'client_id': {'readonly': True}, } _attribute_map = { 'principal_id': {'key': 'principalId', 'type': 'str'}, 'client_id': {'key': 'clientId', 'type': 'str'}, } def __init__(self, **kwargs) -> None: super(IdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) self.principal_id = None self.client_id = None
[docs]class IotHubDataConnection(DataConnection): """Class representing an iot hub data connection. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str :param iot_hub_resource_id: Required. The resource ID of the Iot hub to be used to create a data connection. :type iot_hub_resource_id: str :param consumer_group: Required. The iot hub consumer group. :type consumer_group: str :param table_name: The table where the data should be ingested. Optionally the table information can be added to each message. :type table_name: str :param mapping_rule_name: The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message. :type mapping_rule_name: str :param data_format: The data format of the message. Optionally the data format can be added to each message. Possible values include: 'MULTIJSON', 'JSON', 'CSV', 'TSV', 'SCSV', 'SOHSV', 'PSV', 'TXT', 'RAW', 'SINGLEJSON', 'AVRO', 'TSVE', 'PARQUET', 'ORC', 'APACHEAVRO', 'W3CLOGFILE' :type data_format: str or ~azure.mgmt.kusto.models.IotHubDataFormat :param event_system_properties: System properties of the iot hub :type event_system_properties: list[str] :param shared_access_policy_name: Required. The name of the share access policy :type shared_access_policy_name: str """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, 'iot_hub_resource_id': {'required': True}, 'consumer_group': {'required': True}, 'shared_access_policy_name': {'required': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'iot_hub_resource_id': {'key': 'properties.iotHubResourceId', 'type': 'str'}, 'consumer_group': {'key': 'properties.consumerGroup', 'type': 'str'}, 'table_name': {'key': 'properties.tableName', 'type': 'str'}, 'mapping_rule_name': {'key': 'properties.mappingRuleName', 'type': 'str'}, 'data_format': {'key': 'properties.dataFormat', 'type': 'str'}, 'event_system_properties': {'key': 'properties.eventSystemProperties', 'type': '[str]'}, 'shared_access_policy_name': {'key': 'properties.sharedAccessPolicyName', 'type': 'str'}, } def __init__(self, *, iot_hub_resource_id: str, consumer_group: str, shared_access_policy_name: str, location: str=None, table_name: str=None, mapping_rule_name: str=None, data_format=None, event_system_properties=None, **kwargs) -> None: super(IotHubDataConnection, self).__init__(location=location, **kwargs) self.iot_hub_resource_id = iot_hub_resource_id self.consumer_group = consumer_group self.table_name = table_name self.mapping_rule_name = mapping_rule_name self.data_format = data_format self.event_system_properties = event_system_properties self.shared_access_policy_name = shared_access_policy_name self.kind = 'IotHub'
[docs]class KeyVaultProperties(Model): """Properties of the key vault. All required parameters must be populated in order to send to Azure. :param key_name: Required. The name of the key vault key. :type key_name: str :param key_version: Required. The version of the key vault key. :type key_version: str :param key_vault_uri: Required. The Uri of the key vault. :type key_vault_uri: str """ _validation = { 'key_name': {'required': True}, 'key_version': {'required': True}, 'key_vault_uri': {'required': True}, } _attribute_map = { 'key_name': {'key': 'keyName', 'type': 'str'}, 'key_version': {'key': 'keyVersion', 'type': 'str'}, 'key_vault_uri': {'key': 'keyVaultUri', 'type': 'str'}, } def __init__(self, *, key_name: str, key_version: str, key_vault_uri: str, **kwargs) -> None: super(KeyVaultProperties, self).__init__(**kwargs) self.key_name = key_name self.key_version = key_version self.key_vault_uri = key_vault_uri
[docs]class LanguageExtension(Model): """The language extension object. :param language_extension_name: The language extension name. Possible values include: 'PYTHON', 'R' :type language_extension_name: str or ~azure.mgmt.kusto.models.LanguageExtensionName """ _attribute_map = { 'language_extension_name': {'key': 'languageExtensionName', 'type': 'str'}, } def __init__(self, *, language_extension_name=None, **kwargs) -> None: super(LanguageExtension, self).__init__(**kwargs) self.language_extension_name = language_extension_name
[docs]class LanguageExtensionsList(Model): """The list of language extension objects. :param value: The list of language extensions. :type value: list[~azure.mgmt.kusto.models.LanguageExtension] """ _attribute_map = { 'value': {'key': 'value', 'type': '[LanguageExtension]'}, } def __init__(self, *, value=None, **kwargs) -> None: super(LanguageExtensionsList, self).__init__(**kwargs) self.value = value
[docs]class Operation(Model): """A REST API operation. :param name: The operation name. This is of the format {provider}/{resource}/{operation}. :type name: str :param display: The object that describes the operation. :type display: ~azure.mgmt.kusto.models.OperationDisplay :param origin: The intended executor of the operation. :type origin: str :param properties: Properties of the operation. :type properties: object """ _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'display': {'key': 'display', 'type': 'OperationDisplay'}, 'origin': {'key': 'origin', 'type': 'str'}, 'properties': {'key': 'properties', 'type': 'object'}, } def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None: super(Operation, self).__init__(**kwargs) self.name = name self.display = display self.origin = origin self.properties = properties
[docs]class OperationDisplay(Model): """The object that describes the operation. :param provider: Friendly name of the resource provider. :type provider: str :param operation: The operation type. For example: read, write, delete. :type operation: str :param resource: The resource type on which the operation is performed. :type resource: str :param description: The friendly name of the operation. :type description: str """ _attribute_map = { 'provider': {'key': 'provider', 'type': 'str'}, 'operation': {'key': 'operation', 'type': 'str'}, 'resource': {'key': 'resource', 'type': 'str'}, 'description': {'key': 'description', 'type': 'str'}, } def __init__(self, *, provider: str=None, operation: str=None, resource: str=None, description: str=None, **kwargs) -> None: super(OperationDisplay, self).__init__(**kwargs) self.provider = provider self.operation = operation self.resource = resource self.description = description
[docs]class OptimizedAutoscale(Model): """A class that contains the optimized auto scale definition. All required parameters must be populated in order to send to Azure. :param version: Required. The version of the template defined, for instance 1. :type version: int :param is_enabled: Required. A boolean value that indicate if the optimized autoscale feature is enabled or not. :type is_enabled: bool :param minimum: Required. Minimum allowed instances count. :type minimum: int :param maximum: Required. Maximum allowed instances count. :type maximum: int """ _validation = { 'version': {'required': True}, 'is_enabled': {'required': True}, 'minimum': {'required': True}, 'maximum': {'required': True}, } _attribute_map = { 'version': {'key': 'version', 'type': 'int'}, 'is_enabled': {'key': 'isEnabled', 'type': 'bool'}, 'minimum': {'key': 'minimum', 'type': 'int'}, 'maximum': {'key': 'maximum', 'type': 'int'}, } def __init__(self, *, version: int, is_enabled: bool, minimum: int, maximum: int, **kwargs) -> None: super(OptimizedAutoscale, self).__init__(**kwargs) self.version = version self.is_enabled = is_enabled self.minimum = minimum self.maximum = maximum
[docs]class ReadOnlyFollowingDatabase(Database): """Class representing a read only following database. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState :ivar soft_delete_period: The time the data should be kept before it stops being accessible to queries in TimeSpan. :vartype soft_delete_period: timedelta :param hot_cache_period: The time the data should be kept in cache for fast queries in TimeSpan. :type hot_cache_period: timedelta :param statistics: The statistics of the database. :type statistics: ~azure.mgmt.kusto.models.DatabaseStatistics :ivar leader_cluster_resource_id: The name of the leader cluster :vartype leader_cluster_resource_id: str :ivar attached_database_configuration_name: The name of the attached database configuration cluster :vartype attached_database_configuration_name: str :ivar principals_modification_kind: The principals modification kind of the database. Possible values include: 'Union', 'Replace', 'None' :vartype principals_modification_kind: str or ~azure.mgmt.kusto.models.PrincipalsModificationKind """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, 'provisioning_state': {'readonly': True}, 'soft_delete_period': {'readonly': True}, 'leader_cluster_resource_id': {'readonly': True}, 'attached_database_configuration_name': {'readonly': True}, 'principals_modification_kind': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'soft_delete_period': {'key': 'properties.softDeletePeriod', 'type': 'duration'}, 'hot_cache_period': {'key': 'properties.hotCachePeriod', 'type': 'duration'}, 'statistics': {'key': 'properties.statistics', 'type': 'DatabaseStatistics'}, 'leader_cluster_resource_id': {'key': 'properties.leaderClusterResourceId', 'type': 'str'}, 'attached_database_configuration_name': {'key': 'properties.attachedDatabaseConfigurationName', 'type': 'str'}, 'principals_modification_kind': {'key': 'properties.principalsModificationKind', 'type': 'str'}, } def __init__(self, *, location: str=None, hot_cache_period=None, statistics=None, **kwargs) -> None: super(ReadOnlyFollowingDatabase, self).__init__(location=location, **kwargs) self.provisioning_state = None self.soft_delete_period = None self.hot_cache_period = hot_cache_period self.statistics = statistics self.leader_cluster_resource_id = None self.attached_database_configuration_name = None self.principals_modification_kind = None self.kind = 'ReadOnlyFollowing'
[docs]class ReadWriteDatabase(Database): """Class representing a read write database. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} :vartype id: str :ivar name: The name of the resource :vartype name: str :ivar type: The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts. :vartype type: str :param location: Resource location. :type location: str :param kind: Required. Constant filled by server. :type kind: str :ivar provisioning_state: The provisioned state of the resource. Possible values include: 'Running', 'Creating', 'Deleting', 'Succeeded', 'Failed', 'Moving' :vartype provisioning_state: str or ~azure.mgmt.kusto.models.ProvisioningState :param soft_delete_period: The time the data should be kept before it stops being accessible to queries in TimeSpan. :type soft_delete_period: timedelta :param hot_cache_period: The time the data should be kept in cache for fast queries in TimeSpan. :type hot_cache_period: timedelta :param statistics: The statistics of the database. :type statistics: ~azure.mgmt.kusto.models.DatabaseStatistics :ivar is_followed: Indicates whether the database is followed. :vartype is_followed: bool """ _validation = { 'id': {'readonly': True}, 'name': {'readonly': True}, 'type': {'readonly': True}, 'kind': {'required': True}, 'provisioning_state': {'readonly': True}, 'is_followed': {'readonly': True}, } _attribute_map = { 'id': {'key': 'id', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'type': {'key': 'type', 'type': 'str'}, 'location': {'key': 'location', 'type': 'str'}, 'kind': {'key': 'kind', 'type': 'str'}, 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, 'soft_delete_period': {'key': 'properties.softDeletePeriod', 'type': 'duration'}, 'hot_cache_period': {'key': 'properties.hotCachePeriod', 'type': 'duration'}, 'statistics': {'key': 'properties.statistics', 'type': 'DatabaseStatistics'}, 'is_followed': {'key': 'properties.isFollowed', 'type': 'bool'}, } def __init__(self, *, location: str=None, soft_delete_period=None, hot_cache_period=None, statistics=None, **kwargs) -> None: super(ReadWriteDatabase, self).__init__(location=location, **kwargs) self.provisioning_state = None self.soft_delete_period = soft_delete_period self.hot_cache_period = hot_cache_period self.statistics = statistics self.is_followed = None self.kind = 'ReadWrite'
[docs]class SkuDescription(Model): """The Kusto SKU description of given resource type. Variables are only populated by the server, and will be ignored when sending a request. :ivar resource_type: The resource type :vartype resource_type: str :ivar name: The name of the SKU :vartype name: str :ivar tier: The tier of the SKU :vartype tier: str :ivar locations: The set of locations that the SKU is available :vartype locations: list[str] :ivar location_info: Locations and zones :vartype location_info: list[~azure.mgmt.kusto.models.SkuLocationInfoItem] :ivar restrictions: The restrictions because of which SKU cannot be used :vartype restrictions: list[object] """ _validation = { 'resource_type': {'readonly': True}, 'name': {'readonly': True}, 'tier': {'readonly': True}, 'locations': {'readonly': True}, 'location_info': {'readonly': True}, 'restrictions': {'readonly': True}, } _attribute_map = { 'resource_type': {'key': 'resourceType', 'type': 'str'}, 'name': {'key': 'name', 'type': 'str'}, 'tier': {'key': 'tier', 'type': 'str'}, 'locations': {'key': 'locations', 'type': '[str]'}, 'location_info': {'key': 'locationInfo', 'type': '[SkuLocationInfoItem]'}, 'restrictions': {'key': 'restrictions', 'type': '[object]'}, } def __init__(self, **kwargs) -> None: super(SkuDescription, self).__init__(**kwargs) self.resource_type = None self.name = None self.tier = None self.locations = None self.location_info = None self.restrictions = None
[docs]class SkuLocationInfoItem(Model): """The locations and zones info for SKU. All required parameters must be populated in order to send to Azure. :param location: Required. The available location of the SKU. :type location: str :param zones: The available zone of the SKU. :type zones: list[str] """ _validation = { 'location': {'required': True}, } _attribute_map = { 'location': {'key': 'location', 'type': 'str'}, 'zones': {'key': 'zones', 'type': '[str]'}, } def __init__(self, *, location: str, zones=None, **kwargs) -> None: super(SkuLocationInfoItem, self).__init__(**kwargs) self.location = location self.zones = zones
[docs]class TrustedExternalTenant(Model): """Represents a tenant ID that is trusted by the cluster. :param value: GUID representing an external tenant. :type value: str """ _attribute_map = { 'value': {'key': 'value', 'type': 'str'}, } def __init__(self, *, value: str=None, **kwargs) -> None: super(TrustedExternalTenant, self).__init__(**kwargs) self.value = value
[docs]class VirtualNetworkConfiguration(Model): """A class that contains virtual network definition. All required parameters must be populated in order to send to Azure. :param subnet_id: Required. The subnet resource id. :type subnet_id: str :param engine_public_ip_id: Required. Engine service's public IP address resource id. :type engine_public_ip_id: str :param data_management_public_ip_id: Required. Data management's service public IP address resource id. :type data_management_public_ip_id: str """ _validation = { 'subnet_id': {'required': True}, 'engine_public_ip_id': {'required': True}, 'data_management_public_ip_id': {'required': True}, } _attribute_map = { 'subnet_id': {'key': 'subnetId', 'type': 'str'}, 'engine_public_ip_id': {'key': 'enginePublicIpId', 'type': 'str'}, 'data_management_public_ip_id': {'key': 'dataManagementPublicIpId', 'type': 'str'}, } def __init__(self, *, subnet_id: str, engine_public_ip_id: str, data_management_public_ip_id: str, **kwargs) -> None: super(VirtualNetworkConfiguration, self).__init__(**kwargs) self.subnet_id = subnet_id self.engine_public_ip_id = engine_public_ip_id self.data_management_public_ip_id = data_management_public_ip_id