@microsoft/terraform-cdk-constructs 0.0.3-pre.6 → 0.0.3-pre.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +909 -306
- package/API.md +2488 -255
- package/README.md +112 -18
- package/docs/images/ide-documentation.png +0 -0
- package/lib/azure-actiongroup/lib/actiongroup.d.ts +39 -0
- package/lib/azure-actiongroup/lib/actiongroup.js +40 -1
- package/lib/azure-applicationgateway/lib/gateway.d.ts +76 -0
- package/lib/azure-applicationgateway/lib/gateway.js +78 -2
- package/lib/azure-applicationinsights/lib/appinsights.d.ts +50 -0
- package/lib/azure-applicationinsights/lib/appinsights.js +52 -3
- package/lib/azure-containerregistry/lib/registry.d.ts +29 -0
- package/lib/azure-containerregistry/lib/registry.js +31 -2
- package/lib/azure-datalake/lib/datalake.d.ts +50 -0
- package/lib/azure-datalake/lib/datalake.js +51 -1
- package/lib/azure-datalake/lib/filesystem.d.ts +51 -0
- package/lib/azure-datalake/lib/filesystem.js +52 -1
- package/lib/azure-datalake/lib/path.d.ts +37 -0
- package/lib/azure-datalake/lib/path.js +38 -1
- package/lib/azure-eventhub/lib/authorization.d.ts +30 -0
- package/lib/azure-eventhub/lib/authorization.js +32 -2
- package/lib/azure-eventhub/lib/cluster.d.ts +29 -0
- package/lib/azure-eventhub/lib/cluster.js +31 -2
- package/lib/azure-eventhub/lib/consumer.d.ts +28 -0
- package/lib/azure-eventhub/lib/consumer.js +30 -2
- package/lib/azure-eventhub/lib/instance.d.ts +118 -0
- package/lib/azure-eventhub/lib/instance.js +120 -2
- package/lib/azure-eventhub/lib/kusto-connection.d.ts +41 -0
- package/lib/azure-eventhub/lib/kusto-connection.js +43 -2
- package/lib/azure-eventhub/lib/namespace.d.ts +74 -0
- package/lib/azure-eventhub/lib/namespace.js +76 -3
- package/lib/azure-functionapp/lib/functionapplinux.js +1 -1
- package/lib/azure-keyvault/lib/certificate.d.ts +96 -2
- package/lib/azure-keyvault/lib/certificate.js +55 -3
- package/lib/azure-keyvault/lib/key.d.ts +36 -0
- package/lib/azure-keyvault/lib/key.js +38 -2
- package/lib/azure-keyvault/lib/policy.d.ts +30 -0
- package/lib/azure-keyvault/lib/policy.js +32 -2
- package/lib/azure-keyvault/lib/secret.d.ts +31 -0
- package/lib/azure-keyvault/lib/secret.js +33 -2
- package/lib/azure-keyvault/lib/vault.d.ts +188 -0
- package/lib/azure-keyvault/lib/vault.js +191 -7
- package/lib/azure-kubernetes/lib/cluster.d.ts +25 -4
- package/lib/azure-kubernetes/lib/cluster.js +27 -6
- package/lib/azure-kusto/lib/cluster.d.ts +53 -0
- package/lib/azure-kusto/lib/cluster.js +55 -2
- package/lib/azure-kusto/lib/compute-specification.js +1 -1
- package/lib/azure-kusto/lib/database.d.ts +103 -0
- package/lib/azure-kusto/lib/database.js +105 -2
- package/lib/azure-loganalytics/lib/workspace.d.ts +47 -0
- package/lib/azure-loganalytics/lib/workspace.js +49 -2
- package/lib/azure-metricalert/lib/metric-alert.d.ts +43 -4
- package/lib/azure-metricalert/lib/metric-alert.js +45 -6
- package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +1 -1
- package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +92 -0
- package/lib/azure-networksecuritygroup/lib/securitygroup.js +95 -5
- package/lib/azure-queryrulealert/lib/query-rule-alert.d.ts +35 -4
- package/lib/azure-queryrulealert/lib/query-rule-alert.js +37 -6
- package/lib/azure-resourcegroup/lib/resource-group.d.ts +28 -0
- package/lib/azure-resourcegroup/lib/resource-group.js +30 -2
- package/lib/azure-storageaccount/lib/account.d.ts +75 -48
- package/lib/azure-storageaccount/lib/account.js +77 -50
- package/lib/azure-storageaccount/lib/container.d.ts +94 -12
- package/lib/azure-storageaccount/lib/container.js +97 -15
- package/lib/azure-storageaccount/lib/fileshare.d.ts +36 -0
- package/lib/azure-storageaccount/lib/fileshare.js +39 -3
- package/lib/azure-storageaccount/lib/queue.d.ts +29 -0
- package/lib/azure-storageaccount/lib/queue.js +31 -2
- package/lib/azure-storageaccount/lib/table.d.ts +32 -0
- package/lib/azure-storageaccount/lib/table.js +34 -2
- package/lib/azure-virtualmachine/lib/image-references.js +2 -2
- package/lib/azure-virtualmachine/lib/vm.d.ts +84 -8
- package/lib/azure-virtualmachine/lib/vm.js +87 -11
- package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +98 -8
- package/lib/azure-virtualmachinescaleset/lib/cluster.js +101 -11
- package/lib/azure-virtualnetwork/lib/network.d.ts +61 -0
- package/lib/azure-virtualnetwork/lib/network.js +63 -3
- package/lib/azure-virtualnetwork/lib/peering.d.ts +39 -0
- package/lib/azure-virtualnetwork/lib/peering.js +41 -2
- package/lib/core-azure/lib/diagsettings.d.ts +37 -0
- package/lib/core-azure/lib/diagsettings.js +39 -2
- package/lib/core-azure/lib/rbac.d.ts +22 -4
- package/lib/core-azure/lib/rbac.js +24 -6
- package/lib/core-azure/lib/resource.d.ts +45 -0
- package/lib/core-azure/lib/resource.js +48 -4
- package/package.json +1 -1
|
@@ -4,6 +4,43 @@ exports.DataLakePath = void 0;
|
|
|
4
4
|
const storage_data_lake_gen2_path_1 = require("@cdktf/provider-azurerm/lib/storage-data-lake-gen2-path");
|
|
5
5
|
const constructs_1 = require("constructs");
|
|
6
6
|
class DataLakePath extends constructs_1.Construct {
|
|
7
|
+
/**
|
|
8
|
+
* Manages a specific path within an Azure Data Lake Storage Gen2 filesystem.
|
|
9
|
+
*
|
|
10
|
+
* This class provides functionality to configure and manage a data path within a Data Lake Gen2 filesystem,
|
|
11
|
+
* such as directories and files, with access control settings. It is used to create and manage the structure
|
|
12
|
+
* and security settings of data stored in Azure Data Lake Storage Gen2.
|
|
13
|
+
*
|
|
14
|
+
* @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
15
|
+
* @param id - The unique identifier for this instance of the Data Lake path. Typically, this is the name of the path.
|
|
16
|
+
* @param props - Configuration properties for the Data Lake Gen2 path. These properties may include:
|
|
17
|
+
* - `filesystemName`: The name of the filesystem within which this path is defined.
|
|
18
|
+
* - `path`: The specific path within the filesystem. This could represent a file or a directory.
|
|
19
|
+
* - `storageAccountId`: The ID of the Azure Storage account that hosts the filesystem.
|
|
20
|
+
* - `ace`: An array of access control expressions to define permissions for the path.
|
|
21
|
+
* - `owner`: The owner of the path for access control purposes.
|
|
22
|
+
* - `group`: The owning group for the path for access control purposes.
|
|
23
|
+
* - `resource`: Type of the resource, typically a file or directory.
|
|
24
|
+
*
|
|
25
|
+
* Example usage:
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const dataLakePath = new DataLakePath(this, 'myDataPath', {
|
|
28
|
+
* filesystemName: 'myfilesystem',
|
|
29
|
+
* path: 'path/to/directory',
|
|
30
|
+
* storageAccountId: 'storage_account_id',
|
|
31
|
+
* owner: 'owner_id',
|
|
32
|
+
* group: 'group_id',
|
|
33
|
+
* ace: [{
|
|
34
|
+
* id: 'user_id',
|
|
35
|
+
* type: 'user',
|
|
36
|
+
* permissions: 'rwx',
|
|
37
|
+
* }],
|
|
38
|
+
* resource: 'directory'
|
|
39
|
+
* });
|
|
40
|
+
* ```
|
|
41
|
+
* This setup creates and manages a directory or a file path within a specified Data Lake Gen2 filesystem,
|
|
42
|
+
* applying the necessary permissions and access controls as configured.
|
|
43
|
+
*/
|
|
7
44
|
constructor(scope, id, props) {
|
|
8
45
|
super(scope, id);
|
|
9
46
|
this.name = id;
|
|
@@ -11,4 +48,4 @@ class DataLakePath extends constructs_1.Construct {
|
|
|
11
48
|
}
|
|
12
49
|
}
|
|
13
50
|
exports.DataLakePath = DataLakePath;
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1kYXRhbGFrZS9saWIvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5R0FJaUU7QUFDakUsMkNBQXVDO0FBUXZDLE1BQWEsWUFBYSxTQUFRLHNCQUFTO0lBR3pDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FvQ0c7SUFDSCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFvQztRQUVwQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLHFEQUF1QixDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQztDQUNGO0FBakRELG9DQWlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFN0b3JhZ2VEYXRhTGFrZUdlbjJQYXRoLFxuICBTdG9yYWdlRGF0YUxha2VHZW4yUGF0aENvbmZpZyxcbiAgU3RvcmFnZURhdGFMYWtlR2VuMlBhdGhBY2UsXG59IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvc3RvcmFnZS1kYXRhLWxha2UtZ2VuMi1wYXRoXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFMYWtlUGF0aENvbmZpZyB7XG4gIHJlYWRvbmx5IGdyb3VwPzogc3RyaW5nO1xuICByZWFkb25seSBvd25lcj86IHN0cmluZztcbiAgcmVhZG9ubHkgYWNlPzogU3RvcmFnZURhdGFMYWtlR2VuMlBhdGhBY2VbXTtcbn1cblxuZXhwb3J0IGNsYXNzIERhdGFMYWtlUGF0aCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBmaWxlc3lzdGVtOiBTdG9yYWdlRGF0YUxha2VHZW4yUGF0aDtcbiAgLyoqXG4gICAqIE1hbmFnZXMgYSBzcGVjaWZpYyBwYXRoIHdpdGhpbiBhbiBBenVyZSBEYXRhIExha2UgU3RvcmFnZSBHZW4yIGZpbGVzeXN0ZW0uXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgcHJvdmlkZXMgZnVuY3Rpb25hbGl0eSB0byBjb25maWd1cmUgYW5kIG1hbmFnZSBhIGRhdGEgcGF0aCB3aXRoaW4gYSBEYXRhIExha2UgR2VuMiBmaWxlc3lzdGVtLFxuICAgKiBzdWNoIGFzIGRpcmVjdG9yaWVzIGFuZCBmaWxlcywgd2l0aCBhY2Nlc3MgY29udHJvbCBzZXR0aW5ncy4gSXQgaXMgdXNlZCB0byBjcmVhdGUgYW5kIG1hbmFnZSB0aGUgc3RydWN0dXJlXG4gICAqIGFuZCBzZWN1cml0eSBzZXR0aW5ncyBvZiBkYXRhIHN0b3JlZCBpbiBBenVyZSBEYXRhIExha2UgU3RvcmFnZSBHZW4yLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBUaGUgc2NvcGUgaW4gd2hpY2ggdG8gZGVmaW5lIHRoaXMgY29uc3RydWN0LCB0eXBpY2FsbHkgcmVwcmVzZW50aW5nIHRoZSBDbG91ZCBEZXZlbG9wbWVudCBLaXQgKENESykgc3RhY2suXG4gICAqIEBwYXJhbSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBpbnN0YW5jZSBvZiB0aGUgRGF0YSBMYWtlIHBhdGguIFR5cGljYWxseSwgdGhpcyBpcyB0aGUgbmFtZSBvZiB0aGUgcGF0aC5cbiAgICogQHBhcmFtIHByb3BzIC0gQ29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzIGZvciB0aGUgRGF0YSBMYWtlIEdlbjIgcGF0aC4gVGhlc2UgcHJvcGVydGllcyBtYXkgaW5jbHVkZTpcbiAgICogICAgICAgICAgICAgICAgLSBgZmlsZXN5c3RlbU5hbWVgOiBUaGUgbmFtZSBvZiB0aGUgZmlsZXN5c3RlbSB3aXRoaW4gd2hpY2ggdGhpcyBwYXRoIGlzIGRlZmluZWQuXG4gICAqICAgICAgICAgICAgICAgIC0gYHBhdGhgOiBUaGUgc3BlY2lmaWMgcGF0aCB3aXRoaW4gdGhlIGZpbGVzeXN0ZW0uIFRoaXMgY291bGQgcmVwcmVzZW50IGEgZmlsZSBvciBhIGRpcmVjdG9yeS5cbiAgICogICAgICAgICAgICAgICAgLSBgc3RvcmFnZUFjY291bnRJZGA6IFRoZSBJRCBvZiB0aGUgQXp1cmUgU3RvcmFnZSBhY2NvdW50IHRoYXQgaG9zdHMgdGhlIGZpbGVzeXN0ZW0uXG4gICAqICAgICAgICAgICAgICAgIC0gYGFjZWA6IEFuIGFycmF5IG9mIGFjY2VzcyBjb250cm9sIGV4cHJlc3Npb25zIHRvIGRlZmluZSBwZXJtaXNzaW9ucyBmb3IgdGhlIHBhdGguXG4gICAqICAgICAgICAgICAgICAgIC0gYG93bmVyYDogVGhlIG93bmVyIG9mIHRoZSBwYXRoIGZvciBhY2Nlc3MgY29udHJvbCBwdXJwb3Nlcy5cbiAgICogICAgICAgICAgICAgICAgLSBgZ3JvdXBgOiBUaGUgb3duaW5nIGdyb3VwIGZvciB0aGUgcGF0aCBmb3IgYWNjZXNzIGNvbnRyb2wgcHVycG9zZXMuXG4gICAqICAgICAgICAgICAgICAgIC0gYHJlc291cmNlYDogVHlwZSBvZiB0aGUgcmVzb3VyY2UsIHR5cGljYWxseSBhIGZpbGUgb3IgZGlyZWN0b3J5LlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IGRhdGFMYWtlUGF0aCA9IG5ldyBEYXRhTGFrZVBhdGgodGhpcywgJ215RGF0YVBhdGgnLCB7XG4gICAqICAgZmlsZXN5c3RlbU5hbWU6ICdteWZpbGVzeXN0ZW0nLFxuICAgKiAgIHBhdGg6ICdwYXRoL3RvL2RpcmVjdG9yeScsXG4gICAqICAgc3RvcmFnZUFjY291bnRJZDogJ3N0b3JhZ2VfYWNjb3VudF9pZCcsXG4gICAqICAgb3duZXI6ICdvd25lcl9pZCcsXG4gICAqICAgZ3JvdXA6ICdncm91cF9pZCcsXG4gICAqICAgYWNlOiBbe1xuICAgKiAgICAgaWQ6ICd1c2VyX2lkJyxcbiAgICogICAgIHR5cGU6ICd1c2VyJyxcbiAgICogICAgIHBlcm1pc3Npb25zOiAncnd4JyxcbiAgICogICB9XSxcbiAgICogICByZXNvdXJjZTogJ2RpcmVjdG9yeSdcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKiBUaGlzIHNldHVwIGNyZWF0ZXMgYW5kIG1hbmFnZXMgYSBkaXJlY3Rvcnkgb3IgYSBmaWxlIHBhdGggd2l0aGluIGEgc3BlY2lmaWVkIERhdGEgTGFrZSBHZW4yIGZpbGVzeXN0ZW0sXG4gICAqIGFwcGx5aW5nIHRoZSBuZWNlc3NhcnkgcGVybWlzc2lvbnMgYW5kIGFjY2VzcyBjb250cm9scyBhcyBjb25maWd1cmVkLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBTdG9yYWdlRGF0YUxha2VHZW4yUGF0aENvbmZpZyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLm5hbWUgPSBpZDtcbiAgICB0aGlzLmZpbGVzeXN0ZW0gPSBuZXcgU3RvcmFnZURhdGFMYWtlR2VuMlBhdGgodGhpcywgXCJwYXRoXCIsIHByb3BzKTtcbiAgfVxufVxuIl19
|
|
@@ -22,6 +22,36 @@ export declare class AuthorizationRule extends Construct {
|
|
|
22
22
|
readonly ehInstanceAuthProps: EventhubAuthorizationRuleConfig;
|
|
23
23
|
private readonly primaryConnectionString;
|
|
24
24
|
private readonly primaryKey;
|
|
25
|
+
/**
|
|
26
|
+
* Constructs a new Authorization Rule for an Azure Event Hub.
|
|
27
|
+
*
|
|
28
|
+
* This class creates an authorization rule which defines the permissions granted to users and applications
|
|
29
|
+
* for accessing and managing the Event Hub. An Authorization Rule can grant listening, sending, and full manage
|
|
30
|
+
* permissions based on the properties specified.
|
|
31
|
+
*
|
|
32
|
+
* @param scope - The scope in which to define this construct, typically used for managing lifecycles and creation order.
|
|
33
|
+
* @param name - The unique name for this instance of the Authorization Rule.
|
|
34
|
+
* @param ehInstanceAuthProps - The properties for configuring the Authorization Rule. The properties include:
|
|
35
|
+
* - `name`: Required. The name of the Authorization Rule.
|
|
36
|
+
* - `listen`: Optional. Specifies whether the rule allows listening to the Event Hub. Defaults to false.
|
|
37
|
+
* - `send`: Optional. Specifies whether the rule allows sending events to the Event Hub. Defaults to false.
|
|
38
|
+
* - `manage`: Optional. Specifies whether the rule allows managing the Event Hub, including sending and listening. Defaults to false.
|
|
39
|
+
* When `manage` is true, both `listen` and `send` are implicitly set to true.
|
|
40
|
+
*
|
|
41
|
+
* Example usage:
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const authRule = new AuthorizationRule(this, 'exampleAuthRule', {
|
|
44
|
+
* name: 'myAuthRule',
|
|
45
|
+
* listen: true,
|
|
46
|
+
* send: true,
|
|
47
|
+
* manage: false // Only listening and sending are enabled; not managing.
|
|
48
|
+
* });
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @remarks
|
|
52
|
+
* The primary connection string and primary key are accessible after the instance creation,
|
|
53
|
+
* allowing for integration with other Azure services or client applications.
|
|
54
|
+
*/
|
|
25
55
|
constructor(scope: Construct, name: string, ehInstanceAuthProps: EventhubAuthorizationRuleConfig);
|
|
26
56
|
addPrimaryConnectionStringToVault(vault: Vault, name: string, expirationDate?: string): void;
|
|
27
57
|
addPrimaryKeyToVault(vault: Vault, name: string, expirationDate?: string): void;
|
|
@@ -7,6 +7,36 @@ const eventhub_authorization_rule_1 = require("@cdktf/provider-azurerm/lib/event
|
|
|
7
7
|
const cdktf = require("cdktf");
|
|
8
8
|
const constructs_1 = require("constructs");
|
|
9
9
|
class AuthorizationRule extends constructs_1.Construct {
|
|
10
|
+
/**
|
|
11
|
+
* Constructs a new Authorization Rule for an Azure Event Hub.
|
|
12
|
+
*
|
|
13
|
+
* This class creates an authorization rule which defines the permissions granted to users and applications
|
|
14
|
+
* for accessing and managing the Event Hub. An Authorization Rule can grant listening, sending, and full manage
|
|
15
|
+
* permissions based on the properties specified.
|
|
16
|
+
*
|
|
17
|
+
* @param scope - The scope in which to define this construct, typically used for managing lifecycles and creation order.
|
|
18
|
+
* @param name - The unique name for this instance of the Authorization Rule.
|
|
19
|
+
* @param ehInstanceAuthProps - The properties for configuring the Authorization Rule. The properties include:
|
|
20
|
+
* - `name`: Required. The name of the Authorization Rule.
|
|
21
|
+
* - `listen`: Optional. Specifies whether the rule allows listening to the Event Hub. Defaults to false.
|
|
22
|
+
* - `send`: Optional. Specifies whether the rule allows sending events to the Event Hub. Defaults to false.
|
|
23
|
+
* - `manage`: Optional. Specifies whether the rule allows managing the Event Hub, including sending and listening. Defaults to false.
|
|
24
|
+
* When `manage` is true, both `listen` and `send` are implicitly set to true.
|
|
25
|
+
*
|
|
26
|
+
* Example usage:
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const authRule = new AuthorizationRule(this, 'exampleAuthRule', {
|
|
29
|
+
* name: 'myAuthRule',
|
|
30
|
+
* listen: true,
|
|
31
|
+
* send: true,
|
|
32
|
+
* manage: false // Only listening and sending are enabled; not managing.
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* The primary connection string and primary key are accessible after the instance creation,
|
|
38
|
+
* allowing for integration with other Azure services or client applications.
|
|
39
|
+
*/
|
|
10
40
|
constructor(scope, name, ehInstanceAuthProps) {
|
|
11
41
|
super(scope, name);
|
|
12
42
|
this.ehInstanceAuthProps = ehInstanceAuthProps;
|
|
@@ -50,5 +80,5 @@ class AuthorizationRule extends constructs_1.Construct {
|
|
|
50
80
|
}
|
|
51
81
|
exports.AuthorizationRule = AuthorizationRule;
|
|
52
82
|
_a = JSII_RTTI_SYMBOL_1;
|
|
53
|
-
AuthorizationRule[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.AuthorizationRule", version: "0.0.3-pre.
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
AuthorizationRule[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.AuthorizationRule", version: "0.0.3-pre.7" };
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGh1Yi9saWIvYXV0aG9yaXphdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlHQUdpRTtBQUNqRSwrQkFBK0I7QUFDL0IsMkNBQXVDO0FBcUJ2QyxNQUFhLGlCQUFrQixTQUFRLHNCQUFTO0lBSzlDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTZCRztJQUNILFlBQ0UsS0FBZ0IsRUFDaEIsSUFBWSxFQUNaLG1CQUFvRDtRQUVwRCxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRW5CLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztRQUUvQyx1QkFBdUI7UUFDdkIsSUFBSSxNQUFNLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQztRQUNqRCxJQUFJLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO1FBQzdDLElBQUksTUFBTSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUM7UUFFakQsSUFBSSxNQUFNLEVBQUU7WUFDVixNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ2QsSUFBSSxHQUFHLElBQUksQ0FBQztTQUNiO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLHVEQUF5QixDQUNwRCxJQUFJLEVBQ0osbUJBQW1CLENBQUMsSUFBSSxFQUN4QjtZQUNFLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxJQUFJO1lBQzlCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxpQkFBaUI7WUFDN0QsYUFBYSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhO1lBQ3JELFlBQVksRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWTtZQUNuRCxNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRSxJQUFJO1lBQ1YsTUFBTSxFQUFFLE1BQU07U0FDZixDQUNGLENBQUM7UUFFRixVQUFVO1FBQ1YsSUFBSSxDQUFDLHVCQUF1QixHQUFHLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsVUFBVSxDQUFDO1FBRTlDLE1BQU0sdURBQXVELEdBQzNELElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsMkJBQTJCLEVBQUU7WUFDM0QsS0FBSyxFQUFFLGdCQUFnQixDQUFDLHVCQUF1QjtZQUMvQyxTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDLENBQUM7UUFDTCxNQUFNLDBDQUEwQyxHQUM5QyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUM3QyxLQUFLLEVBQUUsZ0JBQWdCLENBQUMsVUFBVTtZQUNsQyxTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDLENBQUM7UUFDTCx1REFBdUQsQ0FBQyxpQkFBaUIsQ0FDdkUsMkJBQTJCLENBQzVCLENBQUM7UUFDRiwwQ0FBMEMsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsaUNBQWlDLENBQy9CLEtBQVksRUFDWixJQUFZLEVBQ1osY0FBdUI7UUFFdkIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUFZLEVBQUUsSUFBWSxFQUFFLGNBQXVCO1FBQ3RFLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDekQsQ0FBQzs7QUFsR0gsOENBbUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRXZlbnRodWJBdXRob3JpemF0aW9uUnVsZSxcbiAgRXZlbnRodWJBdXRob3JpemF0aW9uUnVsZUNvbmZpZyxcbn0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9ldmVudGh1Yi1hdXRob3JpemF0aW9uLXJ1bGVcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFZhdWx0IH0gZnJvbSBcIi4uLy4uL2F6dXJlLWtleXZhdWx0XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aG9yaXphdGlvblJ1bGVQcm9wcyB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSByZXNvdXJjZSBncm91cCBpbiB3aGljaCB0aGUgRXZlbnRIdWIncyBwYXJlbnQgTmFtZXNwYWNlIGV4aXN0cy5cbiAgICovXG4gIHJlYWRvbmx5IGxpc3Rlbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEb2VzIHRoaXMgQXV0aG9yaXphdGlvbiBSdWxlIGhhdmUgcGVybWlzc2lvbnMgdG8gU2VuZCB0byB0aGUgRXZlbnQgSHViP1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VuZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEb2VzIHRoaXMgQXV0aG9yaXphdGlvbiBSdWxlIGhhdmUgcGVybWlzc2lvbnMgdG8gTWFuYWdlIHRvIHRoZSBFdmVudCBIdWI/IFdoZW4gdGhpcyBwcm9wZXJ0eSBpcyB0cnVlIC0gYm90aCBsaXN0ZW4gYW5kIHNlbmQgbXVzdCBiZSB0b28uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBtYW5hZ2U/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvblJ1bGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICByZWFkb25seSBlaEluc3RhbmNlQXV0aFByb3BzOiBFdmVudGh1YkF1dGhvcml6YXRpb25SdWxlQ29uZmlnO1xuICBwcml2YXRlIHJlYWRvbmx5IHByaW1hcnlDb25uZWN0aW9uU3RyaW5nOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJpbWFyeUtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IEF1dGhvcml6YXRpb24gUnVsZSBmb3IgYW4gQXp1cmUgRXZlbnQgSHViLlxuICAgKlxuICAgKiBUaGlzIGNsYXNzIGNyZWF0ZXMgYW4gYXV0aG9yaXphdGlvbiBydWxlIHdoaWNoIGRlZmluZXMgdGhlIHBlcm1pc3Npb25zIGdyYW50ZWQgdG8gdXNlcnMgYW5kIGFwcGxpY2F0aW9uc1xuICAgKiBmb3IgYWNjZXNzaW5nIGFuZCBtYW5hZ2luZyB0aGUgRXZlbnQgSHViLiBBbiBBdXRob3JpemF0aW9uIFJ1bGUgY2FuIGdyYW50IGxpc3RlbmluZywgc2VuZGluZywgYW5kIGZ1bGwgbWFuYWdlXG4gICAqIHBlcm1pc3Npb25zIGJhc2VkIG9uIHRoZSBwcm9wZXJ0aWVzIHNwZWNpZmllZC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdHlwaWNhbGx5IHVzZWQgZm9yIG1hbmFnaW5nIGxpZmVjeWNsZXMgYW5kIGNyZWF0aW9uIG9yZGVyLlxuICAgKiBAcGFyYW0gbmFtZSAtIFRoZSB1bmlxdWUgbmFtZSBmb3IgdGhpcyBpbnN0YW5jZSBvZiB0aGUgQXV0aG9yaXphdGlvbiBSdWxlLlxuICAgKiBAcGFyYW0gZWhJbnN0YW5jZUF1dGhQcm9wcyAtIFRoZSBwcm9wZXJ0aWVzIGZvciBjb25maWd1cmluZyB0aGUgQXV0aG9yaXphdGlvbiBSdWxlLiBUaGUgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBBdXRob3JpemF0aW9uIFJ1bGUuXG4gICAqICAgICAgICAgICAgICAgIC0gYGxpc3RlbmA6IE9wdGlvbmFsLiBTcGVjaWZpZXMgd2hldGhlciB0aGUgcnVsZSBhbGxvd3MgbGlzdGVuaW5nIHRvIHRoZSBFdmVudCBIdWIuIERlZmF1bHRzIHRvIGZhbHNlLlxuICAgKiAgICAgICAgICAgICAgICAtIGBzZW5kYDogT3B0aW9uYWwuIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBydWxlIGFsbG93cyBzZW5kaW5nIGV2ZW50cyB0byB0aGUgRXZlbnQgSHViLiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICogICAgICAgICAgICAgICAgLSBgbWFuYWdlYDogT3B0aW9uYWwuIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBydWxlIGFsbG93cyBtYW5hZ2luZyB0aGUgRXZlbnQgSHViLCBpbmNsdWRpbmcgc2VuZGluZyBhbmQgbGlzdGVuaW5nLiBEZWZhdWx0cyB0byBmYWxzZS5cbiAgICogICAgICAgICAgICAgICAgV2hlbiBgbWFuYWdlYCBpcyB0cnVlLCBib3RoIGBsaXN0ZW5gIGFuZCBgc2VuZGAgYXJlIGltcGxpY2l0bHkgc2V0IHRvIHRydWUuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgYXV0aFJ1bGUgPSBuZXcgQXV0aG9yaXphdGlvblJ1bGUodGhpcywgJ2V4YW1wbGVBdXRoUnVsZScsIHtcbiAgICogICBuYW1lOiAnbXlBdXRoUnVsZScsXG4gICAqICAgbGlzdGVuOiB0cnVlLFxuICAgKiAgIHNlbmQ6IHRydWUsXG4gICAqICAgbWFuYWdlOiBmYWxzZSAvLyBPbmx5IGxpc3RlbmluZyBhbmQgc2VuZGluZyBhcmUgZW5hYmxlZDsgbm90IG1hbmFnaW5nLlxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoZSBwcmltYXJ5IGNvbm5lY3Rpb24gc3RyaW5nIGFuZCBwcmltYXJ5IGtleSBhcmUgYWNjZXNzaWJsZSBhZnRlciB0aGUgaW5zdGFuY2UgY3JlYXRpb24sXG4gICAqIGFsbG93aW5nIGZvciBpbnRlZ3JhdGlvbiB3aXRoIG90aGVyIEF6dXJlIHNlcnZpY2VzIG9yIGNsaWVudCBhcHBsaWNhdGlvbnMuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBlaEluc3RhbmNlQXV0aFByb3BzOiBFdmVudGh1YkF1dGhvcml6YXRpb25SdWxlQ29uZmlnLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgbmFtZSk7XG5cbiAgICB0aGlzLmVoSW5zdGFuY2VBdXRoUHJvcHMgPSBlaEluc3RhbmNlQXV0aFByb3BzO1xuXG4gICAgLy8gRml4IGlucHV0IHByb3BlcnRpZXNcbiAgICBsZXQgbGlzdGVuID0gZWhJbnN0YW5jZUF1dGhQcm9wcy5saXN0ZW4gfHwgZmFsc2U7XG4gICAgbGV0IHNlbmQgPSBlaEluc3RhbmNlQXV0aFByb3BzLnNlbmQgfHwgZmFsc2U7XG4gICAgbGV0IG1hbmFnZSA9IGVoSW5zdGFuY2VBdXRoUHJvcHMubWFuYWdlIHx8IGZhbHNlO1xuXG4gICAgaWYgKG1hbmFnZSkge1xuICAgICAgbGlzdGVuID0gdHJ1ZTtcbiAgICAgIHNlbmQgPSB0cnVlO1xuICAgIH1cblxuICAgIGNvbnN0IGV2ZW50aHViYXV0aHJ1bGUgPSBuZXcgRXZlbnRodWJBdXRob3JpemF0aW9uUnVsZShcbiAgICAgIHRoaXMsXG4gICAgICBlaEluc3RhbmNlQXV0aFByb3BzLm5hbWUsXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGVoSW5zdGFuY2VBdXRoUHJvcHMubmFtZSxcbiAgICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMuZWhJbnN0YW5jZUF1dGhQcm9wcy5yZXNvdXJjZUdyb3VwTmFtZSxcbiAgICAgICAgbmFtZXNwYWNlTmFtZTogdGhpcy5laEluc3RhbmNlQXV0aFByb3BzLm5hbWVzcGFjZU5hbWUsXG4gICAgICAgIGV2ZW50aHViTmFtZTogdGhpcy5laEluc3RhbmNlQXV0aFByb3BzLmV2ZW50aHViTmFtZSxcbiAgICAgICAgbGlzdGVuOiBsaXN0ZW4sXG4gICAgICAgIHNlbmQ6IHNlbmQsXG4gICAgICAgIG1hbmFnZTogbWFuYWdlLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgLy8gT3V0cHV0c1xuICAgIHRoaXMucHJpbWFyeUNvbm5lY3Rpb25TdHJpbmcgPSBldmVudGh1YmF1dGhydWxlLnByaW1hcnlDb25uZWN0aW9uU3RyaW5nO1xuICAgIHRoaXMucHJpbWFyeUtleSA9IGV2ZW50aHViYXV0aHJ1bGUucHJpbWFyeUtleTtcblxuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJBdXRoUHJpbWFyeUNvbm5lY3Rpb25TdHJpbmcgPVxuICAgICAgbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcInByaW1hcnlfY29ubmVjdGlvbl9zdHJpbmdcIiwge1xuICAgICAgICB2YWx1ZTogZXZlbnRodWJhdXRocnVsZS5wcmltYXJ5Q29ubmVjdGlvblN0cmluZyxcbiAgICAgICAgc2Vuc2l0aXZlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXRFdmVudGh1YkF1dGhQcmltYXJ5S2V5ID1cbiAgICAgIG5ldyBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQodGhpcywgXCJwcmltYXJ5X2tleVwiLCB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1YmF1dGhydWxlLnByaW1hcnlLZXksXG4gICAgICAgIHNlbnNpdGl2ZTogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJBdXRoUHJpbWFyeUNvbm5lY3Rpb25TdHJpbmcub3ZlcnJpZGVMb2dpY2FsSWQoXG4gICAgICBcInByaW1hcnlfY29ubmVjdGlvbl9zdHJpbmdcIixcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0RXZlbnRodWJBdXRoUHJpbWFyeUtleS5vdmVycmlkZUxvZ2ljYWxJZChcInByaW1hcnlfa2V5XCIpO1xuICB9XG5cbiAgYWRkUHJpbWFyeUNvbm5lY3Rpb25TdHJpbmdUb1ZhdWx0KFxuICAgIHZhdWx0OiBWYXVsdCxcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgZXhwaXJhdGlvbkRhdGU/OiBzdHJpbmcsXG4gICkge1xuICAgIHZhdWx0LmFkZFNlY3JldChuYW1lLCB0aGlzLnByaW1hcnlDb25uZWN0aW9uU3RyaW5nLCBleHBpcmF0aW9uRGF0ZSk7XG4gIH1cblxuICBhZGRQcmltYXJ5S2V5VG9WYXVsdCh2YXVsdDogVmF1bHQsIG5hbWU6IHN0cmluZywgZXhwaXJhdGlvbkRhdGU/OiBzdHJpbmcpIHtcbiAgICB2YXVsdC5hZGRTZWNyZXQobmFtZSwgdGhpcy5wcmltYXJ5S2V5LCBleHBpcmF0aW9uRGF0ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -23,5 +23,34 @@ export declare class Cluster extends AzureResource {
|
|
|
23
23
|
readonly ehClusterProps: ClusterProps;
|
|
24
24
|
id: string;
|
|
25
25
|
resourceGroup: ResourceGroup;
|
|
26
|
+
/**
|
|
27
|
+
* Constructs a new Event Hub Cluster.
|
|
28
|
+
*
|
|
29
|
+
* This class creates an Azure Event Hub Cluster which is a dedicated capacity resource for handling
|
|
30
|
+
* high-throughput, low-latency event ingestion and streaming. It is used in scenarios where you need
|
|
31
|
+
* predictable performance and cost regardless of the volume of data ingress or number of downstream
|
|
32
|
+
* event consumers.
|
|
33
|
+
*
|
|
34
|
+
* @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
|
|
35
|
+
* @param name - The unique name for this instance of the Event Hub Cluster.
|
|
36
|
+
* @param ehClusterProps - The properties for configuring the Event Hub Cluster. These properties include:
|
|
37
|
+
* - `resourceGroup`: Required. The Azure Resource Group in which the cluster will be deployed.
|
|
38
|
+
* - `name`: Required. The name of the Event Hub Cluster.
|
|
39
|
+
* - `skuName`: Optional. The SKU name for the cluster, which determines the pricing and capabilities.
|
|
40
|
+
* Currently, the only supported value is "Dedicated_1". Defaults to "Dedicated_1" if not specified.
|
|
41
|
+
* - `tags`: Optional. Tags for resource management and categorization.
|
|
42
|
+
*
|
|
43
|
+
* Example usage:
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const eventHubCluster = new Cluster(this, 'myEventHubCluster', {
|
|
46
|
+
* resourceGroup: resourceGroup,
|
|
47
|
+
* name: 'myCluster',
|
|
48
|
+
* skuName: 'Dedicated_1', // This is optional since it defaults to 'Dedicated_1'
|
|
49
|
+
* tags: {
|
|
50
|
+
* department: 'IT'
|
|
51
|
+
* }
|
|
52
|
+
* });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
26
55
|
constructor(scope: Construct, name: string, ehClusterProps: ClusterProps);
|
|
27
56
|
}
|
|
@@ -7,6 +7,35 @@ const eventhub_cluster_1 = require("@cdktf/provider-azurerm/lib/eventhub-cluster
|
|
|
7
7
|
const cdktf = require("cdktf");
|
|
8
8
|
const lib_1 = require("../../core-azure/lib");
|
|
9
9
|
class Cluster extends lib_1.AzureResource {
|
|
10
|
+
/**
|
|
11
|
+
* Constructs a new Event Hub Cluster.
|
|
12
|
+
*
|
|
13
|
+
* This class creates an Azure Event Hub Cluster which is a dedicated capacity resource for handling
|
|
14
|
+
* high-throughput, low-latency event ingestion and streaming. It is used in scenarios where you need
|
|
15
|
+
* predictable performance and cost regardless of the volume of data ingress or number of downstream
|
|
16
|
+
* event consumers.
|
|
17
|
+
*
|
|
18
|
+
* @param scope - The scope in which to define this construct, usually representing the Cloud Development Kit (CDK) stack.
|
|
19
|
+
* @param name - The unique name for this instance of the Event Hub Cluster.
|
|
20
|
+
* @param ehClusterProps - The properties for configuring the Event Hub Cluster. These properties include:
|
|
21
|
+
* - `resourceGroup`: Required. The Azure Resource Group in which the cluster will be deployed.
|
|
22
|
+
* - `name`: Required. The name of the Event Hub Cluster.
|
|
23
|
+
* - `skuName`: Optional. The SKU name for the cluster, which determines the pricing and capabilities.
|
|
24
|
+
* Currently, the only supported value is "Dedicated_1". Defaults to "Dedicated_1" if not specified.
|
|
25
|
+
* - `tags`: Optional. Tags for resource management and categorization.
|
|
26
|
+
*
|
|
27
|
+
* Example usage:
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const eventHubCluster = new Cluster(this, 'myEventHubCluster', {
|
|
30
|
+
* resourceGroup: resourceGroup,
|
|
31
|
+
* name: 'myCluster',
|
|
32
|
+
* skuName: 'Dedicated_1', // This is optional since it defaults to 'Dedicated_1'
|
|
33
|
+
* tags: {
|
|
34
|
+
* department: 'IT'
|
|
35
|
+
* }
|
|
36
|
+
* });
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
10
39
|
constructor(scope, name, ehClusterProps) {
|
|
11
40
|
super(scope, name);
|
|
12
41
|
this.ehClusterProps = ehClusterProps;
|
|
@@ -31,5 +60,5 @@ class Cluster extends lib_1.AzureResource {
|
|
|
31
60
|
}
|
|
32
61
|
exports.Cluster = Cluster;
|
|
33
62
|
_a = JSII_RTTI_SYMBOL_1;
|
|
34
|
-
Cluster[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Cluster", version: "0.0.3-pre.
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
Cluster[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.Cluster", version: "0.0.3-pre.7" };
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1ldmVudGh1Yi9saWIvY2x1c3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1GQUErRTtBQUUvRSwrQkFBK0I7QUFFL0IsOENBQXFEO0FBbUJyRCxNQUFhLE9BQVEsU0FBUSxtQkFBYTtJQUt4Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQTRCRztJQUNILFlBQVksS0FBZ0IsRUFBRSxJQUFZLEVBQUUsY0FBNEI7UUFDdEUsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuQixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUM7UUFFbEQsTUFBTSxRQUFRLEdBQUc7WUFDZixPQUFPLEVBQUUsY0FBYyxDQUFDLE9BQU8sSUFBSSxhQUFhO1lBQ2hELElBQUksRUFBRSxjQUFjLENBQUMsSUFBSSxJQUFJLEVBQUU7U0FDaEMsQ0FBQztRQUVGLE1BQU0sU0FBUyxHQUFHLElBQUksa0NBQWUsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQ3ZELElBQUksRUFBRSxjQUFjLENBQUMsSUFBSTtZQUN6QixpQkFBaUIsRUFBRSxjQUFjLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDcEQsUUFBUSxFQUFFLGNBQWMsQ0FBQyxhQUFhLENBQUMsUUFBUTtZQUMvQyxHQUFHLFFBQVE7U0FDWixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFFdkIsVUFBVTtRQUNWLE1BQU0sOEJBQThCLEdBQUcsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUM5RCxJQUFJLEVBQ0osSUFBSSxFQUNKO1lBQ0UsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUFFO1NBQ3BCLENBQ0YsQ0FBQztRQUNGLDhCQUE4QixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pELENBQUM7O0FBL0RILDBCQWdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50aHViQ2x1c3RlciB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvZXZlbnRodWItY2x1c3RlclwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF6dXJlUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIFJlc291cmNlIEdyb3VwIGluIHdoaWNoIHRvIGNyZWF0ZSB0aGUgRXZlbnRIdWIgQ2x1c3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBTS1UgbmFtZSBvZiB0aGUgRXZlbnRIdWIgQ2x1c3Rlci4gVGhlIG9ubHkgc3VwcG9ydGVkIHZhbHVlIGF0IHRoaXMgdGltZSBpcyBEZWRpY2F0ZWRfMS5cbiAgICogQGRlZmF1bHQgXCJEZWRpY2F0ZWRfMVwiXG4gICAqL1xuICByZWFkb25seSBza3VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHRhZ3MgdG8gYXNzaWduIHRvIHRoZSBBcHBsaWNhdGlvbiBJbnNpZ2h0cyByZXNvdXJjZS5cbiAgICovXG4gIHJlYWRvbmx5IHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufVxuXG5leHBvcnQgY2xhc3MgQ2x1c3RlciBleHRlbmRzIEF6dXJlUmVzb3VyY2Uge1xuICByZWFkb25seSBlaENsdXN0ZXJQcm9wczogQ2x1c3RlclByb3BzO1xuICBwdWJsaWMgaWQ6IHN0cmluZztcbiAgcHVibGljIHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgYSBuZXcgRXZlbnQgSHViIENsdXN0ZXIuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgY3JlYXRlcyBhbiBBenVyZSBFdmVudCBIdWIgQ2x1c3RlciB3aGljaCBpcyBhIGRlZGljYXRlZCBjYXBhY2l0eSByZXNvdXJjZSBmb3IgaGFuZGxpbmdcbiAgICogaGlnaC10aHJvdWdocHV0LCBsb3ctbGF0ZW5jeSBldmVudCBpbmdlc3Rpb24gYW5kIHN0cmVhbWluZy4gSXQgaXMgdXNlZCBpbiBzY2VuYXJpb3Mgd2hlcmUgeW91IG5lZWRcbiAgICogcHJlZGljdGFibGUgcGVyZm9ybWFuY2UgYW5kIGNvc3QgcmVnYXJkbGVzcyBvZiB0aGUgdm9sdW1lIG9mIGRhdGEgaW5ncmVzcyBvciBudW1iZXIgb2YgZG93bnN0cmVhbVxuICAgKiBldmVudCBjb25zdW1lcnMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHVzdWFsbHkgcmVwcmVzZW50aW5nIHRoZSBDbG91ZCBEZXZlbG9wbWVudCBLaXQgKENESykgc3RhY2suXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIHVuaXF1ZSBuYW1lIGZvciB0aGlzIGluc3RhbmNlIG9mIHRoZSBFdmVudCBIdWIgQ2x1c3Rlci5cbiAgICogQHBhcmFtIGVoQ2x1c3RlclByb3BzIC0gVGhlIHByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBFdmVudCBIdWIgQ2x1c3Rlci4gVGhlc2UgcHJvcGVydGllcyBpbmNsdWRlOlxuICAgKiAgICAgICAgICAgICAgICAtIGByZXNvdXJjZUdyb3VwYDogUmVxdWlyZWQuIFRoZSBBenVyZSBSZXNvdXJjZSBHcm91cCBpbiB3aGljaCB0aGUgY2x1c3RlciB3aWxsIGJlIGRlcGxveWVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBFdmVudCBIdWIgQ2x1c3Rlci5cbiAgICogICAgICAgICAgICAgICAgLSBgc2t1TmFtZWA6IE9wdGlvbmFsLiBUaGUgU0tVIG5hbWUgZm9yIHRoZSBjbHVzdGVyLCB3aGljaCBkZXRlcm1pbmVzIHRoZSBwcmljaW5nIGFuZCBjYXBhYmlsaXRpZXMuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDdXJyZW50bHksIHRoZSBvbmx5IHN1cHBvcnRlZCB2YWx1ZSBpcyBcIkRlZGljYXRlZF8xXCIuIERlZmF1bHRzIHRvIFwiRGVkaWNhdGVkXzFcIiBpZiBub3Qgc3BlY2lmaWVkLlxuICAgKiAgICAgICAgICAgICAgICAtIGB0YWdzYDogT3B0aW9uYWwuIFRhZ3MgZm9yIHJlc291cmNlIG1hbmFnZW1lbnQgYW5kIGNhdGVnb3JpemF0aW9uLlxuICAgKlxuICAgKiBFeGFtcGxlIHVzYWdlOlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGNvbnN0IGV2ZW50SHViQ2x1c3RlciA9IG5ldyBDbHVzdGVyKHRoaXMsICdteUV2ZW50SHViQ2x1c3RlcicsIHtcbiAgICogICByZXNvdXJjZUdyb3VwOiByZXNvdXJjZUdyb3VwLFxuICAgKiAgIG5hbWU6ICdteUNsdXN0ZXInLFxuICAgKiAgIHNrdU5hbWU6ICdEZWRpY2F0ZWRfMScsIC8vIFRoaXMgaXMgb3B0aW9uYWwgc2luY2UgaXQgZGVmYXVsdHMgdG8gJ0RlZGljYXRlZF8xJ1xuICAgKiAgIHRhZ3M6IHtcbiAgICogICAgIGRlcGFydG1lbnQ6ICdJVCdcbiAgICogICB9XG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgZWhDbHVzdGVyUHJvcHM6IENsdXN0ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBuYW1lKTtcblxuICAgIHRoaXMuZWhDbHVzdGVyUHJvcHMgPSBlaENsdXN0ZXJQcm9wcztcbiAgICB0aGlzLnJlc291cmNlR3JvdXAgPSBlaENsdXN0ZXJQcm9wcy5yZXNvdXJjZUdyb3VwO1xuXG4gICAgY29uc3QgZGVmYXVsdHMgPSB7XG4gICAgICBza3VOYW1lOiBlaENsdXN0ZXJQcm9wcy5za3VOYW1lIHx8IFwiRGVkaWNhdGVkXzFcIixcbiAgICAgIHRhZ3M6IGVoQ2x1c3RlclByb3BzLnRhZ3MgfHwge30sXG4gICAgfTtcblxuICAgIGNvbnN0IGVoQ2x1c3RlciA9IG5ldyBFdmVudGh1YkNsdXN0ZXIodGhpcywgXCJlaGNsdXN0ZXJcIiwge1xuICAgICAgbmFtZTogZWhDbHVzdGVyUHJvcHMubmFtZSxcbiAgICAgIHJlc291cmNlR3JvdXBOYW1lOiBlaENsdXN0ZXJQcm9wcy5yZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICBsb2NhdGlvbjogZWhDbHVzdGVyUHJvcHMucmVzb3VyY2VHcm91cC5sb2NhdGlvbixcbiAgICAgIC4uLmRlZmF1bHRzLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pZCA9IGVoQ2x1c3Rlci5pZDtcblxuICAgIC8vIE91dHB1dHNcbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViSWQgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiaWRcIixcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IGVoQ2x1c3Rlci5pZCxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViSWQub3ZlcnJpZGVMb2dpY2FsSWQoXCJpZFwiKTtcbiAgfVxufVxuIl19
|
|
@@ -22,5 +22,33 @@ export interface ConsumerGroupProps {
|
|
|
22
22
|
export declare class ConsumerGroup extends Construct {
|
|
23
23
|
readonly ehConsumerGroupProps: ConsumerGroupProps;
|
|
24
24
|
readonly id: string;
|
|
25
|
+
/**
|
|
26
|
+
* Constructs a new Event Hub Consumer Group.
|
|
27
|
+
*
|
|
28
|
+
* An Event Hub Consumer Group is a view of an entire Event Hub that enables consumer applications to each have
|
|
29
|
+
* a separate view of the event stream. They read the stream independently at their own pace and with their own
|
|
30
|
+
* offsets. This class creates a consumer group for a specified Event Hub, allowing for decentralized and
|
|
31
|
+
* scalable event processing.
|
|
32
|
+
*
|
|
33
|
+
* @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
34
|
+
* @param name - The unique name for this instance of the Consumer Group.
|
|
35
|
+
* @param ehConsumerGroupProps - The properties for configuring the Consumer Group. These properties include:
|
|
36
|
+
* - `name`: Required. The name of the Consumer Group.
|
|
37
|
+
* - `resourceGroup`: Required. The Azure Resource Group in which the Consumer Group's grandparent Namespace exists.
|
|
38
|
+
* - `namespaceName`: Required. The name of the grandparent EventHub Namespace.
|
|
39
|
+
* - `eventhubName`: Required. The name of the Event Hub for which the consumer group is created.
|
|
40
|
+
* - `userMetadata`: Optional. User-defined metadata to provide additional context about the Consumer Group.
|
|
41
|
+
*
|
|
42
|
+
* Example usage:
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const consumerGroup = new ConsumerGroup(this, 'myConsumerGroup', {
|
|
45
|
+
* resourceGroup: resourceGroup,
|
|
46
|
+
* namespaceName: 'exampleNamespace',
|
|
47
|
+
* eventhubName: 'exampleEventHub',
|
|
48
|
+
* name: 'myConsumerGroupName',
|
|
49
|
+
* userMetadata: 'Information about consumer group'
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
25
53
|
constructor(scope: Construct, name: string, ehConsumerGroupProps: ConsumerGroupProps);
|
|
26
54
|
}
|
|
@@ -7,6 +7,34 @@ const eventhub_consumer_group_1 = require("@cdktf/provider-azurerm/lib/eventhub-
|
|
|
7
7
|
const cdktf_1 = require("cdktf");
|
|
8
8
|
const constructs_1 = require("constructs");
|
|
9
9
|
class ConsumerGroup extends constructs_1.Construct {
|
|
10
|
+
/**
|
|
11
|
+
* Constructs a new Event Hub Consumer Group.
|
|
12
|
+
*
|
|
13
|
+
* An Event Hub Consumer Group is a view of an entire Event Hub that enables consumer applications to each have
|
|
14
|
+
* a separate view of the event stream. They read the stream independently at their own pace and with their own
|
|
15
|
+
* offsets. This class creates a consumer group for a specified Event Hub, allowing for decentralized and
|
|
16
|
+
* scalable event processing.
|
|
17
|
+
*
|
|
18
|
+
* @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
19
|
+
* @param name - The unique name for this instance of the Consumer Group.
|
|
20
|
+
* @param ehConsumerGroupProps - The properties for configuring the Consumer Group. These properties include:
|
|
21
|
+
* - `name`: Required. The name of the Consumer Group.
|
|
22
|
+
* - `resourceGroup`: Required. The Azure Resource Group in which the Consumer Group's grandparent Namespace exists.
|
|
23
|
+
* - `namespaceName`: Required. The name of the grandparent EventHub Namespace.
|
|
24
|
+
* - `eventhubName`: Required. The name of the Event Hub for which the consumer group is created.
|
|
25
|
+
* - `userMetadata`: Optional. User-defined metadata to provide additional context about the Consumer Group.
|
|
26
|
+
*
|
|
27
|
+
* Example usage:
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const consumerGroup = new ConsumerGroup(this, 'myConsumerGroup', {
|
|
30
|
+
* resourceGroup: resourceGroup,
|
|
31
|
+
* namespaceName: 'exampleNamespace',
|
|
32
|
+
* eventhubName: 'exampleEventHub',
|
|
33
|
+
* name: 'myConsumerGroupName',
|
|
34
|
+
* userMetadata: 'Information about consumer group'
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
10
38
|
constructor(scope, name, ehConsumerGroupProps) {
|
|
11
39
|
super(scope, name);
|
|
12
40
|
this.ehConsumerGroupProps = ehConsumerGroupProps;
|
|
@@ -27,5 +55,5 @@ class ConsumerGroup extends constructs_1.Construct {
|
|
|
27
55
|
}
|
|
28
56
|
exports.ConsumerGroup = ConsumerGroup;
|
|
29
57
|
_a = JSII_RTTI_SYMBOL_1;
|
|
30
|
-
ConsumerGroup[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.ConsumerGroup", version: "0.0.3-pre.
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
ConsumerGroup[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_eventhub.ConsumerGroup", version: "0.0.3-pre.7" };
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3VtZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZXZlbnRodWIvbGliL2NvbnN1bWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUdBQTRGO0FBRTVGLGlDQUF3QztBQUN4QywyQ0FBdUM7QUFzQnZDLE1BQWEsYUFBYyxTQUFRLHNCQUFTO0lBSTFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0EyQkc7SUFDSCxZQUNFLEtBQWdCLEVBQ2hCLElBQVksRUFDWixvQkFBd0M7UUFFeEMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsb0JBQW9CLENBQUM7UUFFakQsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLCtDQUFxQixDQUNyRCxJQUFJLEVBQ0osb0JBQW9CLENBQUMsSUFBSSxFQUN6QjtZQUNFLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxJQUFJO1lBQy9CLGlCQUFpQixFQUFFLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQzFELGFBQWEsRUFBRSxvQkFBb0IsQ0FBQyxhQUFhO1lBQ2pELFlBQVksRUFBRSxvQkFBb0IsQ0FBQyxZQUFZO1lBQy9DLFlBQVksRUFBRSxvQkFBb0IsQ0FBQyxZQUFZO1NBQ2hELENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxFQUFFLEdBQUcscUJBQXFCLENBQUMsRUFBRSxDQUFDO1FBRW5DLFVBQVU7UUFDVixNQUFNLDJDQUEyQyxHQUFHLElBQUksdUJBQWUsQ0FDckUsSUFBSSxFQUNKLElBQUksRUFDSjtZQUNFLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxFQUFFO1NBQ2hDLENBQ0YsQ0FBQztRQUNGLDJDQUEyQyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7O0FBaEVILHNDQWlFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50aHViQ29uc3VtZXJHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvZXZlbnRodWItY29uc3VtZXItZ3JvdXBcIjtcbmltcG9ydCB7IFJlc291cmNlR3JvdXAgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Jlc291cmNlLWdyb3VwXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1PdXRwdXQgfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uc3VtZXJHcm91cFByb3BzIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJlc291cmNlIGdyb3VwIGluIHdoaWNoIHRoZSBFdmVudEh1YiBDb25zdW1lciBHcm91cCdzIGdyYW5kcGFyZW50IE5hbWVzcGFjZSBleGlzdHMuXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZUdyb3VwOiBSZXNvdXJjZUdyb3VwO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBncmFuZHBhcmVudCBFdmVudEh1YiBOYW1lc3BhY2UuXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIEV2ZW50SHViLlxuICAgKi9cbiAgcmVhZG9ubHkgZXZlbnRodWJOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHVzZXIgbWV0YWRhdGEuXG4gICAqL1xuICByZWFkb25seSB1c2VyTWV0YWRhdGE/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBDb25zdW1lckdyb3VwIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgZWhDb25zdW1lckdyb3VwUHJvcHM6IENvbnN1bWVyR3JvdXBQcm9wcztcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIG5ldyBFdmVudCBIdWIgQ29uc3VtZXIgR3JvdXAuXG4gICAqXG4gICAqIEFuIEV2ZW50IEh1YiBDb25zdW1lciBHcm91cCBpcyBhIHZpZXcgb2YgYW4gZW50aXJlIEV2ZW50IEh1YiB0aGF0IGVuYWJsZXMgY29uc3VtZXIgYXBwbGljYXRpb25zIHRvIGVhY2ggaGF2ZVxuICAgKiBhIHNlcGFyYXRlIHZpZXcgb2YgdGhlIGV2ZW50IHN0cmVhbS4gVGhleSByZWFkIHRoZSBzdHJlYW0gaW5kZXBlbmRlbnRseSBhdCB0aGVpciBvd24gcGFjZSBhbmQgd2l0aCB0aGVpciBvd25cbiAgICogb2Zmc2V0cy4gVGhpcyBjbGFzcyBjcmVhdGVzIGEgY29uc3VtZXIgZ3JvdXAgZm9yIGEgc3BlY2lmaWVkIEV2ZW50IEh1YiwgYWxsb3dpbmcgZm9yIGRlY2VudHJhbGl6ZWQgYW5kXG4gICAqIHNjYWxhYmxlIGV2ZW50IHByb2Nlc3NpbmcuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0byBkZWZpbmUgdGhpcyBjb25zdHJ1Y3QsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIENsb3VkIERldmVsb3BtZW50IEtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIG5hbWUgLSBUaGUgdW5pcXVlIG5hbWUgZm9yIHRoaXMgaW5zdGFuY2Ugb2YgdGhlIENvbnN1bWVyIEdyb3VwLlxuICAgKiBAcGFyYW0gZWhDb25zdW1lckdyb3VwUHJvcHMgLSBUaGUgcHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIENvbnN1bWVyIEdyb3VwLiBUaGVzZSBwcm9wZXJ0aWVzIGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBSZXF1aXJlZC4gVGhlIG5hbWUgb2YgdGhlIENvbnN1bWVyIEdyb3VwLlxuICAgKiAgICAgICAgICAgICAgICAtIGByZXNvdXJjZUdyb3VwYDogUmVxdWlyZWQuIFRoZSBBenVyZSBSZXNvdXJjZSBHcm91cCBpbiB3aGljaCB0aGUgQ29uc3VtZXIgR3JvdXAncyBncmFuZHBhcmVudCBOYW1lc3BhY2UgZXhpc3RzLlxuICAgKiAgICAgICAgICAgICAgICAtIGBuYW1lc3BhY2VOYW1lYDogUmVxdWlyZWQuIFRoZSBuYW1lIG9mIHRoZSBncmFuZHBhcmVudCBFdmVudEh1YiBOYW1lc3BhY2UuXG4gICAqICAgICAgICAgICAgICAgIC0gYGV2ZW50aHViTmFtZWA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgRXZlbnQgSHViIGZvciB3aGljaCB0aGUgY29uc3VtZXIgZ3JvdXAgaXMgY3JlYXRlZC5cbiAgICogICAgICAgICAgICAgICAgLSBgdXNlck1ldGFkYXRhYDogT3B0aW9uYWwuIFVzZXItZGVmaW5lZCBtZXRhZGF0YSB0byBwcm92aWRlIGFkZGl0aW9uYWwgY29udGV4dCBhYm91dCB0aGUgQ29uc3VtZXIgR3JvdXAuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgY29uc3VtZXJHcm91cCA9IG5ldyBDb25zdW1lckdyb3VwKHRoaXMsICdteUNvbnN1bWVyR3JvdXAnLCB7XG4gICAqICAgcmVzb3VyY2VHcm91cDogcmVzb3VyY2VHcm91cCxcbiAgICogICBuYW1lc3BhY2VOYW1lOiAnZXhhbXBsZU5hbWVzcGFjZScsXG4gICAqICAgZXZlbnRodWJOYW1lOiAnZXhhbXBsZUV2ZW50SHViJyxcbiAgICogICBuYW1lOiAnbXlDb25zdW1lckdyb3VwTmFtZScsXG4gICAqICAgdXNlck1ldGFkYXRhOiAnSW5mb3JtYXRpb24gYWJvdXQgY29uc3VtZXIgZ3JvdXAnXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIGVoQ29uc3VtZXJHcm91cFByb3BzOiBDb25zdW1lckdyb3VwUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBuYW1lKTtcblxuICAgIHRoaXMuZWhDb25zdW1lckdyb3VwUHJvcHMgPSBlaENvbnN1bWVyR3JvdXBQcm9wcztcblxuICAgIGNvbnN0IGV2ZW50aHViQ29uc3VtZXJHcm91cCA9IG5ldyBFdmVudGh1YkNvbnN1bWVyR3JvdXAoXG4gICAgICB0aGlzLFxuICAgICAgZWhDb25zdW1lckdyb3VwUHJvcHMubmFtZSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogZWhDb25zdW1lckdyb3VwUHJvcHMubmFtZSxcbiAgICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IGVoQ29uc3VtZXJHcm91cFByb3BzLnJlc291cmNlR3JvdXAubmFtZSxcbiAgICAgICAgbmFtZXNwYWNlTmFtZTogZWhDb25zdW1lckdyb3VwUHJvcHMubmFtZXNwYWNlTmFtZSxcbiAgICAgICAgZXZlbnRodWJOYW1lOiBlaENvbnN1bWVyR3JvdXBQcm9wcy5ldmVudGh1Yk5hbWUsXG4gICAgICAgIHVzZXJNZXRhZGF0YTogZWhDb25zdW1lckdyb3VwUHJvcHMudXNlck1ldGFkYXRhLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgdGhpcy5pZCA9IGV2ZW50aHViQ29uc3VtZXJHcm91cC5pZDtcblxuICAgIC8vIE91dHB1dHNcbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEV2ZW50aHViQ29uc3VtZXJHcm91cElkID0gbmV3IFRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcImlkXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBldmVudGh1YkNvbnN1bWVyR3JvdXAuaWQsXG4gICAgICB9LFxuICAgICk7XG4gICAgY2RrdGZUZXJyYWZvcm1PdXRwdXRFdmVudGh1YkNvbnN1bWVyR3JvdXBJZC5vdmVycmlkZUxvZ2ljYWxJZChcImlkXCIpO1xuICB9XG59XG4iXX0=
|
|
@@ -39,8 +39,126 @@ export declare class Instance extends Construct {
|
|
|
39
39
|
readonly ehInstanceProps: InstanceProps;
|
|
40
40
|
readonly id: string;
|
|
41
41
|
readonly partitionIds: string[];
|
|
42
|
+
/**
|
|
43
|
+
* Constructs a new Event Hub instance.
|
|
44
|
+
*
|
|
45
|
+
* This class creates an Azure Event Hub instance within a specified namespace. Event Hubs is a highly scalable
|
|
46
|
+
* data streaming platform and event ingestion service, capable of receiving and processing millions of events per second.
|
|
47
|
+
* Event Hubs can process and store events, data, or telemetry produced by distributed software and devices.
|
|
48
|
+
*
|
|
49
|
+
* @param scope - The scope in which to define this construct, typically used for managing lifecycles and creation order.
|
|
50
|
+
* @param name - The unique name for this instance of the Event Hub.
|
|
51
|
+
* @param ehInstanceProps - The properties for configuring the Event Hub instance. The properties include:
|
|
52
|
+
* - `name`: Required. The name of the Event Hub instance.
|
|
53
|
+
* - `partitionCount`: Optional. The number of partitions for the Event Hub. Defaults to 2. Max value is 32 for shared namespaces.
|
|
54
|
+
* - `messageRetention`: Optional. The number of days to retain the messages. Defaults to 1.
|
|
55
|
+
* - `status`: Optional. Specifies the operational status of the Event Hub (Active, Disabled, SendDisabled). Defaults to "Active".
|
|
56
|
+
* - `resourceGroup`: Required. The name of the resource group in which the Event Hub's parent namespace exists.
|
|
57
|
+
* - `namespaceName`: Required. The name of the Event Hub Namespace where this instance will be created.
|
|
58
|
+
*
|
|
59
|
+
* Example usage:
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const eventHubInstance = new Instance(this, 'myEventHubInstance', {
|
|
62
|
+
* name: 'exampleEventHub',
|
|
63
|
+
* namespaceName: 'exampleNamespace',
|
|
64
|
+
* resourceGroup: resourceGroup,
|
|
65
|
+
* partitionCount: 4,
|
|
66
|
+
* messageRetention: 7,
|
|
67
|
+
* status: 'Active'
|
|
68
|
+
* });
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
42
71
|
constructor(scope: Construct, name: string, ehInstanceProps: InstanceProps);
|
|
72
|
+
/**
|
|
73
|
+
* Adds an Authorization Rule to an Event Hub instance.
|
|
74
|
+
*
|
|
75
|
+
* This method creates a new Authorization Rule associated with the specified Event Hub,
|
|
76
|
+
* granting specified permissions such as 'listen', 'send', and 'manage' based on the properties provided.
|
|
77
|
+
* The rule determines the access level granted to users and applications for the Event Hub.
|
|
78
|
+
*
|
|
79
|
+
* @param props - The properties for the Authorization Rule, which include:
|
|
80
|
+
* - `name`: Required. A unique identifier for the Authorization Rule within the Event Hub.
|
|
81
|
+
* - `listen`: Optional. Specifies if the rule allows listening to the Event Hub. Defaults to false.
|
|
82
|
+
* - `send`: Optional. Specifies if the rule allows sending events to the Event Hub. Defaults to false.
|
|
83
|
+
* - `manage`: Optional. Specifies if the rule allows managing the Event Hub. When set to true,
|
|
84
|
+
* both 'listen' and 'send' are implicitly enabled. Defaults to false.
|
|
85
|
+
*
|
|
86
|
+
* @returns An instance of the AuthorizationRule class, configured with the specified permissions and associated
|
|
87
|
+
* with the Event Hub specified in the enclosing construct's properties.
|
|
88
|
+
*
|
|
89
|
+
* Example usage:
|
|
90
|
+
* ```typescript
|
|
91
|
+
* const eventHubAuthRule = eventHubInstance.addAuthorizationRule({
|
|
92
|
+
* name: 'myCustomAuthRule',
|
|
93
|
+
* listen: true,
|
|
94
|
+
* send: true,
|
|
95
|
+
* manage: false // Only listening and sending permissions are granted.
|
|
96
|
+
* });
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
43
99
|
addAuthorizationRule(props: AuthorizationRuleProps): AuthorizationRule;
|
|
100
|
+
/**
|
|
101
|
+
* Adds a Consumer Group to an existing Event Hub instance.
|
|
102
|
+
*
|
|
103
|
+
* This method creates a new Consumer Group for the specified Event Hub. Consumer groups represent a view of the entire Event Hub,
|
|
104
|
+
* allowing consumer applications to have separate, independent views of the event stream. They read the stream at their own pace
|
|
105
|
+
* and maintain their own sequence point or offset. This enables a single Event Hub to support multiple consumer applications.
|
|
106
|
+
*
|
|
107
|
+
* @param name - The name of the Consumer Group to be added. This name must be unique within the Event Hub namespace.
|
|
108
|
+
* @param userMetadata - Optional. User-defined metadata for the Consumer Group. This metadata is useful for storing additional
|
|
109
|
+
* information about the consumer group, such as its purpose or operational details.
|
|
110
|
+
*
|
|
111
|
+
* @returns An instance of the ConsumerGroup class, configured with the specified properties and associated with the Event Hub
|
|
112
|
+
* specified in the enclosing construct's properties.
|
|
113
|
+
*
|
|
114
|
+
* Example usage:
|
|
115
|
+
* ```typescript
|
|
116
|
+
* const myConsumerGroup = eventHubInstance.addConsumerGroup('myConsumerGroupName', 'Metadata about this consumer group');
|
|
117
|
+
* ```
|
|
118
|
+
*
|
|
119
|
+
* @remarks
|
|
120
|
+
* Each consumer group can have multiple concurrent readers, but each partition in the Event Hub can only have one active consumer
|
|
121
|
+
* from a specific consumer group at a time. Multiple consumer groups enable multiple consuming applications to each have a separate
|
|
122
|
+
* view of the event stream, and to read the stream independently at their own pace and with their own offsets.
|
|
123
|
+
*/
|
|
44
124
|
addConsumerGroup(name: string, userMetadata?: string): ConsumerGroup;
|
|
125
|
+
/**
|
|
126
|
+
* Adds a Kusto Data Connection to an existing Kusto Cluster and Database for ingesting data from an EventHub.
|
|
127
|
+
*
|
|
128
|
+
* This method configures a new Kusto Data Connection linked to the specified EventHub. It facilitates the ingestion of streaming data
|
|
129
|
+
* into the Kusto database, allowing for real-time analytics on streamed data. This connection specifies how data from EventHub
|
|
130
|
+
* is to be ingested into tables within the Kusto Database.
|
|
131
|
+
*
|
|
132
|
+
* @param props - The properties for the Kusto Data Connection, derived from BaseKustoDataConnectionProps, which include:
|
|
133
|
+
* - `name`: Required. The name of the data connection to create.
|
|
134
|
+
* - `location`: Required. The Azure region where the data connection will be created.
|
|
135
|
+
* - `kustoResourceGroup`: Required. The Resource Group where the Kusto database exists.
|
|
136
|
+
* - `kustoClusterName`: Required. The name of the Kusto Cluster to which this data connection will be added.
|
|
137
|
+
* - `kustoDatabaseName`: Required. The name of the Kusto Database to which this data connection will be added.
|
|
138
|
+
* - `consumerGroup`: Optional. The EventHub consumer group used for ingestion. Defaults to "$Default".
|
|
139
|
+
* - `tableName`: Optional. The target table name in the Kusto database used for data ingestion.
|
|
140
|
+
* - `identityId`: Optional. The resource ID of a managed identity used for authentication with EventHub.
|
|
141
|
+
* - `mappingRuleName`: Optional. The mapping rule name used for data ingestion.
|
|
142
|
+
* - `dataFormat`: Optional. Specifies the data format of EventHub messages. Defaults to "JSON".
|
|
143
|
+
* - `databaseRoutingType`: Optional. Indicates the routing type for the database. Defaults to "Single".
|
|
144
|
+
* - `compression`: Optional. Specifies the compression type for the data connection. Defaults to "None".
|
|
145
|
+
*
|
|
146
|
+
* @returns An instance of the KustoDataConnection class, configured with the specified properties and linked to the EventHub
|
|
147
|
+
* specified in the enclosing construct's properties.
|
|
148
|
+
*
|
|
149
|
+
* Example usage:
|
|
150
|
+
* ```typescript
|
|
151
|
+
* const kustoConnection = kustoInstance.addKustoDataConnection({
|
|
152
|
+
* name: 'myKustoDataConnection',
|
|
153
|
+
* location: 'West US',
|
|
154
|
+
* kustoResourceGroup: resourceGroup,
|
|
155
|
+
* kustoClusterName: 'myCluster',
|
|
156
|
+
* kustoDatabaseName: 'myDatabase',
|
|
157
|
+
* tableName: 'IngestionTable',
|
|
158
|
+
* consumerGroup: '$Default',
|
|
159
|
+
* dataFormat: 'JSON'
|
|
160
|
+
* });
|
|
161
|
+
* ```
|
|
162
|
+
*/
|
|
45
163
|
addKustoDataConnection(props: BaseKustoDataConnectionProps): KustoDataConnection;
|
|
46
164
|
}
|