@microsoft/terraform-cdk-constructs 0.0.3-pre.10
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/.devcontainer/devcontainer.json +62 -0
- package/.jsii +18296 -0
- package/API.md +19698 -0
- package/CODE_OF_CONDUCT.md +9 -0
- package/CONTRIBUTING.md +85 -0
- package/LICENSE +19 -0
- package/README.md +152 -0
- package/SECURITY.md +41 -0
- package/SUPPORT.md +25 -0
- package/cdktf.json +11 -0
- package/cdktf.out/manifest.json +13 -0
- package/cdktf.out/stacks/testAzureActionGroup/cdk.tf.json +111 -0
- package/cdktf.out/stacks/testAzureApplicationGateway/cdk.tf.json +588 -0
- package/cdktf.out/stacks/testAzureApplicationInsights/cdk.tf.json +245 -0
- package/cdktf.out/stacks/testAzureContainerRegistry/cdk.tf.json +179 -0
- package/cdktf.out/stacks/testAzureEventhub/cdk.tf.json +236 -0
- package/cdktf.out/stacks/testAzureKeyVault/cdk.tf.json +436 -0
- package/cdktf.out/stacks/testAzureKubernetesCluster/cdk.tf.json +152 -0
- package/cdktf.out/stacks/testAzureKusto/cdk.tf.json +209 -0
- package/cdktf.out/stacks/testAzureLinuxFunctionApp/cdk.tf.json +439 -0
- package/cdktf.out/stacks/testAzureLinuxVirtualMachineExample/cdk.tf.json +283 -0
- package/cdktf.out/stacks/testAzureLinuxVirtualMachineScaleSetExample/cdk.tf.json +261 -0
- package/cdktf.out/stacks/testAzureLogAnalytics/cdk.tf.json +309 -0
- package/cdktf.out/stacks/testAzureMetricAlert/cdk.tf.json +161 -0
- package/cdktf.out/stacks/testAzureNetworkSecurityGroup/cdk.tf.json +271 -0
- package/cdktf.out/stacks/testAzureQueryRuleAlert/cdk.tf.json +122 -0
- package/cdktf.out/stacks/testAzureResourceGroup/cdk.tf.json +88 -0
- package/cdktf.out/stacks/testAzureStorageAccount/cdk.tf.json +339 -0
- package/cdktf.out/stacks/testAzureVirtualNetwork/cdk.tf.json +264 -0
- package/cdktf.out/stacks/testAzureWindowVirtualMachineScaleSetExample/cdk.tf.json +261 -0
- package/cdktf.out/stacks/testAzureWindowsVirtualMachineExample/cdk.tf.json +280 -0
- package/cdktf.out/stacks/testExampleAzureResource/cdk.tf.json +167 -0
- package/docs/design_guide.md +309 -0
- package/docs/images/ide-documentation.png +0 -0
- package/docs/testing.md +347 -0
- package/go.mod +73 -0
- package/go.sum +1006 -0
- package/help +51 -0
- package/jest.config.js.old +187 -0
- package/lib/azure-actiongroup/index.d.ts +1 -0
- package/lib/azure-actiongroup/index.js +18 -0
- package/lib/azure-actiongroup/lib/actiongroup.d.ts +49 -0
- package/lib/azure-actiongroup/lib/actiongroup.js +85 -0
- package/lib/azure-actiongroup/lib/index.d.ts +1 -0
- package/lib/azure-actiongroup/lib/index.js +18 -0
- package/lib/azure-actiongroup/model/action-group-props.d.ts +47 -0
- package/lib/azure-actiongroup/model/action-group-props.js +3 -0
- package/lib/azure-actiongroup/model/arm-role-receiver-props.d.ts +20 -0
- package/lib/azure-actiongroup/model/arm-role-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/azure-app-push-receiver-props.d.ts +14 -0
- package/lib/azure-actiongroup/model/azure-app-push-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/email-receiver-props.d.ts +19 -0
- package/lib/azure-actiongroup/model/email-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/eventhub-receiver-props.d.ts +23 -0
- package/lib/azure-actiongroup/model/eventhub-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/function.d.ts +40 -0
- package/lib/azure-actiongroup/model/function.js +118 -0
- package/lib/azure-actiongroup/model/index.d.ts +10 -0
- package/lib/azure-actiongroup/model/index.js +27 -0
- package/lib/azure-actiongroup/model/logic-app-receiver-props.d.ts +23 -0
- package/lib/azure-actiongroup/model/logic-app-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/sms-receiver-props.d.ts +18 -0
- package/lib/azure-actiongroup/model/sms-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/voice-receiver-props.d.ts +18 -0
- package/lib/azure-actiongroup/model/voice-receiver-props.js +3 -0
- package/lib/azure-actiongroup/model/webhook-receiver-props.d.ts +18 -0
- package/lib/azure-actiongroup/model/webhook-receiver-props.js +3 -0
- package/lib/azure-actiongroup/test/AzureActionGroup.spec.d.ts +1 -0
- package/lib/azure-actiongroup/test/AzureActionGroup.spec.js +294 -0
- package/lib/azure-actiongroup/test/ExampleAzureActionGroup.d.ts +5 -0
- package/lib/azure-actiongroup/test/ExampleAzureActionGroup.js +66 -0
- package/lib/azure-applicationgateway/index.d.ts +1 -0
- package/lib/azure-applicationgateway/index.js +18 -0
- package/lib/azure-applicationgateway/lib/gateway.d.ts +248 -0
- package/lib/azure-applicationgateway/lib/gateway.js +199 -0
- package/lib/azure-applicationgateway/lib/index.d.ts +1 -0
- package/lib/azure-applicationgateway/lib/index.js +18 -0
- package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.d.ts +1 -0
- package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.js +106 -0
- package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.d.ts +5 -0
- package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.js +267 -0
- package/lib/azure-applicationinsights/index.d.ts +1 -0
- package/lib/azure-applicationinsights/index.js +18 -0
- package/lib/azure-applicationinsights/lib/appinsights.d.ts +110 -0
- package/lib/azure-applicationinsights/lib/appinsights.js +134 -0
- package/lib/azure-applicationinsights/lib/index.d.ts +1 -0
- package/lib/azure-applicationinsights/lib/index.js +18 -0
- package/lib/azure-applicationinsights/test/AzureAppInsights.spec.d.ts +1 -0
- package/lib/azure-applicationinsights/test/AzureAppInsights.spec.js +55 -0
- package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.d.ts +5 -0
- package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.js +87 -0
- package/lib/azure-containerregistry/index.d.ts +1 -0
- package/lib/azure-containerregistry/index.js +18 -0
- package/lib/azure-containerregistry/lib/index.d.ts +1 -0
- package/lib/azure-containerregistry/lib/index.js +18 -0
- package/lib/azure-containerregistry/lib/registry.d.ts +70 -0
- package/lib/azure-containerregistry/lib/registry.js +76 -0
- package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.d.ts +1 -0
- package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.js +50 -0
- package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.d.ts +5 -0
- package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.js +57 -0
- package/lib/azure-datalake/index.d.ts +1 -0
- package/lib/azure-datalake/index.js +18 -0
- package/lib/azure-datalake/lib/datalake.d.ts +64 -0
- package/lib/azure-datalake/lib/datalake.js +92 -0
- package/lib/azure-datalake/lib/filesystem.d.ts +70 -0
- package/lib/azure-datalake/lib/filesystem.js +83 -0
- package/lib/azure-datalake/lib/index.d.ts +3 -0
- package/lib/azure-datalake/lib/index.js +20 -0
- package/lib/azure-datalake/lib/path.d.ts +49 -0
- package/lib/azure-datalake/lib/path.js +51 -0
- package/lib/azure-eventhub/index.d.ts +1 -0
- package/lib/azure-eventhub/index.js +18 -0
- package/lib/azure-eventhub/lib/authorization.d.ts +58 -0
- package/lib/azure-eventhub/lib/authorization.js +84 -0
- package/lib/azure-eventhub/lib/cluster.d.ts +56 -0
- package/lib/azure-eventhub/lib/cluster.js +64 -0
- package/lib/azure-eventhub/lib/consumer.d.ts +54 -0
- package/lib/azure-eventhub/lib/consumer.js +59 -0
- package/lib/azure-eventhub/lib/index.d.ts +6 -0
- package/lib/azure-eventhub/lib/index.js +23 -0
- package/lib/azure-eventhub/lib/instance.d.ts +164 -0
- package/lib/azure-eventhub/lib/instance.js +184 -0
- package/lib/azure-eventhub/lib/kusto-connection.d.ts +109 -0
- package/lib/azure-eventhub/lib/kusto-connection.js +76 -0
- package/lib/azure-eventhub/lib/namespace.d.ts +151 -0
- package/lib/azure-eventhub/lib/namespace.js +131 -0
- package/lib/azure-eventhub/test/AzureEventhub.spec.d.ts +1 -0
- package/lib/azure-eventhub/test/AzureEventhub.spec.js +56 -0
- package/lib/azure-eventhub/test/ExampleAzureEventhub.d.ts +5 -0
- package/lib/azure-eventhub/test/ExampleAzureEventhub.js +72 -0
- package/lib/azure-functionapp/index.d.ts +1 -0
- package/lib/azure-functionapp/index.js +18 -0
- package/lib/azure-functionapp/lib/functionapplinux.d.ts +211 -0
- package/lib/azure-functionapp/lib/functionapplinux.js +141 -0
- package/lib/azure-functionapp/lib/index.d.ts +1 -0
- package/lib/azure-functionapp/lib/index.js +18 -0
- package/lib/azure-functionapp/serviceplanskus.d.ts +70 -0
- package/lib/azure-functionapp/serviceplanskus.js +81 -0
- package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.d.ts +1 -0
- package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.js +48 -0
- package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.d.ts +5 -0
- package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.js +123 -0
- package/lib/azure-keyvault/index.d.ts +1 -0
- package/lib/azure-keyvault/index.js +18 -0
- package/lib/azure-keyvault/lib/certificate.d.ts +133 -0
- package/lib/azure-keyvault/lib/certificate.js +146 -0
- package/lib/azure-keyvault/lib/index.d.ts +5 -0
- package/lib/azure-keyvault/lib/index.js +22 -0
- package/lib/azure-keyvault/lib/key.d.ts +72 -0
- package/lib/azure-keyvault/lib/key.js +69 -0
- package/lib/azure-keyvault/lib/policy.d.ts +76 -0
- package/lib/azure-keyvault/lib/policy.js +56 -0
- package/lib/azure-keyvault/lib/secret.d.ts +70 -0
- package/lib/azure-keyvault/lib/secret.js +64 -0
- package/lib/azure-keyvault/lib/vault.d.ts +282 -0
- package/lib/azure-keyvault/lib/vault.js +392 -0
- package/lib/azure-keyvault/test/AzureKeyVault.spec.d.ts +1 -0
- package/lib/azure-keyvault/test/AzureKeyVault.spec.js +63 -0
- package/lib/azure-keyvault/test/ExampleAzureKeyVault.d.ts +5 -0
- package/lib/azure-keyvault/test/ExampleAzureKeyVault.js +112 -0
- package/lib/azure-kubernetes/index.d.ts +1 -0
- package/lib/azure-kubernetes/index.js +18 -0
- package/lib/azure-kubernetes/lib/cluster.d.ts +93 -0
- package/lib/azure-kubernetes/lib/cluster.js +63 -0
- package/lib/azure-kubernetes/lib/index.d.ts +1 -0
- package/lib/azure-kubernetes/lib/index.js +18 -0
- package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.d.ts +1 -0
- package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.js +56 -0
- package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.d.ts +5 -0
- package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.js +65 -0
- package/lib/azure-kusto/index.d.ts +1 -0
- package/lib/azure-kusto/index.js +18 -0
- package/lib/azure-kusto/lib/cluster.d.ts +136 -0
- package/lib/azure-kusto/lib/cluster.js +138 -0
- package/lib/azure-kusto/lib/compute-specification.d.ts +71 -0
- package/lib/azure-kusto/lib/compute-specification.js +651 -0
- package/lib/azure-kusto/lib/database.d.ts +162 -0
- package/lib/azure-kusto/lib/database.js +180 -0
- package/lib/azure-kusto/lib/index.d.ts +3 -0
- package/lib/azure-kusto/lib/index.js +20 -0
- package/lib/azure-kusto/test/AzureKusto.spec.d.ts +1 -0
- package/lib/azure-kusto/test/AzureKusto.spec.js +50 -0
- package/lib/azure-kusto/test/ExampleAzureKusto.d.ts +5 -0
- package/lib/azure-kusto/test/ExampleAzureKusto.js +71 -0
- package/lib/azure-loganalytics/index.d.ts +1 -0
- package/lib/azure-loganalytics/index.js +18 -0
- package/lib/azure-loganalytics/lib/index.d.ts +1 -0
- package/lib/azure-loganalytics/lib/index.js +18 -0
- package/lib/azure-loganalytics/lib/workspace.d.ts +163 -0
- package/lib/azure-loganalytics/lib/workspace.js +126 -0
- package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.d.ts +1 -0
- package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.js +50 -0
- package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.d.ts +5 -0
- package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.js +115 -0
- package/lib/azure-metricalert/index.d.ts +2 -0
- package/lib/azure-metricalert/index.js +19 -0
- package/lib/azure-metricalert/lib/index.d.ts +1 -0
- package/lib/azure-metricalert/lib/index.js +18 -0
- package/lib/azure-metricalert/lib/metric-alert.d.ts +56 -0
- package/lib/azure-metricalert/lib/metric-alert.js +128 -0
- package/lib/azure-metricalert/model/action-props.d.ts +11 -0
- package/lib/azure-metricalert/model/action-props.js +3 -0
- package/lib/azure-metricalert/model/criteria-base-props.d.ts +38 -0
- package/lib/azure-metricalert/model/criteria-base-props.js +3 -0
- package/lib/azure-metricalert/model/criteria-dimension-props.d.ts +21 -0
- package/lib/azure-metricalert/model/criteria-dimension-props.js +3 -0
- package/lib/azure-metricalert/model/criteria-props.d.ts +12 -0
- package/lib/azure-metricalert/model/criteria-props.js +3 -0
- package/lib/azure-metricalert/model/dynamic-criteria-props.d.ts +29 -0
- package/lib/azure-metricalert/model/dynamic-criteria-props.js +3 -0
- package/lib/azure-metricalert/model/function.d.ts +28 -0
- package/lib/azure-metricalert/model/function.js +78 -0
- package/lib/azure-metricalert/model/index.d.ts +7 -0
- package/lib/azure-metricalert/model/index.js +24 -0
- package/lib/azure-metricalert/model/metric-alert-props.d.ts +86 -0
- package/lib/azure-metricalert/model/metric-alert-props.js +3 -0
- package/lib/azure-metricalert/test/AzureMetricAlert.spec.d.ts +1 -0
- package/lib/azure-metricalert/test/AzureMetricAlert.spec.js +63 -0
- package/lib/azure-metricalert/test/ExampleAzureMetricAlert.d.ts +5 -0
- package/lib/azure-metricalert/test/ExampleAzureMetricAlert.js +81 -0
- package/lib/azure-networksecuritygroup/index.d.ts +1 -0
- package/lib/azure-networksecuritygroup/index.js +18 -0
- package/lib/azure-networksecuritygroup/lib/index.d.ts +2 -0
- package/lib/azure-networksecuritygroup/lib/index.js +19 -0
- package/lib/azure-networksecuritygroup/lib/preconfigured-rules.d.ts +77 -0
- package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +608 -0
- package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +190 -0
- package/lib/azure-networksecuritygroup/lib/securitygroup.js +172 -0
- package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.d.ts +1 -0
- package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.js +54 -0
- package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.d.ts +5 -0
- package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.js +97 -0
- package/lib/azure-queryrulealert/index.d.ts +1 -0
- package/lib/azure-queryrulealert/index.js +18 -0
- package/lib/azure-queryrulealert/lib/index.d.ts +1 -0
- package/lib/azure-queryrulealert/lib/index.js +18 -0
- package/lib/azure-queryrulealert/lib/query-rule-alert.d.ts +175 -0
- package/lib/azure-queryrulealert/lib/query-rule-alert.js +205 -0
- package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.d.ts +1 -0
- package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.js +67 -0
- package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.d.ts +5 -0
- package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.js +67 -0
- package/lib/azure-resourcegroup/index.d.ts +1 -0
- package/lib/azure-resourcegroup/index.js +18 -0
- package/lib/azure-resourcegroup/lib/index.d.ts +1 -0
- package/lib/azure-resourcegroup/lib/index.js +18 -0
- package/lib/azure-resourcegroup/lib/resource-group.d.ts +66 -0
- package/lib/azure-resourcegroup/lib/resource-group.js +77 -0
- package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.d.ts +1 -0
- package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.js +41 -0
- package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.d.ts +5 -0
- package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.js +29 -0
- package/lib/azure-storageaccount/index.d.ts +1 -0
- package/lib/azure-storageaccount/index.js +18 -0
- package/lib/azure-storageaccount/lib/account.d.ts +232 -0
- package/lib/azure-storageaccount/lib/account.js +225 -0
- package/lib/azure-storageaccount/lib/container.d.ts +122 -0
- package/lib/azure-storageaccount/lib/container.js +167 -0
- package/lib/azure-storageaccount/lib/fileshare.d.ts +105 -0
- package/lib/azure-storageaccount/lib/fileshare.js +126 -0
- package/lib/azure-storageaccount/lib/index.d.ts +5 -0
- package/lib/azure-storageaccount/lib/index.js +22 -0
- package/lib/azure-storageaccount/lib/queue.d.ts +35 -0
- package/lib/azure-storageaccount/lib/queue.js +52 -0
- package/lib/azure-storageaccount/lib/table.d.ts +38 -0
- package/lib/azure-storageaccount/lib/table.js +55 -0
- package/lib/azure-storageaccount/test/AzureStorageAccount.spec.d.ts +1 -0
- package/lib/azure-storageaccount/test/AzureStorageAccount.spec.js +45 -0
- package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.d.ts +5 -0
- package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.js +102 -0
- package/lib/azure-virtualmachine/index.d.ts +1 -0
- package/lib/azure-virtualmachine/index.js +18 -0
- package/lib/azure-virtualmachine/lib/image-references.d.ts +22 -0
- package/lib/azure-virtualmachine/lib/image-references.js +128 -0
- package/lib/azure-virtualmachine/lib/index.d.ts +2 -0
- package/lib/azure-virtualmachine/lib/index.js +19 -0
- package/lib/azure-virtualmachine/lib/vm.d.ts +281 -0
- package/lib/azure-virtualmachine/lib/vm.js +283 -0
- package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.d.ts +1 -0
- package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.js +48 -0
- package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.d.ts +1 -0
- package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.js +50 -0
- package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.d.ts +5 -0
- package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.js +106 -0
- package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.d.ts +5 -0
- package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.js +102 -0
- package/lib/azure-virtualmachinescaleset/index.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/index.js +18 -0
- package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +324 -0
- package/lib/azure-virtualmachinescaleset/lib/cluster.js +264 -0
- package/lib/azure-virtualmachinescaleset/lib/index.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/lib/index.js +18 -0
- package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.js +48 -0
- package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.js +50 -0
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.d.ts +5 -0
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.js +107 -0
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.d.ts +5 -0
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.js +103 -0
- package/lib/azure-virtualnetwork/index.d.ts +1 -0
- package/lib/azure-virtualnetwork/index.js +18 -0
- package/lib/azure-virtualnetwork/lib/index.d.ts +2 -0
- package/lib/azure-virtualnetwork/lib/index.js +19 -0
- package/lib/azure-virtualnetwork/lib/network.d.ts +122 -0
- package/lib/azure-virtualnetwork/lib/network.js +120 -0
- package/lib/azure-virtualnetwork/lib/peering.d.ts +90 -0
- package/lib/azure-virtualnetwork/lib/peering.js +71 -0
- package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.d.ts +1 -0
- package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.js +48 -0
- package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.d.ts +5 -0
- package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.js +88 -0
- package/lib/core-azure/index.d.ts +1 -0
- package/lib/core-azure/index.js +18 -0
- package/lib/core-azure/lib/diagsettings.d.ts +89 -0
- package/lib/core-azure/lib/diagsettings.js +83 -0
- package/lib/core-azure/lib/index.d.ts +3 -0
- package/lib/core-azure/lib/index.js +20 -0
- package/lib/core-azure/lib/rbac.d.ts +50 -0
- package/lib/core-azure/lib/rbac.js +48 -0
- package/lib/core-azure/lib/resource.d.ts +62 -0
- package/lib/core-azure/lib/resource.js +118 -0
- package/lib/core-azure/test/AzureResource.spec.d.ts +1 -0
- package/lib/core-azure/test/AzureResource.spec.js +19 -0
- package/lib/core-azure/test/ExampleAzureResource.d.ts +5 -0
- package/lib/core-azure/test/ExampleAzureResource.js +67 -0
- package/lib/index.d.ts +18 -0
- package/lib/index.js +22 -0
- package/lib/testing/index.d.ts +6 -0
- package/lib/testing/index.js +18 -0
- package/lib/util/azureTenantIdHelpers.d.ts +2 -0
- package/lib/util/azureTenantIdHelpers.js +34 -0
- package/lib/util/randomName.d.ts +1 -0
- package/lib/util/randomName.js +13 -0
- package/node_modules/moment/CHANGELOG.md +996 -0
- package/node_modules/moment/LICENSE +22 -0
- package/node_modules/moment/README.md +55 -0
- package/node_modules/moment/dist/locale/af.js +71 -0
- package/node_modules/moment/dist/locale/ar-dz.js +156 -0
- package/node_modules/moment/dist/locale/ar-kw.js +55 -0
- package/node_modules/moment/dist/locale/ar-ly.js +171 -0
- package/node_modules/moment/dist/locale/ar-ma.js +56 -0
- package/node_modules/moment/dist/locale/ar-ps.js +112 -0
- package/node_modules/moment/dist/locale/ar-sa.js +105 -0
- package/node_modules/moment/dist/locale/ar-tn.js +55 -0
- package/node_modules/moment/dist/locale/ar.js +189 -0
- package/node_modules/moment/dist/locale/az.js +102 -0
- package/node_modules/moment/dist/locale/be.js +142 -0
- package/node_modules/moment/dist/locale/bg.js +87 -0
- package/node_modules/moment/dist/locale/bm.js +52 -0
- package/node_modules/moment/dist/locale/bn-bd.js +129 -0
- package/node_modules/moment/dist/locale/bn.js +119 -0
- package/node_modules/moment/dist/locale/bo.js +124 -0
- package/node_modules/moment/dist/locale/br.js +168 -0
- package/node_modules/moment/dist/locale/bs.js +160 -0
- package/node_modules/moment/dist/locale/ca.js +100 -0
- package/node_modules/moment/dist/locale/cs.js +181 -0
- package/node_modules/moment/dist/locale/cv.js +63 -0
- package/node_modules/moment/dist/locale/cy.js +98 -0
- package/node_modules/moment/dist/locale/da.js +53 -0
- package/node_modules/moment/dist/locale/de-at.js +79 -0
- package/node_modules/moment/dist/locale/de-ch.js +78 -0
- package/node_modules/moment/dist/locale/de.js +78 -0
- package/node_modules/moment/dist/locale/dv.js +90 -0
- package/node_modules/moment/dist/locale/el.js +106 -0
- package/node_modules/moment/dist/locale/en-au.js +68 -0
- package/node_modules/moment/dist/locale/en-ca.js +64 -0
- package/node_modules/moment/dist/locale/en-gb.js +68 -0
- package/node_modules/moment/dist/locale/en-ie.js +68 -0
- package/node_modules/moment/dist/locale/en-il.js +64 -0
- package/node_modules/moment/dist/locale/en-in.js +68 -0
- package/node_modules/moment/dist/locale/en-nz.js +68 -0
- package/node_modules/moment/dist/locale/en-sg.js +68 -0
- package/node_modules/moment/dist/locale/eo.js +68 -0
- package/node_modules/moment/dist/locale/es-do.js +108 -0
- package/node_modules/moment/dist/locale/es-mx.js +110 -0
- package/node_modules/moment/dist/locale/es-us.js +110 -0
- package/node_modules/moment/dist/locale/es.js +110 -0
- package/node_modules/moment/dist/locale/et.js +78 -0
- package/node_modules/moment/dist/locale/eu.js +65 -0
- package/node_modules/moment/dist/locale/fa.js +113 -0
- package/node_modules/moment/dist/locale/fi.js +124 -0
- package/node_modules/moment/dist/locale/fil.js +58 -0
- package/node_modules/moment/dist/locale/fo.js +57 -0
- package/node_modules/moment/dist/locale/fr-ca.js +70 -0
- package/node_modules/moment/dist/locale/fr-ch.js +74 -0
- package/node_modules/moment/dist/locale/fr.js +108 -0
- package/node_modules/moment/dist/locale/fy.js +75 -0
- package/node_modules/moment/dist/locale/ga.js +95 -0
- package/node_modules/moment/dist/locale/gd.js +95 -0
- package/node_modules/moment/dist/locale/gl.js +75 -0
- package/node_modules/moment/dist/locale/gom-deva.js +126 -0
- package/node_modules/moment/dist/locale/gom-latn.js +124 -0
- package/node_modules/moment/dist/locale/gu.js +122 -0
- package/node_modules/moment/dist/locale/he.js +94 -0
- package/node_modules/moment/dist/locale/hi.js +168 -0
- package/node_modules/moment/dist/locale/hr.js +156 -0
- package/node_modules/moment/dist/locale/hu.js +118 -0
- package/node_modules/moment/dist/locale/hy-am.js +94 -0
- package/node_modules/moment/dist/locale/id.js +76 -0
- package/node_modules/moment/dist/locale/is.js +140 -0
- package/node_modules/moment/dist/locale/it-ch.js +64 -0
- package/node_modules/moment/dist/locale/it.js +106 -0
- package/node_modules/moment/dist/locale/ja.js +148 -0
- package/node_modules/moment/dist/locale/jv.js +76 -0
- package/node_modules/moment/dist/locale/ka.js +92 -0
- package/node_modules/moment/dist/locale/kk.js +82 -0
- package/node_modules/moment/dist/locale/km.js +103 -0
- package/node_modules/moment/dist/locale/kn.js +124 -0
- package/node_modules/moment/dist/locale/ko.js +75 -0
- package/node_modules/moment/dist/locale/ku-kmr.js +121 -0
- package/node_modules/moment/dist/locale/ku.js +118 -0
- package/node_modules/moment/dist/locale/ky.js +84 -0
- package/node_modules/moment/dist/locale/lb.js +137 -0
- package/node_modules/moment/dist/locale/lo.js +66 -0
- package/node_modules/moment/dist/locale/lt.js +125 -0
- package/node_modules/moment/dist/locale/lv.js +94 -0
- package/node_modules/moment/dist/locale/me.js +117 -0
- package/node_modules/moment/dist/locale/mi.js +60 -0
- package/node_modules/moment/dist/locale/mk.js +85 -0
- package/node_modules/moment/dist/locale/ml.js +82 -0
- package/node_modules/moment/dist/locale/mn.js +100 -0
- package/node_modules/moment/dist/locale/mr.js +203 -0
- package/node_modules/moment/dist/locale/ms-my.js +76 -0
- package/node_modules/moment/dist/locale/ms.js +75 -0
- package/node_modules/moment/dist/locale/mt.js +56 -0
- package/node_modules/moment/dist/locale/my.js +91 -0
- package/node_modules/moment/dist/locale/nb.js +60 -0
- package/node_modules/moment/dist/locale/ne.js +121 -0
- package/node_modules/moment/dist/locale/nl-be.js +102 -0
- package/node_modules/moment/dist/locale/nl.js +104 -0
- package/node_modules/moment/dist/locale/nn.js +59 -0
- package/node_modules/moment/dist/locale/oc-lnc.js +85 -0
- package/node_modules/moment/dist/locale/pa-in.js +122 -0
- package/node_modules/moment/dist/locale/pl.js +140 -0
- package/node_modules/moment/dist/locale/pt-br.js +58 -0
- package/node_modules/moment/dist/locale/pt.js +63 -0
- package/node_modules/moment/dist/locale/ro.js +76 -0
- package/node_modules/moment/dist/locale/ru.js +213 -0
- package/node_modules/moment/dist/locale/sd.js +81 -0
- package/node_modules/moment/dist/locale/se.js +57 -0
- package/node_modules/moment/dist/locale/si.js +69 -0
- package/node_modules/moment/dist/locale/sk.js +145 -0
- package/node_modules/moment/dist/locale/sl.js +171 -0
- package/node_modules/moment/dist/locale/sq.js +65 -0
- package/node_modules/moment/dist/locale/sr-cyrl.js +127 -0
- package/node_modules/moment/dist/locale/sr.js +129 -0
- package/node_modules/moment/dist/locale/ss.js +84 -0
- package/node_modules/moment/dist/locale/sv.js +68 -0
- package/node_modules/moment/dist/locale/sw.js +55 -0
- package/node_modules/moment/dist/locale/ta.js +131 -0
- package/node_modules/moment/dist/locale/te.js +88 -0
- package/node_modules/moment/dist/locale/tet.js +68 -0
- package/node_modules/moment/dist/locale/tg.js +117 -0
- package/node_modules/moment/dist/locale/th.js +65 -0
- package/node_modules/moment/dist/locale/tk.js +91 -0
- package/node_modules/moment/dist/locale/tl-ph.js +57 -0
- package/node_modules/moment/dist/locale/tlh.js +124 -0
- package/node_modules/moment/dist/locale/tr.js +106 -0
- package/node_modules/moment/dist/locale/tzl.js +89 -0
- package/node_modules/moment/dist/locale/tzm-latn.js +54 -0
- package/node_modules/moment/dist/locale/tzm.js +54 -0
- package/node_modules/moment/dist/locale/ug-cn.js +111 -0
- package/node_modules/moment/dist/locale/uk.js +167 -0
- package/node_modules/moment/dist/locale/ur.js +82 -0
- package/node_modules/moment/dist/locale/uz-latn.js +54 -0
- package/node_modules/moment/dist/locale/uz.js +51 -0
- package/node_modules/moment/dist/locale/vi.js +80 -0
- package/node_modules/moment/dist/locale/x-pseudo.js +73 -0
- package/node_modules/moment/dist/locale/yo.js +53 -0
- package/node_modules/moment/dist/locale/zh-cn.js +120 -0
- package/node_modules/moment/dist/locale/zh-hk.js +101 -0
- package/node_modules/moment/dist/locale/zh-mo.js +100 -0
- package/node_modules/moment/dist/locale/zh-tw.js +99 -0
- package/node_modules/moment/dist/moment.js +5680 -0
- package/node_modules/moment/ender.js +1 -0
- package/node_modules/moment/locale/af.js +82 -0
- package/node_modules/moment/locale/ar-dz.js +167 -0
- package/node_modules/moment/locale/ar-kw.js +66 -0
- package/node_modules/moment/locale/ar-ly.js +182 -0
- package/node_modules/moment/locale/ar-ma.js +67 -0
- package/node_modules/moment/locale/ar-ps.js +123 -0
- package/node_modules/moment/locale/ar-sa.js +116 -0
- package/node_modules/moment/locale/ar-tn.js +66 -0
- package/node_modules/moment/locale/ar.js +200 -0
- package/node_modules/moment/locale/az.js +113 -0
- package/node_modules/moment/locale/be.js +153 -0
- package/node_modules/moment/locale/bg.js +98 -0
- package/node_modules/moment/locale/bm.js +62 -0
- package/node_modules/moment/locale/bn-bd.js +140 -0
- package/node_modules/moment/locale/bn.js +130 -0
- package/node_modules/moment/locale/bo.js +135 -0
- package/node_modules/moment/locale/br.js +179 -0
- package/node_modules/moment/locale/bs.js +171 -0
- package/node_modules/moment/locale/ca.js +111 -0
- package/node_modules/moment/locale/cs.js +192 -0
- package/node_modules/moment/locale/cv.js +74 -0
- package/node_modules/moment/locale/cy.js +109 -0
- package/node_modules/moment/locale/da.js +64 -0
- package/node_modules/moment/locale/de-at.js +90 -0
- package/node_modules/moment/locale/de-ch.js +87 -0
- package/node_modules/moment/locale/de.js +89 -0
- package/node_modules/moment/locale/dv.js +101 -0
- package/node_modules/moment/locale/el.js +117 -0
- package/node_modules/moment/locale/en-au.js +79 -0
- package/node_modules/moment/locale/en-ca.js +75 -0
- package/node_modules/moment/locale/en-gb.js +79 -0
- package/node_modules/moment/locale/en-ie.js +79 -0
- package/node_modules/moment/locale/en-il.js +75 -0
- package/node_modules/moment/locale/en-in.js +79 -0
- package/node_modules/moment/locale/en-nz.js +79 -0
- package/node_modules/moment/locale/en-sg.js +79 -0
- package/node_modules/moment/locale/eo.js +79 -0
- package/node_modules/moment/locale/es-do.js +119 -0
- package/node_modules/moment/locale/es-mx.js +121 -0
- package/node_modules/moment/locale/es-us.js +121 -0
- package/node_modules/moment/locale/es.js +121 -0
- package/node_modules/moment/locale/et.js +89 -0
- package/node_modules/moment/locale/eu.js +76 -0
- package/node_modules/moment/locale/fa.js +124 -0
- package/node_modules/moment/locale/fi.js +135 -0
- package/node_modules/moment/locale/fil.js +69 -0
- package/node_modules/moment/locale/fo.js +68 -0
- package/node_modules/moment/locale/fr-ca.js +81 -0
- package/node_modules/moment/locale/fr-ch.js +85 -0
- package/node_modules/moment/locale/fr.js +119 -0
- package/node_modules/moment/locale/fy.js +86 -0
- package/node_modules/moment/locale/ga.js +106 -0
- package/node_modules/moment/locale/gd.js +106 -0
- package/node_modules/moment/locale/gl.js +86 -0
- package/node_modules/moment/locale/gom-deva.js +137 -0
- package/node_modules/moment/locale/gom-latn.js +135 -0
- package/node_modules/moment/locale/gu.js +133 -0
- package/node_modules/moment/locale/he.js +105 -0
- package/node_modules/moment/locale/hi.js +179 -0
- package/node_modules/moment/locale/hr.js +167 -0
- package/node_modules/moment/locale/hu.js +129 -0
- package/node_modules/moment/locale/hy-am.js +105 -0
- package/node_modules/moment/locale/id.js +87 -0
- package/node_modules/moment/locale/is.js +151 -0
- package/node_modules/moment/locale/it-ch.js +75 -0
- package/node_modules/moment/locale/it.js +117 -0
- package/node_modules/moment/locale/ja.js +159 -0
- package/node_modules/moment/locale/jv.js +87 -0
- package/node_modules/moment/locale/ka.js +103 -0
- package/node_modules/moment/locale/kk.js +93 -0
- package/node_modules/moment/locale/km.js +114 -0
- package/node_modules/moment/locale/kn.js +135 -0
- package/node_modules/moment/locale/ko.js +86 -0
- package/node_modules/moment/locale/ku-kmr.js +125 -0
- package/node_modules/moment/locale/ku.js +129 -0
- package/node_modules/moment/locale/ky.js +95 -0
- package/node_modules/moment/locale/lb.js +148 -0
- package/node_modules/moment/locale/lo.js +77 -0
- package/node_modules/moment/locale/lt.js +136 -0
- package/node_modules/moment/locale/lv.js +105 -0
- package/node_modules/moment/locale/me.js +128 -0
- package/node_modules/moment/locale/mi.js +71 -0
- package/node_modules/moment/locale/mk.js +97 -0
- package/node_modules/moment/locale/ml.js +93 -0
- package/node_modules/moment/locale/mn.js +111 -0
- package/node_modules/moment/locale/mr.js +214 -0
- package/node_modules/moment/locale/ms-my.js +87 -0
- package/node_modules/moment/locale/ms.js +86 -0
- package/node_modules/moment/locale/mt.js +67 -0
- package/node_modules/moment/locale/my.js +102 -0
- package/node_modules/moment/locale/nb.js +71 -0
- package/node_modules/moment/locale/ne.js +132 -0
- package/node_modules/moment/locale/nl-be.js +113 -0
- package/node_modules/moment/locale/nl.js +115 -0
- package/node_modules/moment/locale/nn.js +70 -0
- package/node_modules/moment/locale/oc-lnc.js +96 -0
- package/node_modules/moment/locale/pa-in.js +133 -0
- package/node_modules/moment/locale/pl.js +151 -0
- package/node_modules/moment/locale/pt-br.js +69 -0
- package/node_modules/moment/locale/pt.js +74 -0
- package/node_modules/moment/locale/ro.js +87 -0
- package/node_modules/moment/locale/ru.js +224 -0
- package/node_modules/moment/locale/sd.js +92 -0
- package/node_modules/moment/locale/se.js +68 -0
- package/node_modules/moment/locale/si.js +80 -0
- package/node_modules/moment/locale/sk.js +156 -0
- package/node_modules/moment/locale/sl.js +182 -0
- package/node_modules/moment/locale/sq.js +76 -0
- package/node_modules/moment/locale/sr-cyrl.js +138 -0
- package/node_modules/moment/locale/sr.js +140 -0
- package/node_modules/moment/locale/ss.js +95 -0
- package/node_modules/moment/locale/sv.js +79 -0
- package/node_modules/moment/locale/sw.js +66 -0
- package/node_modules/moment/locale/ta.js +142 -0
- package/node_modules/moment/locale/te.js +99 -0
- package/node_modules/moment/locale/tet.js +79 -0
- package/node_modules/moment/locale/tg.js +128 -0
- package/node_modules/moment/locale/th.js +76 -0
- package/node_modules/moment/locale/tk.js +102 -0
- package/node_modules/moment/locale/tl-ph.js +68 -0
- package/node_modules/moment/locale/tlh.js +135 -0
- package/node_modules/moment/locale/tr.js +117 -0
- package/node_modules/moment/locale/tzl.js +100 -0
- package/node_modules/moment/locale/tzm-latn.js +65 -0
- package/node_modules/moment/locale/tzm.js +65 -0
- package/node_modules/moment/locale/ug-cn.js +122 -0
- package/node_modules/moment/locale/uk.js +178 -0
- package/node_modules/moment/locale/ur.js +93 -0
- package/node_modules/moment/locale/uz-latn.js +65 -0
- package/node_modules/moment/locale/uz.js +62 -0
- package/node_modules/moment/locale/vi.js +91 -0
- package/node_modules/moment/locale/x-pseudo.js +84 -0
- package/node_modules/moment/locale/yo.js +64 -0
- package/node_modules/moment/locale/zh-cn.js +131 -0
- package/node_modules/moment/locale/zh-hk.js +112 -0
- package/node_modules/moment/locale/zh-mo.js +111 -0
- package/node_modules/moment/locale/zh-tw.js +110 -0
- package/node_modules/moment/min/locales.js +12800 -0
- package/node_modules/moment/min/locales.min.js +2 -0
- package/node_modules/moment/min/locales.min.js.map +1 -0
- package/node_modules/moment/min/moment-with-locales.js +18472 -0
- package/node_modules/moment/min/moment-with-locales.min.js +2 -0
- package/node_modules/moment/min/moment-with-locales.min.js.map +1 -0
- package/node_modules/moment/min/moment.min.js +2 -0
- package/node_modules/moment/min/moment.min.js.map +1 -0
- package/node_modules/moment/moment.d.ts +796 -0
- package/node_modules/moment/moment.js +5688 -0
- package/node_modules/moment/package.js +11 -0
- package/node_modules/moment/package.json +116 -0
- package/node_modules/moment/src/lib/create/check-overflow.js +57 -0
- package/node_modules/moment/src/lib/create/date-from-array.js +35 -0
- package/node_modules/moment/src/lib/create/from-anything.js +117 -0
- package/node_modules/moment/src/lib/create/from-array.js +187 -0
- package/node_modules/moment/src/lib/create/from-object.js +20 -0
- package/node_modules/moment/src/lib/create/from-string-and-array.js +67 -0
- package/node_modules/moment/src/lib/create/from-string-and-format.js +135 -0
- package/node_modules/moment/src/lib/create/from-string.js +258 -0
- package/node_modules/moment/src/lib/create/local.js +5 -0
- package/node_modules/moment/src/lib/create/parsing-flags.js +28 -0
- package/node_modules/moment/src/lib/create/utc.js +5 -0
- package/node_modules/moment/src/lib/create/valid.js +51 -0
- package/node_modules/moment/src/lib/duration/abs.js +18 -0
- package/node_modules/moment/src/lib/duration/add-subtract.js +21 -0
- package/node_modules/moment/src/lib/duration/as.js +76 -0
- package/node_modules/moment/src/lib/duration/bubble.js +68 -0
- package/node_modules/moment/src/lib/duration/clone.js +5 -0
- package/node_modules/moment/src/lib/duration/constructor.js +42 -0
- package/node_modules/moment/src/lib/duration/create.js +133 -0
- package/node_modules/moment/src/lib/duration/duration.js +16 -0
- package/node_modules/moment/src/lib/duration/get.js +27 -0
- package/node_modules/moment/src/lib/duration/humanize.js +114 -0
- package/node_modules/moment/src/lib/duration/iso-string.js +68 -0
- package/node_modules/moment/src/lib/duration/prototype.js +78 -0
- package/node_modules/moment/src/lib/duration/valid.js +55 -0
- package/node_modules/moment/src/lib/format/format.js +104 -0
- package/node_modules/moment/src/lib/locale/base-config.js +41 -0
- package/node_modules/moment/src/lib/locale/calendar.js +15 -0
- package/node_modules/moment/src/lib/locale/constructor.js +5 -0
- package/node_modules/moment/src/lib/locale/en.js +39 -0
- package/node_modules/moment/src/lib/locale/formats.js +36 -0
- package/node_modules/moment/src/lib/locale/invalid.js +5 -0
- package/node_modules/moment/src/lib/locale/lists.js +93 -0
- package/node_modules/moment/src/lib/locale/locale.js +45 -0
- package/node_modules/moment/src/lib/locale/locales.js +249 -0
- package/node_modules/moment/src/lib/locale/ordinal.js +8 -0
- package/node_modules/moment/src/lib/locale/pre-post-format.js +3 -0
- package/node_modules/moment/src/lib/locale/prototype.js +88 -0
- package/node_modules/moment/src/lib/locale/relative.js +32 -0
- package/node_modules/moment/src/lib/locale/set.js +56 -0
- package/node_modules/moment/src/lib/moment/add-subtract.js +61 -0
- package/node_modules/moment/src/lib/moment/calendar.js +53 -0
- package/node_modules/moment/src/lib/moment/clone.js +5 -0
- package/node_modules/moment/src/lib/moment/compare.js +72 -0
- package/node_modules/moment/src/lib/moment/constructor.js +80 -0
- package/node_modules/moment/src/lib/moment/creation-data.js +9 -0
- package/node_modules/moment/src/lib/moment/diff.js +79 -0
- package/node_modules/moment/src/lib/moment/format.js +78 -0
- package/node_modules/moment/src/lib/moment/from.js +20 -0
- package/node_modules/moment/src/lib/moment/get-set.js +117 -0
- package/node_modules/moment/src/lib/moment/locale.js +34 -0
- package/node_modules/moment/src/lib/moment/min-max.js +62 -0
- package/node_modules/moment/src/lib/moment/moment.js +28 -0
- package/node_modules/moment/src/lib/moment/now.js +3 -0
- package/node_modules/moment/src/lib/moment/prototype.js +197 -0
- package/node_modules/moment/src/lib/moment/start-end-of.js +164 -0
- package/node_modules/moment/src/lib/moment/to-type.js +42 -0
- package/node_modules/moment/src/lib/moment/to.js +20 -0
- package/node_modules/moment/src/lib/moment/valid.js +15 -0
- package/node_modules/moment/src/lib/parse/regex.js +84 -0
- package/node_modules/moment/src/lib/parse/token.js +36 -0
- package/node_modules/moment/src/lib/units/aliases.js +75 -0
- package/node_modules/moment/src/lib/units/constants.js +9 -0
- package/node_modules/moment/src/lib/units/day-of-month.js +35 -0
- package/node_modules/moment/src/lib/units/day-of-week.js +432 -0
- package/node_modules/moment/src/lib/units/day-of-year.js +28 -0
- package/node_modules/moment/src/lib/units/era.js +293 -0
- package/node_modules/moment/src/lib/units/hour.js +152 -0
- package/node_modules/moment/src/lib/units/millisecond.js +66 -0
- package/node_modules/moment/src/lib/units/minute.js +24 -0
- package/node_modules/moment/src/lib/units/month.js +340 -0
- package/node_modules/moment/src/lib/units/offset.js +249 -0
- package/node_modules/moment/src/lib/units/priorities.js +34 -0
- package/node_modules/moment/src/lib/units/quarter.js +24 -0
- package/node_modules/moment/src/lib/units/second.js +24 -0
- package/node_modules/moment/src/lib/units/timestamp.js +20 -0
- package/node_modules/moment/src/lib/units/timezone.js +16 -0
- package/node_modules/moment/src/lib/units/units.js +20 -0
- package/node_modules/moment/src/lib/units/week-calendar-utils.js +66 -0
- package/node_modules/moment/src/lib/units/week-year.js +128 -0
- package/node_modules/moment/src/lib/units/week.js +62 -0
- package/node_modules/moment/src/lib/units/year.js +75 -0
- package/node_modules/moment/src/lib/utils/abs-ceil.js +7 -0
- package/node_modules/moment/src/lib/utils/abs-floor.js +8 -0
- package/node_modules/moment/src/lib/utils/abs-round.js +7 -0
- package/node_modules/moment/src/lib/utils/compare-arrays.js +18 -0
- package/node_modules/moment/src/lib/utils/defaults.js +10 -0
- package/node_modules/moment/src/lib/utils/deprecate.js +69 -0
- package/node_modules/moment/src/lib/utils/extend.js +19 -0
- package/node_modules/moment/src/lib/utils/has-own-prop.js +3 -0
- package/node_modules/moment/src/lib/utils/hooks.js +13 -0
- package/node_modules/moment/src/lib/utils/index-of.js +18 -0
- package/node_modules/moment/src/lib/utils/is-array.js +6 -0
- package/node_modules/moment/src/lib/utils/is-calendar-spec.js +25 -0
- package/node_modules/moment/src/lib/utils/is-date.js +6 -0
- package/node_modules/moment/src/lib/utils/is-function.js +6 -0
- package/node_modules/moment/src/lib/utils/is-leap-year.js +3 -0
- package/node_modules/moment/src/lib/utils/is-moment-input.js +75 -0
- package/node_modules/moment/src/lib/utils/is-number.js +6 -0
- package/node_modules/moment/src/lib/utils/is-object-empty.js +15 -0
- package/node_modules/moment/src/lib/utils/is-object.js +8 -0
- package/node_modules/moment/src/lib/utils/is-string.js +3 -0
- package/node_modules/moment/src/lib/utils/is-undefined.js +3 -0
- package/node_modules/moment/src/lib/utils/keys.js +20 -0
- package/node_modules/moment/src/lib/utils/map.js +9 -0
- package/node_modules/moment/src/lib/utils/mod.js +3 -0
- package/node_modules/moment/src/lib/utils/some.js +20 -0
- package/node_modules/moment/src/lib/utils/to-int.js +12 -0
- package/node_modules/moment/src/lib/utils/zero-fill.js +10 -0
- package/node_modules/moment/src/locale/af.js +71 -0
- package/node_modules/moment/src/locale/ar-dz.js +156 -0
- package/node_modules/moment/src/locale/ar-kw.js +55 -0
- package/node_modules/moment/src/locale/ar-ly.js +171 -0
- package/node_modules/moment/src/locale/ar-ma.js +56 -0
- package/node_modules/moment/src/locale/ar-ps.js +112 -0
- package/node_modules/moment/src/locale/ar-sa.js +105 -0
- package/node_modules/moment/src/locale/ar-tn.js +55 -0
- package/node_modules/moment/src/locale/ar.js +189 -0
- package/node_modules/moment/src/locale/az.js +102 -0
- package/node_modules/moment/src/locale/be.js +142 -0
- package/node_modules/moment/src/locale/bg.js +87 -0
- package/node_modules/moment/src/locale/bm.js +52 -0
- package/node_modules/moment/src/locale/bn-bd.js +129 -0
- package/node_modules/moment/src/locale/bn.js +119 -0
- package/node_modules/moment/src/locale/bo.js +124 -0
- package/node_modules/moment/src/locale/br.js +168 -0
- package/node_modules/moment/src/locale/bs.js +160 -0
- package/node_modules/moment/src/locale/ca.js +100 -0
- package/node_modules/moment/src/locale/cs.js +181 -0
- package/node_modules/moment/src/locale/cv.js +63 -0
- package/node_modules/moment/src/locale/cy.js +98 -0
- package/node_modules/moment/src/locale/da.js +53 -0
- package/node_modules/moment/src/locale/de-at.js +79 -0
- package/node_modules/moment/src/locale/de-ch.js +78 -0
- package/node_modules/moment/src/locale/de.js +78 -0
- package/node_modules/moment/src/locale/dv.js +90 -0
- package/node_modules/moment/src/locale/el.js +106 -0
- package/node_modules/moment/src/locale/en-au.js +68 -0
- package/node_modules/moment/src/locale/en-ca.js +64 -0
- package/node_modules/moment/src/locale/en-gb.js +68 -0
- package/node_modules/moment/src/locale/en-ie.js +68 -0
- package/node_modules/moment/src/locale/en-il.js +64 -0
- package/node_modules/moment/src/locale/en-in.js +68 -0
- package/node_modules/moment/src/locale/en-nz.js +68 -0
- package/node_modules/moment/src/locale/en-sg.js +68 -0
- package/node_modules/moment/src/locale/eo.js +68 -0
- package/node_modules/moment/src/locale/es-do.js +108 -0
- package/node_modules/moment/src/locale/es-mx.js +110 -0
- package/node_modules/moment/src/locale/es-us.js +110 -0
- package/node_modules/moment/src/locale/es.js +110 -0
- package/node_modules/moment/src/locale/et.js +78 -0
- package/node_modules/moment/src/locale/eu.js +65 -0
- package/node_modules/moment/src/locale/fa.js +113 -0
- package/node_modules/moment/src/locale/fi.js +124 -0
- package/node_modules/moment/src/locale/fil.js +58 -0
- package/node_modules/moment/src/locale/fo.js +57 -0
- package/node_modules/moment/src/locale/fr-ca.js +70 -0
- package/node_modules/moment/src/locale/fr-ch.js +74 -0
- package/node_modules/moment/src/locale/fr.js +108 -0
- package/node_modules/moment/src/locale/fy.js +75 -0
- package/node_modules/moment/src/locale/ga.js +95 -0
- package/node_modules/moment/src/locale/gd.js +95 -0
- package/node_modules/moment/src/locale/gl.js +75 -0
- package/node_modules/moment/src/locale/gom-deva.js +126 -0
- package/node_modules/moment/src/locale/gom-latn.js +124 -0
- package/node_modules/moment/src/locale/gu.js +122 -0
- package/node_modules/moment/src/locale/he.js +94 -0
- package/node_modules/moment/src/locale/hi.js +168 -0
- package/node_modules/moment/src/locale/hr.js +156 -0
- package/node_modules/moment/src/locale/hu.js +118 -0
- package/node_modules/moment/src/locale/hy-am.js +94 -0
- package/node_modules/moment/src/locale/id.js +76 -0
- package/node_modules/moment/src/locale/is.js +140 -0
- package/node_modules/moment/src/locale/it-ch.js +64 -0
- package/node_modules/moment/src/locale/it.js +106 -0
- package/node_modules/moment/src/locale/ja.js +148 -0
- package/node_modules/moment/src/locale/jv.js +76 -0
- package/node_modules/moment/src/locale/ka.js +92 -0
- package/node_modules/moment/src/locale/kk.js +82 -0
- package/node_modules/moment/src/locale/km.js +103 -0
- package/node_modules/moment/src/locale/kn.js +124 -0
- package/node_modules/moment/src/locale/ko.js +75 -0
- package/node_modules/moment/src/locale/ku-kmr.js +121 -0
- package/node_modules/moment/src/locale/ku.js +118 -0
- package/node_modules/moment/src/locale/ky.js +84 -0
- package/node_modules/moment/src/locale/lb.js +137 -0
- package/node_modules/moment/src/locale/lo.js +66 -0
- package/node_modules/moment/src/locale/lt.js +125 -0
- package/node_modules/moment/src/locale/lv.js +94 -0
- package/node_modules/moment/src/locale/me.js +117 -0
- package/node_modules/moment/src/locale/mi.js +60 -0
- package/node_modules/moment/src/locale/mk.js +85 -0
- package/node_modules/moment/src/locale/ml.js +82 -0
- package/node_modules/moment/src/locale/mn.js +100 -0
- package/node_modules/moment/src/locale/mr.js +203 -0
- package/node_modules/moment/src/locale/ms-my.js +76 -0
- package/node_modules/moment/src/locale/ms.js +75 -0
- package/node_modules/moment/src/locale/mt.js +56 -0
- package/node_modules/moment/src/locale/my.js +91 -0
- package/node_modules/moment/src/locale/nb.js +60 -0
- package/node_modules/moment/src/locale/ne.js +121 -0
- package/node_modules/moment/src/locale/nl-be.js +102 -0
- package/node_modules/moment/src/locale/nl.js +104 -0
- package/node_modules/moment/src/locale/nn.js +59 -0
- package/node_modules/moment/src/locale/oc-lnc.js +85 -0
- package/node_modules/moment/src/locale/pa-in.js +122 -0
- package/node_modules/moment/src/locale/pl.js +140 -0
- package/node_modules/moment/src/locale/pt-br.js +58 -0
- package/node_modules/moment/src/locale/pt.js +63 -0
- package/node_modules/moment/src/locale/ro.js +76 -0
- package/node_modules/moment/src/locale/ru.js +213 -0
- package/node_modules/moment/src/locale/sd.js +81 -0
- package/node_modules/moment/src/locale/se.js +57 -0
- package/node_modules/moment/src/locale/si.js +69 -0
- package/node_modules/moment/src/locale/sk.js +145 -0
- package/node_modules/moment/src/locale/sl.js +171 -0
- package/node_modules/moment/src/locale/sq.js +65 -0
- package/node_modules/moment/src/locale/sr-cyrl.js +127 -0
- package/node_modules/moment/src/locale/sr.js +129 -0
- package/node_modules/moment/src/locale/ss.js +84 -0
- package/node_modules/moment/src/locale/sv.js +68 -0
- package/node_modules/moment/src/locale/sw.js +55 -0
- package/node_modules/moment/src/locale/ta.js +131 -0
- package/node_modules/moment/src/locale/te.js +88 -0
- package/node_modules/moment/src/locale/tet.js +68 -0
- package/node_modules/moment/src/locale/tg.js +117 -0
- package/node_modules/moment/src/locale/th.js +65 -0
- package/node_modules/moment/src/locale/tk.js +91 -0
- package/node_modules/moment/src/locale/tl-ph.js +57 -0
- package/node_modules/moment/src/locale/tlh.js +124 -0
- package/node_modules/moment/src/locale/tr.js +106 -0
- package/node_modules/moment/src/locale/tzl.js +89 -0
- package/node_modules/moment/src/locale/tzm-latn.js +54 -0
- package/node_modules/moment/src/locale/tzm.js +54 -0
- package/node_modules/moment/src/locale/ug-cn.js +111 -0
- package/node_modules/moment/src/locale/uk.js +167 -0
- package/node_modules/moment/src/locale/ur.js +82 -0
- package/node_modules/moment/src/locale/uz-latn.js +54 -0
- package/node_modules/moment/src/locale/uz.js +51 -0
- package/node_modules/moment/src/locale/vi.js +80 -0
- package/node_modules/moment/src/locale/x-pseudo.js +73 -0
- package/node_modules/moment/src/locale/yo.js +53 -0
- package/node_modules/moment/src/locale/zh-cn.js +120 -0
- package/node_modules/moment/src/locale/zh-hk.js +101 -0
- package/node_modules/moment/src/locale/zh-mo.js +100 -0
- package/node_modules/moment/src/locale/zh-tw.js +99 -0
- package/node_modules/moment/src/moment.js +93 -0
- package/node_modules/moment/ts3.1-typings/moment.d.ts +785 -0
- package/node_modules/nanoid/LICENSE +20 -0
- package/node_modules/nanoid/README.md +38 -0
- package/node_modules/nanoid/async/index.browser.js +33 -0
- package/node_modules/nanoid/async/index.d.ts +56 -0
- package/node_modules/nanoid/async/index.js +34 -0
- package/node_modules/nanoid/async/index.native.js +25 -0
- package/node_modules/nanoid/bin/nanoid.js +46 -0
- package/node_modules/nanoid/index.browser.js +33 -0
- package/node_modules/nanoid/index.d.ts +91 -0
- package/node_modules/nanoid/index.js +45 -0
- package/node_modules/nanoid/nanoid.js +1 -0
- package/node_modules/nanoid/non-secure/index.d.ts +33 -0
- package/node_modules/nanoid/non-secure/index.js +20 -0
- package/node_modules/nanoid/package.json +46 -0
- package/node_modules/nanoid/url-alphabet/index.js +2 -0
- package/node_modules/ts-md5/LICENSE +21 -0
- package/node_modules/ts-md5/README.md +101 -0
- package/node_modules/ts-md5/dist/cjs/index.d.ts +3 -0
- package/node_modules/ts-md5/dist/cjs/index.js +10 -0
- package/node_modules/ts-md5/dist/cjs/index.js.map +1 -0
- package/node_modules/ts-md5/dist/cjs/md5.d.ts +70 -0
- package/node_modules/ts-md5/dist/cjs/md5.js +429 -0
- package/node_modules/ts-md5/dist/cjs/md5.js.map +1 -0
- package/node_modules/ts-md5/dist/cjs/md5_file_hasher.d.ts +25 -0
- package/node_modules/ts-md5/dist/cjs/md5_file_hasher.js +96 -0
- package/node_modules/ts-md5/dist/cjs/md5_file_hasher.js.map +1 -0
- package/node_modules/ts-md5/dist/cjs/parallel_hasher.d.ts +22 -0
- package/node_modules/ts-md5/dist/cjs/parallel_hasher.js +69 -0
- package/node_modules/ts-md5/dist/cjs/parallel_hasher.js.map +1 -0
- package/node_modules/ts-md5/dist/esm/index.d.ts +3 -0
- package/node_modules/ts-md5/dist/esm/index.js +4 -0
- package/node_modules/ts-md5/dist/esm/index.js.map +1 -0
- package/node_modules/ts-md5/dist/esm/md5.d.ts +70 -0
- package/node_modules/ts-md5/dist/esm/md5.js +421 -0
- package/node_modules/ts-md5/dist/esm/md5.js.map +1 -0
- package/node_modules/ts-md5/dist/esm/md5_file_hasher.d.ts +25 -0
- package/node_modules/ts-md5/dist/esm/md5_file_hasher.js +89 -0
- package/node_modules/ts-md5/dist/esm/md5_file_hasher.js.map +1 -0
- package/node_modules/ts-md5/dist/esm/parallel_hasher.d.ts +22 -0
- package/node_modules/ts-md5/dist/esm/parallel_hasher.js +64 -0
- package/node_modules/ts-md5/dist/esm/parallel_hasher.js.map +1 -0
- package/node_modules/ts-md5/dist/md5.js +429 -0
- package/node_modules/ts-md5/dist/md5_worker.js +523 -0
- package/node_modules/ts-md5/package.json +82 -0
- package/node_modules/ts-md5/src/index.ts +4 -0
- package/node_modules/ts-md5/src/md5.ts +473 -0
- package/node_modules/ts-md5/src/md5_file_hasher.ts +110 -0
- package/node_modules/ts-md5/src/parallel_hasher.ts +90 -0
- package/node_modules/ts-md5/src/worker.js +20 -0
- package/package.json +160 -0
- package/scripts/generate-index.js +52 -0
- package/setup.js +2 -0
- package/tfsec.json +4 -0
- package/util/compute.go +106 -0
- package/util/terraform.go +213 -0
- package/util/util.go +100 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
4
|
+
const resource_group_1 = require("@cdktf/provider-azurerm/lib/resource-group");
|
|
5
|
+
const cdktf_1 = require("cdktf");
|
|
6
|
+
const ExampleAzureContainerRegistry_1 = require("./ExampleAzureContainerRegistry");
|
|
7
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
8
|
+
const acr = require("..");
|
|
9
|
+
describe("Azure Container Registry With Defaults", () => {
|
|
10
|
+
let stack;
|
|
11
|
+
let fullSynthResult;
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
const app = cdktf_1.Testing.app();
|
|
14
|
+
stack = new cdktf_1.TerraformStack(app, "test");
|
|
15
|
+
new provider_1.AzurermProvider(stack, "azureFeature", { features: {} });
|
|
16
|
+
const rg = new resource_group_1.ResourceGroup(stack, "MyResourceGroup", {
|
|
17
|
+
name: "rg-test",
|
|
18
|
+
location: "eastus",
|
|
19
|
+
});
|
|
20
|
+
new acr.Registry(stack, "testAzureContainerRegistryDefaults", {
|
|
21
|
+
name: "latest",
|
|
22
|
+
location: "eastus",
|
|
23
|
+
resourceGroup: rg,
|
|
24
|
+
});
|
|
25
|
+
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
26
|
+
});
|
|
27
|
+
it("renders an Azure Container Registry with defaults and checks snapshot", () => {
|
|
28
|
+
expect(cdktf_1.Testing.synth(stack)).toMatchSnapshot(); // Compare the already prepared stack
|
|
29
|
+
});
|
|
30
|
+
it("check if the produced terraform configuration is valid", () => {
|
|
31
|
+
expect(fullSynthResult).toBeValidTerraform(); // Use the saved result
|
|
32
|
+
});
|
|
33
|
+
it("check if this can be planned", () => {
|
|
34
|
+
expect(fullSynthResult).toPlanSuccessfully(); // Use the saved result
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
describe("Azure Container Registry Example", () => {
|
|
38
|
+
it("renders the Azure Container Registry and checks snapshot", () => {
|
|
39
|
+
expect(cdktf_1.Testing.synth(new ExampleAzureContainerRegistry_1.exampleAzureContainerRegistry(cdktf_1.Testing.app(), "testAzureContainerRegistry"))).toMatchSnapshot();
|
|
40
|
+
});
|
|
41
|
+
it("check if the produced terraform configuration is valid", () => {
|
|
42
|
+
// We need to do a full synth to plan the terraform configuration
|
|
43
|
+
expect(cdktf_1.Testing.fullSynth(new ExampleAzureContainerRegistry_1.exampleAzureContainerRegistry(cdktf_1.Testing.app(), "testAzureContainerRegistry"))).toBeValidTerraform();
|
|
44
|
+
});
|
|
45
|
+
it("check if this can be planned", () => {
|
|
46
|
+
// We need to do a full synth to plan the terraform configuration
|
|
47
|
+
expect(cdktf_1.Testing.fullSynth(new ExampleAzureContainerRegistry_1.exampleAzureContainerRegistry(cdktf_1.Testing.app(), "testAzureContainerRegistry"))).toPlanSuccessfully();
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVDb250YWluZXJSZWdpc3RyeS5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWNvbnRhaW5lcnJlZ2lzdHJ5L3Rlc3QvQXp1cmVDb250YWluZXJSZWdpc3RyeS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUVBQXVFO0FBQ3ZFLCtFQUEyRTtBQUMzRSxpQ0FBZ0Q7QUFDaEQsbUZBQWdGO0FBQ2hGLDJDQUF5QztBQUN6QywwQkFBMEI7QUFFMUIsUUFBUSxDQUFDLHdDQUF3QyxFQUFFLEdBQUcsRUFBRTtJQUN0RCxJQUFJLEtBQXFCLENBQUM7SUFDMUIsSUFBSSxlQUFvQixDQUFDO0lBRXpCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxNQUFNLEdBQUcsR0FBRyxlQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDMUIsS0FBSyxHQUFHLElBQUksc0JBQWMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFeEMsSUFBSSwwQkFBZSxDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU3RCxNQUFNLEVBQUUsR0FBRyxJQUFJLDhCQUFhLENBQUMsS0FBSyxFQUFFLGlCQUFpQixFQUFFO1lBQ3JELElBQUksRUFBRSxTQUFTO1lBQ2YsUUFBUSxFQUFFLFFBQVE7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxvQ0FBb0MsRUFBRTtZQUM1RCxJQUFJLEVBQUUsUUFBUTtZQUNkLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUMsQ0FBQztRQUVILGVBQWUsR0FBRyxlQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsNEJBQTRCO0lBQzFFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHVFQUF1RSxFQUFFLEdBQUcsRUFBRTtRQUMvRSxNQUFNLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMscUNBQXFDO0lBQ3ZGLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdEQUF3RCxFQUFFLEdBQUcsRUFBRTtRQUNoRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QjtJQUN2RSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSxHQUFHLEVBQUU7UUFDdEMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyx1QkFBdUI7SUFDdkUsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILFFBQVEsQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLEVBQUU7SUFDaEQsRUFBRSxDQUFDLDBEQUEwRCxFQUFFLEdBQUcsRUFBRTtRQUNsRSxNQUFNLENBQ0osZUFBTyxDQUFDLEtBQUssQ0FDWCxJQUFJLDZEQUE2QixDQUMvQixlQUFPLENBQUMsR0FBRyxFQUFFLEVBQ2IsNEJBQTRCLENBQzdCLENBQ0YsQ0FDRixDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdEQUF3RCxFQUFFLEdBQUcsRUFBRTtRQUNoRSxpRUFBaUU7UUFDakUsTUFBTSxDQUNKLGVBQU8sQ0FBQyxTQUFTLENBQ2YsSUFBSSw2REFBNkIsQ0FDL0IsZUFBTyxDQUFDLEdBQUcsRUFBRSxFQUNiLDRCQUE0QixDQUM3QixDQUNGLENBQ0YsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDhCQUE4QixFQUFFLEdBQUcsRUFBRTtRQUN0QyxpRUFBaUU7UUFDakUsTUFBTSxDQUNKLGVBQU8sQ0FBQyxTQUFTLENBQ2YsSUFBSSw2REFBNkIsQ0FDL0IsZUFBTyxDQUFDLEdBQUcsRUFBRSxFQUNiLDRCQUE0QixDQUM3QixDQUNGLENBQ0YsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBenVyZXJtUHJvdmlkZXIgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0IHsgVGVzdGluZywgVGVycmFmb3JtU3RhY2sgfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IGV4YW1wbGVBenVyZUNvbnRhaW5lclJlZ2lzdHJ5IH0gZnJvbSBcIi4vRXhhbXBsZUF6dXJlQ29udGFpbmVyUmVnaXN0cnlcIjtcbmltcG9ydCBcImNka3RmL2xpYi90ZXN0aW5nL2FkYXB0ZXJzL2plc3RcIjtcbmltcG9ydCAqIGFzIGFjciBmcm9tIFwiLi5cIjtcblxuZGVzY3JpYmUoXCJBenVyZSBDb250YWluZXIgUmVnaXN0cnkgV2l0aCBEZWZhdWx0c1wiLCAoKSA9PiB7XG4gIGxldCBzdGFjazogVGVycmFmb3JtU3RhY2s7XG4gIGxldCBmdWxsU3ludGhSZXN1bHQ6IGFueTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBjb25zdCBhcHAgPSBUZXN0aW5nLmFwcCgpO1xuICAgIHN0YWNrID0gbmV3IFRlcnJhZm9ybVN0YWNrKGFwcCwgXCJ0ZXN0XCIpO1xuXG4gICAgbmV3IEF6dXJlcm1Qcm92aWRlcihzdGFjaywgXCJhenVyZUZlYXR1cmVcIiwgeyBmZWF0dXJlczoge30gfSk7XG5cbiAgICBjb25zdCByZyA9IG5ldyBSZXNvdXJjZUdyb3VwKHN0YWNrLCBcIk15UmVzb3VyY2VHcm91cFwiLCB7XG4gICAgICBuYW1lOiBcInJnLXRlc3RcIixcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgIH0pO1xuXG4gICAgbmV3IGFjci5SZWdpc3RyeShzdGFjaywgXCJ0ZXN0QXp1cmVDb250YWluZXJSZWdpc3RyeURlZmF1bHRzXCIsIHtcbiAgICAgIG5hbWU6IFwibGF0ZXN0XCIsXG4gICAgICBsb2NhdGlvbjogXCJlYXN0dXNcIixcbiAgICAgIHJlc291cmNlR3JvdXA6IHJnLFxuICAgIH0pO1xuXG4gICAgZnVsbFN5bnRoUmVzdWx0ID0gVGVzdGluZy5mdWxsU3ludGgoc3RhY2spOyAvLyBTYXZlIHRoZSByZXN1bHQgZm9yIHJldXNlXG4gIH0pO1xuXG4gIGl0KFwicmVuZGVycyBhbiBBenVyZSBDb250YWluZXIgUmVnaXN0cnkgd2l0aCBkZWZhdWx0cyBhbmQgY2hlY2tzIHNuYXBzaG90XCIsICgpID0+IHtcbiAgICBleHBlY3QoVGVzdGluZy5zeW50aChzdGFjaykpLnRvTWF0Y2hTbmFwc2hvdCgpOyAvLyBDb21wYXJlIHRoZSBhbHJlYWR5IHByZXBhcmVkIHN0YWNrXG4gIH0pO1xuXG4gIGl0KFwiY2hlY2sgaWYgdGhlIHByb2R1Y2VkIHRlcnJhZm9ybSBjb25maWd1cmF0aW9uIGlzIHZhbGlkXCIsICgpID0+IHtcbiAgICBleHBlY3QoZnVsbFN5bnRoUmVzdWx0KS50b0JlVmFsaWRUZXJyYWZvcm0oKTsgLy8gVXNlIHRoZSBzYXZlZCByZXN1bHRcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGlzIGNhbiBiZSBwbGFubmVkXCIsICgpID0+IHtcbiAgICBleHBlY3QoZnVsbFN5bnRoUmVzdWx0KS50b1BsYW5TdWNjZXNzZnVsbHkoKTsgLy8gVXNlIHRoZSBzYXZlZCByZXN1bHRcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoXCJBenVyZSBDb250YWluZXIgUmVnaXN0cnkgRXhhbXBsZVwiLCAoKSA9PiB7XG4gIGl0KFwicmVuZGVycyB0aGUgQXp1cmUgQ29udGFpbmVyIFJlZ2lzdHJ5IGFuZCBjaGVja3Mgc25hcHNob3RcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChcbiAgICAgIFRlc3Rpbmcuc3ludGgoXG4gICAgICAgIG5ldyBleGFtcGxlQXp1cmVDb250YWluZXJSZWdpc3RyeShcbiAgICAgICAgICBUZXN0aW5nLmFwcCgpLFxuICAgICAgICAgIFwidGVzdEF6dXJlQ29udGFpbmVyUmVnaXN0cnlcIixcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKS50b01hdGNoU25hcHNob3QoKTtcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGUgcHJvZHVjZWQgdGVycmFmb3JtIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRcIiwgKCkgPT4ge1xuICAgIC8vIFdlIG5lZWQgdG8gZG8gYSBmdWxsIHN5bnRoIHRvIHBsYW4gdGhlIHRlcnJhZm9ybSBjb25maWd1cmF0aW9uXG4gICAgZXhwZWN0KFxuICAgICAgVGVzdGluZy5mdWxsU3ludGgoXG4gICAgICAgIG5ldyBleGFtcGxlQXp1cmVDb250YWluZXJSZWdpc3RyeShcbiAgICAgICAgICBUZXN0aW5nLmFwcCgpLFxuICAgICAgICAgIFwidGVzdEF6dXJlQ29udGFpbmVyUmVnaXN0cnlcIixcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKS50b0JlVmFsaWRUZXJyYWZvcm0oKTtcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGlzIGNhbiBiZSBwbGFubmVkXCIsICgpID0+IHtcbiAgICAvLyBXZSBuZWVkIHRvIGRvIGEgZnVsbCBzeW50aCB0byBwbGFuIHRoZSB0ZXJyYWZvcm0gY29uZmlndXJhdGlvblxuICAgIGV4cGVjdChcbiAgICAgIFRlc3RpbmcuZnVsbFN5bnRoKFxuICAgICAgICBuZXcgZXhhbXBsZUF6dXJlQ29udGFpbmVyUmVnaXN0cnkoXG4gICAgICAgICAgVGVzdGluZy5hcHAoKSxcbiAgICAgICAgICBcInRlc3RBenVyZUNvbnRhaW5lclJlZ2lzdHJ5XCIsXG4gICAgICAgICksXG4gICAgICApLFxuICAgICkudG9QbGFuU3VjY2Vzc2Z1bGx5KCk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.exampleAzureContainerRegistry = void 0;
|
|
4
|
+
const data_azurerm_client_config_1 = require("@cdktf/provider-azurerm/lib/data-azurerm-client-config");
|
|
5
|
+
const log_analytics_workspace_1 = require("@cdktf/provider-azurerm/lib/log-analytics-workspace");
|
|
6
|
+
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
7
|
+
const resource_group_1 = require("@cdktf/provider-azurerm/lib/resource-group");
|
|
8
|
+
const cdktf = require("cdktf");
|
|
9
|
+
const cdktf_1 = require("cdktf");
|
|
10
|
+
const acr = require("../");
|
|
11
|
+
const testing_1 = require("../../testing");
|
|
12
|
+
const app = new cdktf_1.App();
|
|
13
|
+
class exampleAzureContainerRegistry extends testing_1.BaseTestStack {
|
|
14
|
+
constructor(scope, id) {
|
|
15
|
+
super(scope, id);
|
|
16
|
+
const clientConfig = new data_azurerm_client_config_1.DataAzurermClientConfig(this, "CurrentClientConfig", {});
|
|
17
|
+
new provider_1.AzurermProvider(this, "azureFeature", {
|
|
18
|
+
features: {},
|
|
19
|
+
});
|
|
20
|
+
const resourceGroup = new resource_group_1.ResourceGroup(this, "rg", {
|
|
21
|
+
location: "eastus",
|
|
22
|
+
name: `rg-${this.name}`,
|
|
23
|
+
});
|
|
24
|
+
const logAnalyticsWorkspace = new log_analytics_workspace_1.LogAnalyticsWorkspace(this, "log_analytics", {
|
|
25
|
+
location: "eastus",
|
|
26
|
+
name: `la-${this.name}`,
|
|
27
|
+
resourceGroupName: resourceGroup.name,
|
|
28
|
+
});
|
|
29
|
+
const azureContainerRegistry = new acr.Registry(this, "testACR", {
|
|
30
|
+
name: `acr${this.name}`,
|
|
31
|
+
location: resourceGroup.location,
|
|
32
|
+
resourceGroup: resourceGroup,
|
|
33
|
+
sku: "Premium",
|
|
34
|
+
adminEnabled: false,
|
|
35
|
+
geoReplicationLocations: [{ location: "westus" }],
|
|
36
|
+
tags: {
|
|
37
|
+
environment: "test",
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
//Diag Settings
|
|
41
|
+
azureContainerRegistry.addDiagSettings({
|
|
42
|
+
name: "diagsettings",
|
|
43
|
+
logAnalyticsWorkspaceId: logAnalyticsWorkspace.id,
|
|
44
|
+
});
|
|
45
|
+
//RBAC
|
|
46
|
+
azureContainerRegistry.addAccess(clientConfig.objectId, "Contributor");
|
|
47
|
+
// Outputs to use for End to End Test
|
|
48
|
+
const cdktfTerraformOutputRG = new cdktf.TerraformOutput(this, "resource_group_name", {
|
|
49
|
+
value: resourceGroup.name,
|
|
50
|
+
});
|
|
51
|
+
cdktfTerraformOutputRG.overrideLogicalId("resource_group_name");
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.exampleAzureContainerRegistry = exampleAzureContainerRegistry;
|
|
55
|
+
new exampleAzureContainerRegistry(app, "testAzureContainerRegistry");
|
|
56
|
+
app.synth();
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhhbXBsZUF6dXJlQ29udGFpbmVyUmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtY29udGFpbmVycmVnaXN0cnkvdGVzdC9FeGFtcGxlQXp1cmVDb250YWluZXJSZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1R0FBaUc7QUFDakcsaUdBQTRGO0FBQzVGLG1FQUF1RTtBQUN2RSwrRUFBMkU7QUFDM0UsK0JBQStCO0FBQy9CLGlDQUE0QjtBQUU1QiwyQkFBMkI7QUFDM0IsMkNBQThDO0FBRTlDLE1BQU0sR0FBRyxHQUFHLElBQUksV0FBRyxFQUFFLENBQUM7QUFFdEIsTUFBYSw2QkFBOEIsU0FBUSx1QkFBYTtJQUM5RCxZQUFZLEtBQWdCLEVBQUUsRUFBVTtRQUN0QyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sWUFBWSxHQUFHLElBQUksb0RBQXVCLENBQzlDLElBQUksRUFDSixxQkFBcUIsRUFDckIsRUFBRSxDQUNILENBQUM7UUFFRixJQUFJLDBCQUFlLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUN4QyxRQUFRLEVBQUUsRUFBRTtTQUNiLENBQUMsQ0FBQztRQUVILE1BQU0sYUFBYSxHQUFHLElBQUksOEJBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ2xELFFBQVEsRUFBRSxRQUFRO1lBQ2xCLElBQUksRUFBRSxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUU7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLCtDQUFxQixDQUNyRCxJQUFJLEVBQ0osZUFBZSxFQUNmO1lBQ0UsUUFBUSxFQUFFLFFBQVE7WUFDbEIsSUFBSSxFQUFFLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRTtZQUN2QixpQkFBaUIsRUFBRSxhQUFhLENBQUMsSUFBSTtTQUN0QyxDQUNGLENBQUM7UUFFRixNQUFNLHNCQUFzQixHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQy9ELElBQUksRUFBRSxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDdkIsUUFBUSxFQUFFLGFBQWEsQ0FBQyxRQUFRO1lBQ2hDLGFBQWEsRUFBRSxhQUFhO1lBQzVCLEdBQUcsRUFBRSxTQUFTO1lBQ2QsWUFBWSxFQUFFLEtBQUs7WUFDbkIsdUJBQXVCLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUNqRCxJQUFJLEVBQUU7Z0JBQ0osV0FBVyxFQUFFLE1BQU07YUFDcEI7U0FDRixDQUFDLENBQUM7UUFFSCxlQUFlO1FBQ2Ysc0JBQXNCLENBQUMsZUFBZSxDQUFDO1lBQ3JDLElBQUksRUFBRSxjQUFjO1lBQ3BCLHVCQUF1QixFQUFFLHFCQUFxQixDQUFDLEVBQUU7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsTUFBTTtRQUNOLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRXZFLHFDQUFxQztRQUNyQyxNQUFNLHNCQUFzQixHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDdEQsSUFBSSxFQUNKLHFCQUFxQixFQUNyQjtZQUNFLEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSTtTQUMxQixDQUNGLENBQUM7UUFDRixzQkFBc0IsQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDRjtBQTVERCxzRUE0REM7QUFFRCxJQUFJLDZCQUE2QixDQUFDLEdBQUcsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO0FBRXJFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFBenVyZXJtQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9kYXRhLWF6dXJlcm0tY2xpZW50LWNvbmZpZ1wiO1xuaW1wb3J0IHsgTG9nQW5hbHl0aWNzV29ya3NwYWNlIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9sb2ctYW5hbHl0aWNzLXdvcmtzcGFjZVwiO1xuaW1wb3J0IHsgQXp1cmVybVByb3ZpZGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9wcm92aWRlclwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQXBwIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgYWNyIGZyb20gXCIuLi9cIjtcbmltcG9ydCB7IEJhc2VUZXN0U3RhY2sgfSBmcm9tIFwiLi4vLi4vdGVzdGluZ1wiO1xuXG5jb25zdCBhcHAgPSBuZXcgQXBwKCk7XG5cbmV4cG9ydCBjbGFzcyBleGFtcGxlQXp1cmVDb250YWluZXJSZWdpc3RyeSBleHRlbmRzIEJhc2VUZXN0U3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGNsaWVudENvbmZpZyA9IG5ldyBEYXRhQXp1cmVybUNsaWVudENvbmZpZyhcbiAgICAgIHRoaXMsXG4gICAgICBcIkN1cnJlbnRDbGllbnRDb25maWdcIixcbiAgICAgIHt9LFxuICAgICk7XG5cbiAgICBuZXcgQXp1cmVybVByb3ZpZGVyKHRoaXMsIFwiYXp1cmVGZWF0dXJlXCIsIHtcbiAgICAgIGZlYXR1cmVzOiB7fSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc291cmNlR3JvdXAgPSBuZXcgUmVzb3VyY2VHcm91cCh0aGlzLCBcInJnXCIsIHtcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgICAgbmFtZTogYHJnLSR7dGhpcy5uYW1lfWAsXG4gICAgfSk7XG5cbiAgICBjb25zdCBsb2dBbmFseXRpY3NXb3Jrc3BhY2UgPSBuZXcgTG9nQW5hbHl0aWNzV29ya3NwYWNlKFxuICAgICAgdGhpcyxcbiAgICAgIFwibG9nX2FuYWx5dGljc1wiLFxuICAgICAge1xuICAgICAgICBsb2NhdGlvbjogXCJlYXN0dXNcIixcbiAgICAgICAgbmFtZTogYGxhLSR7dGhpcy5uYW1lfWAsXG4gICAgICAgIHJlc291cmNlR3JvdXBOYW1lOiByZXNvdXJjZUdyb3VwLm5hbWUsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBjb25zdCBhenVyZUNvbnRhaW5lclJlZ2lzdHJ5ID0gbmV3IGFjci5SZWdpc3RyeSh0aGlzLCBcInRlc3RBQ1JcIiwge1xuICAgICAgbmFtZTogYGFjciR7dGhpcy5uYW1lfWAsXG4gICAgICBsb2NhdGlvbjogcmVzb3VyY2VHcm91cC5sb2NhdGlvbixcbiAgICAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlR3JvdXAsXG4gICAgICBza3U6IFwiUHJlbWl1bVwiLFxuICAgICAgYWRtaW5FbmFibGVkOiBmYWxzZSxcbiAgICAgIGdlb1JlcGxpY2F0aW9uTG9jYXRpb25zOiBbeyBsb2NhdGlvbjogXCJ3ZXN0dXNcIiB9XSxcbiAgICAgIHRhZ3M6IHtcbiAgICAgICAgZW52aXJvbm1lbnQ6IFwidGVzdFwiLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vRGlhZyBTZXR0aW5nc1xuICAgIGF6dXJlQ29udGFpbmVyUmVnaXN0cnkuYWRkRGlhZ1NldHRpbmdzKHtcbiAgICAgIG5hbWU6IFwiZGlhZ3NldHRpbmdzXCIsXG4gICAgICBsb2dBbmFseXRpY3NXb3Jrc3BhY2VJZDogbG9nQW5hbHl0aWNzV29ya3NwYWNlLmlkLFxuICAgIH0pO1xuXG4gICAgLy9SQkFDXG4gICAgYXp1cmVDb250YWluZXJSZWdpc3RyeS5hZGRBY2Nlc3MoY2xpZW50Q29uZmlnLm9iamVjdElkLCBcIkNvbnRyaWJ1dG9yXCIpO1xuXG4gICAgLy8gT3V0cHV0cyB0byB1c2UgZm9yIEVuZCB0byBFbmQgVGVzdFxuICAgIGNvbnN0IGNka3RmVGVycmFmb3JtT3V0cHV0UkcgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwicmVzb3VyY2VfZ3JvdXBfbmFtZVwiLFxuICAgICAge1xuICAgICAgICB2YWx1ZTogcmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgfSxcbiAgICApO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0Ukcub3ZlcnJpZGVMb2dpY2FsSWQoXCJyZXNvdXJjZV9ncm91cF9uYW1lXCIpO1xuICB9XG59XG5cbm5ldyBleGFtcGxlQXp1cmVDb250YWluZXJSZWdpc3RyeShhcHAsIFwidGVzdEF6dXJlQ29udGFpbmVyUmVnaXN0cnlcIik7XG5cbmFwcC5zeW50aCgpO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./lib";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./lib"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp1cmUtZGF0YWxha2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2xpYlwiO1xuIl19
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ResourceGroup } from "@cdktf/provider-azurerm/lib/resource-group";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
import { DataLakeFilesystem, DataLakeFilesystemConfig } from "./filesystem";
|
|
4
|
+
import * as sa from "../../azure-storageaccount";
|
|
5
|
+
import { AzureResource } from "../../core-azure";
|
|
6
|
+
export declare class DataLake extends AzureResource {
|
|
7
|
+
readonly props: any;
|
|
8
|
+
resourceGroupName: string;
|
|
9
|
+
resourceGroup: ResourceGroup;
|
|
10
|
+
readonly filesystems: Map<string, DataLakeFilesystem>;
|
|
11
|
+
readonly storageAccount: sa.Account;
|
|
12
|
+
/**
|
|
13
|
+
* Represents an Azure Data Lake storage account, managing the storage and retrieval of data in a scalable, secure manner.
|
|
14
|
+
*
|
|
15
|
+
* This class encapsulates the properties and functionality of an Azure Data Lake, which is built on top of Azure Blob storage
|
|
16
|
+
* with enhanced capabilities to handle big data analytics efficiently. The Data Lake enables batch and real-time data processing
|
|
17
|
+
* and collaboration for analytics purposes. It provides a centralized place to store structured or unstructured data from multiple
|
|
18
|
+
* sources so that it can be processed and analyzed.
|
|
19
|
+
*
|
|
20
|
+
* Properties:
|
|
21
|
+
* - `accountReplicationType`: Specifies the type of data replication for durability and availability. Options include locally redundant storage (LRS),
|
|
22
|
+
* geo-redundant storage (GRS), and read-access geo-redundant storage (RAGRS).
|
|
23
|
+
* - `accountTier`: Defines the performance tier (e.g., Standard, Premium) that affects the type of hardware used for the storage account.
|
|
24
|
+
* - `location`: The Azure region where the storage account is located, influencing where data is stored geographically.
|
|
25
|
+
* - `name`: A unique name for the storage account within Azure.
|
|
26
|
+
* - `resourceGroup`: The resource group under which the storage account is categorized and billed.
|
|
27
|
+
* - `tags`: Key-value pairs for resource categorization and operational management.
|
|
28
|
+
* - `enableHttpsTrafficOnly`: Enforces HTTPS for data transfer, enhancing security by encrypting data in transit.
|
|
29
|
+
* - `identity`: Managed Service Identity configuration for Azure Active Directory authentication management.
|
|
30
|
+
* - `accessTier`: Specifies the data access tier (Hot, Cool) affecting cost and retrieval speeds.
|
|
31
|
+
* - `isHnsEnabled`: Indicates if the Hierarchical Namespace is enabled, required for Azure Data Lake Storage Gen2.
|
|
32
|
+
* - `minTlsVersion`: The minimum version of TLS required for securing connections, enhancing data security.
|
|
33
|
+
* - `publicNetworkAccessEnabled`: Controls whether the storage account is accessible from the public internet.
|
|
34
|
+
* - `accountKind`: Specifies the kind of storage account, which can influence supported features and pricing.
|
|
35
|
+
*
|
|
36
|
+
* @param scope - The scope in which this construct is defined, typically representing the cloud development kit (CDK) stack.
|
|
37
|
+
* @param id - The unique identifier for this construct.
|
|
38
|
+
* @param props - Properties for configuring the Data Lake, including location, name, security settings, etc.
|
|
39
|
+
*/
|
|
40
|
+
constructor(scope: Construct, id: string, props: any);
|
|
41
|
+
/**
|
|
42
|
+
* Creates a new Data Lake Gen2 filesystem within the specified storage account.
|
|
43
|
+
*
|
|
44
|
+
* This method initializes a new filesystem in Azure Data Lake Storage Gen2, allowing for the storage of hierarchical data structures.
|
|
45
|
+
* Each filesystem can contain multiple directories and files, organized in a hierarchical manner. This method ensures that the filesystem
|
|
46
|
+
* name is unique within the storage account to prevent naming conflicts.
|
|
47
|
+
*
|
|
48
|
+
* @param name - The name of the new filesystem to create. This name must be unique within the storage account.
|
|
49
|
+
* @param props - Configuration properties for the new filesystem, including metadata, encryption settings, and more.
|
|
50
|
+
* @returns The newly created DataLakeFilesystem instance.
|
|
51
|
+
* @throws Error if a filesystem with the same name already exists in the storage account.
|
|
52
|
+
*
|
|
53
|
+
* Example usage:
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const filesystemConfig = {
|
|
56
|
+
* properties: { property1: 'value1' }, // Example properties
|
|
57
|
+
* defaultEncryptionScope: 'myEncryptionScope'
|
|
58
|
+
* };
|
|
59
|
+
* const newFilesystem = storageAccount.addDataLakeFilesystem('myNewFilesystem', filesystemConfig);
|
|
60
|
+
* ```
|
|
61
|
+
* This example creates a new filesystem named 'myNewFilesystem' with specified properties and encryption scope.
|
|
62
|
+
*/
|
|
63
|
+
addDataLakeFilesystem(name: string, props: DataLakeFilesystemConfig): DataLakeFilesystem;
|
|
64
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DataLake = void 0;
|
|
4
|
+
const filesystem_1 = require("./filesystem");
|
|
5
|
+
const sa = require("../../azure-storageaccount");
|
|
6
|
+
const core_azure_1 = require("../../core-azure");
|
|
7
|
+
class DataLake extends core_azure_1.AzureResource {
|
|
8
|
+
/**
|
|
9
|
+
* Represents an Azure Data Lake storage account, managing the storage and retrieval of data in a scalable, secure manner.
|
|
10
|
+
*
|
|
11
|
+
* This class encapsulates the properties and functionality of an Azure Data Lake, which is built on top of Azure Blob storage
|
|
12
|
+
* with enhanced capabilities to handle big data analytics efficiently. The Data Lake enables batch and real-time data processing
|
|
13
|
+
* and collaboration for analytics purposes. It provides a centralized place to store structured or unstructured data from multiple
|
|
14
|
+
* sources so that it can be processed and analyzed.
|
|
15
|
+
*
|
|
16
|
+
* Properties:
|
|
17
|
+
* - `accountReplicationType`: Specifies the type of data replication for durability and availability. Options include locally redundant storage (LRS),
|
|
18
|
+
* geo-redundant storage (GRS), and read-access geo-redundant storage (RAGRS).
|
|
19
|
+
* - `accountTier`: Defines the performance tier (e.g., Standard, Premium) that affects the type of hardware used for the storage account.
|
|
20
|
+
* - `location`: The Azure region where the storage account is located, influencing where data is stored geographically.
|
|
21
|
+
* - `name`: A unique name for the storage account within Azure.
|
|
22
|
+
* - `resourceGroup`: The resource group under which the storage account is categorized and billed.
|
|
23
|
+
* - `tags`: Key-value pairs for resource categorization and operational management.
|
|
24
|
+
* - `enableHttpsTrafficOnly`: Enforces HTTPS for data transfer, enhancing security by encrypting data in transit.
|
|
25
|
+
* - `identity`: Managed Service Identity configuration for Azure Active Directory authentication management.
|
|
26
|
+
* - `accessTier`: Specifies the data access tier (Hot, Cool) affecting cost and retrieval speeds.
|
|
27
|
+
* - `isHnsEnabled`: Indicates if the Hierarchical Namespace is enabled, required for Azure Data Lake Storage Gen2.
|
|
28
|
+
* - `minTlsVersion`: The minimum version of TLS required for securing connections, enhancing data security.
|
|
29
|
+
* - `publicNetworkAccessEnabled`: Controls whether the storage account is accessible from the public internet.
|
|
30
|
+
* - `accountKind`: Specifies the kind of storage account, which can influence supported features and pricing.
|
|
31
|
+
*
|
|
32
|
+
* @param scope - The scope in which this construct is defined, typically representing the cloud development kit (CDK) stack.
|
|
33
|
+
* @param id - The unique identifier for this construct.
|
|
34
|
+
* @param props - Properties for configuring the Data Lake, including location, name, security settings, etc.
|
|
35
|
+
*/
|
|
36
|
+
constructor(scope, id, props) {
|
|
37
|
+
super(scope, id);
|
|
38
|
+
this.filesystems = new Map();
|
|
39
|
+
// Default values
|
|
40
|
+
this.props = {
|
|
41
|
+
name: "test42348808",
|
|
42
|
+
location: "eastus",
|
|
43
|
+
...props,
|
|
44
|
+
};
|
|
45
|
+
this.resourceGroup = this.setupResourceGroup(props);
|
|
46
|
+
this.resourceGroupName = this.resourceGroup.name;
|
|
47
|
+
this.storageAccount = new sa.Account(scope, id + "storageAccount", {
|
|
48
|
+
...this.props,
|
|
49
|
+
accountTier: "Standard",
|
|
50
|
+
accountKind: "StorageV2",
|
|
51
|
+
isHnsEnabled: true,
|
|
52
|
+
resourceGroup: this.resourceGroup,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Creates a new Data Lake Gen2 filesystem within the specified storage account.
|
|
57
|
+
*
|
|
58
|
+
* This method initializes a new filesystem in Azure Data Lake Storage Gen2, allowing for the storage of hierarchical data structures.
|
|
59
|
+
* Each filesystem can contain multiple directories and files, organized in a hierarchical manner. This method ensures that the filesystem
|
|
60
|
+
* name is unique within the storage account to prevent naming conflicts.
|
|
61
|
+
*
|
|
62
|
+
* @param name - The name of the new filesystem to create. This name must be unique within the storage account.
|
|
63
|
+
* @param props - Configuration properties for the new filesystem, including metadata, encryption settings, and more.
|
|
64
|
+
* @returns The newly created DataLakeFilesystem instance.
|
|
65
|
+
* @throws Error if a filesystem with the same name already exists in the storage account.
|
|
66
|
+
*
|
|
67
|
+
* Example usage:
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const filesystemConfig = {
|
|
70
|
+
* properties: { property1: 'value1' }, // Example properties
|
|
71
|
+
* defaultEncryptionScope: 'myEncryptionScope'
|
|
72
|
+
* };
|
|
73
|
+
* const newFilesystem = storageAccount.addDataLakeFilesystem('myNewFilesystem', filesystemConfig);
|
|
74
|
+
* ```
|
|
75
|
+
* This example creates a new filesystem named 'myNewFilesystem' with specified properties and encryption scope.
|
|
76
|
+
*/
|
|
77
|
+
addDataLakeFilesystem(name, props) {
|
|
78
|
+
if (this.filesystems.has(name)) {
|
|
79
|
+
throw new Error(`Filesystem '${name}' already exists.`);
|
|
80
|
+
}
|
|
81
|
+
var config = {
|
|
82
|
+
name: name,
|
|
83
|
+
storageAccountId: this.storageAccount.id,
|
|
84
|
+
...props,
|
|
85
|
+
};
|
|
86
|
+
const newFilesystem = new filesystem_1.DataLakeFilesystem(this, name, config);
|
|
87
|
+
this.filesystems.set(name, newFilesystem);
|
|
88
|
+
return newFilesystem;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.DataLake = DataLake;
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxha2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZGF0YWxha2UvbGliL2RhdGFsYWtlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLDZDQUE0RTtBQUM1RSxpREFBaUQ7QUFDakQsaURBQWlEO0FBRWpELE1BQWEsUUFBUyxTQUFRLDBCQUFhO0lBT3pDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0EyQkc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQVU7UUFDbEQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO1FBQ3pELGlCQUFpQjtRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsSUFBSSxFQUFFLGNBQWM7WUFDcEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztRQUVqRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLGdCQUFnQixFQUFFO1lBQ2pFLEdBQUcsSUFBSSxDQUFDLEtBQUs7WUFDYixXQUFXLEVBQUUsVUFBVTtZQUN2QixXQUFXLEVBQUUsV0FBVztZQUN4QixZQUFZLEVBQUUsSUFBSTtZQUNsQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FxQkc7SUFDSSxxQkFBcUIsQ0FDMUIsSUFBWSxFQUNaLEtBQStCO1FBRS9CLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksbUJBQW1CLENBQUMsQ0FBQztTQUN6RDtRQUVELElBQUksTUFBTSxHQUF3QztZQUNoRCxJQUFJLEVBQUUsSUFBSTtZQUNWLGdCQUFnQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUN4QyxHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsTUFBTSxhQUFhLEdBQUcsSUFBSSwrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRWpFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztRQUMxQyxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFqR0QsNEJBaUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCB7IFN0b3JhZ2VEYXRhTGFrZUdlbjJGaWxlc3lzdGVtQ29uZmlnIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9zdG9yYWdlLWRhdGEtbGFrZS1nZW4yLWZpbGVzeXN0ZW1cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBEYXRhTGFrZUZpbGVzeXN0ZW0sIERhdGFMYWtlRmlsZXN5c3RlbUNvbmZpZyB9IGZyb20gXCIuL2ZpbGVzeXN0ZW1cIjtcbmltcG9ydCAqIGFzIHNhIGZyb20gXCIuLi8uLi9henVyZS1zdG9yYWdlYWNjb3VudFwiO1xuaW1wb3J0IHsgQXp1cmVSZXNvdXJjZSB9IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlXCI7XG5cbmV4cG9ydCBjbGFzcyBEYXRhTGFrZSBleHRlbmRzIEF6dXJlUmVzb3VyY2Uge1xuICByZWFkb25seSBwcm9wczogYW55O1xuICBwdWJsaWMgcmVzb3VyY2VHcm91cE5hbWU6IHN0cmluZztcbiAgcHVibGljIHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIHB1YmxpYyByZWFkb25seSBmaWxlc3lzdGVtczogTWFwPHN0cmluZywgRGF0YUxha2VGaWxlc3lzdGVtPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RvcmFnZUFjY291bnQ6IHNhLkFjY291bnQ7XG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGFuIEF6dXJlIERhdGEgTGFrZSBzdG9yYWdlIGFjY291bnQsIG1hbmFnaW5nIHRoZSBzdG9yYWdlIGFuZCByZXRyaWV2YWwgb2YgZGF0YSBpbiBhIHNjYWxhYmxlLCBzZWN1cmUgbWFubmVyLlxuICAgKlxuICAgKiBUaGlzIGNsYXNzIGVuY2Fwc3VsYXRlcyB0aGUgcHJvcGVydGllcyBhbmQgZnVuY3Rpb25hbGl0eSBvZiBhbiBBenVyZSBEYXRhIExha2UsIHdoaWNoIGlzIGJ1aWx0IG9uIHRvcCBvZiBBenVyZSBCbG9iIHN0b3JhZ2VcbiAgICogd2l0aCBlbmhhbmNlZCBjYXBhYmlsaXRpZXMgdG8gaGFuZGxlIGJpZyBkYXRhIGFuYWx5dGljcyBlZmZpY2llbnRseS4gVGhlIERhdGEgTGFrZSBlbmFibGVzIGJhdGNoIGFuZCByZWFsLXRpbWUgZGF0YSBwcm9jZXNzaW5nXG4gICAqIGFuZCBjb2xsYWJvcmF0aW9uIGZvciBhbmFseXRpY3MgcHVycG9zZXMuIEl0IHByb3ZpZGVzIGEgY2VudHJhbGl6ZWQgcGxhY2UgdG8gc3RvcmUgc3RydWN0dXJlZCBvciB1bnN0cnVjdHVyZWQgZGF0YSBmcm9tIG11bHRpcGxlXG4gICAqIHNvdXJjZXMgc28gdGhhdCBpdCBjYW4gYmUgcHJvY2Vzc2VkIGFuZCBhbmFseXplZC5cbiAgICpcbiAgICogUHJvcGVydGllczpcbiAgICogLSBgYWNjb3VudFJlcGxpY2F0aW9uVHlwZWA6IFNwZWNpZmllcyB0aGUgdHlwZSBvZiBkYXRhIHJlcGxpY2F0aW9uIGZvciBkdXJhYmlsaXR5IGFuZCBhdmFpbGFiaWxpdHkuIE9wdGlvbnMgaW5jbHVkZSBsb2NhbGx5IHJlZHVuZGFudCBzdG9yYWdlIChMUlMpLFxuICAgKiAgIGdlby1yZWR1bmRhbnQgc3RvcmFnZSAoR1JTKSwgYW5kIHJlYWQtYWNjZXNzIGdlby1yZWR1bmRhbnQgc3RvcmFnZSAoUkFHUlMpLlxuICAgKiAtIGBhY2NvdW50VGllcmA6IERlZmluZXMgdGhlIHBlcmZvcm1hbmNlIHRpZXIgKGUuZy4sIFN0YW5kYXJkLCBQcmVtaXVtKSB0aGF0IGFmZmVjdHMgdGhlIHR5cGUgb2YgaGFyZHdhcmUgdXNlZCBmb3IgdGhlIHN0b3JhZ2UgYWNjb3VudC5cbiAgICogLSBgbG9jYXRpb25gOiBUaGUgQXp1cmUgcmVnaW9uIHdoZXJlIHRoZSBzdG9yYWdlIGFjY291bnQgaXMgbG9jYXRlZCwgaW5mbHVlbmNpbmcgd2hlcmUgZGF0YSBpcyBzdG9yZWQgZ2VvZ3JhcGhpY2FsbHkuXG4gICAqIC0gYG5hbWVgOiBBIHVuaXF1ZSBuYW1lIGZvciB0aGUgc3RvcmFnZSBhY2NvdW50IHdpdGhpbiBBenVyZS5cbiAgICogLSBgcmVzb3VyY2VHcm91cGA6IFRoZSByZXNvdXJjZSBncm91cCB1bmRlciB3aGljaCB0aGUgc3RvcmFnZSBhY2NvdW50IGlzIGNhdGVnb3JpemVkIGFuZCBiaWxsZWQuXG4gICAqIC0gYHRhZ3NgOiBLZXktdmFsdWUgcGFpcnMgZm9yIHJlc291cmNlIGNhdGVnb3JpemF0aW9uIGFuZCBvcGVyYXRpb25hbCBtYW5hZ2VtZW50LlxuICAgKiAtIGBlbmFibGVIdHRwc1RyYWZmaWNPbmx5YDogRW5mb3JjZXMgSFRUUFMgZm9yIGRhdGEgdHJhbnNmZXIsIGVuaGFuY2luZyBzZWN1cml0eSBieSBlbmNyeXB0aW5nIGRhdGEgaW4gdHJhbnNpdC5cbiAgICogLSBgaWRlbnRpdHlgOiBNYW5hZ2VkIFNlcnZpY2UgSWRlbnRpdHkgY29uZmlndXJhdGlvbiBmb3IgQXp1cmUgQWN0aXZlIERpcmVjdG9yeSBhdXRoZW50aWNhdGlvbiBtYW5hZ2VtZW50LlxuICAgKiAtIGBhY2Nlc3NUaWVyYDogU3BlY2lmaWVzIHRoZSBkYXRhIGFjY2VzcyB0aWVyIChIb3QsIENvb2wpIGFmZmVjdGluZyBjb3N0IGFuZCByZXRyaWV2YWwgc3BlZWRzLlxuICAgKiAtIGBpc0huc0VuYWJsZWRgOiBJbmRpY2F0ZXMgaWYgdGhlIEhpZXJhcmNoaWNhbCBOYW1lc3BhY2UgaXMgZW5hYmxlZCwgcmVxdWlyZWQgZm9yIEF6dXJlIERhdGEgTGFrZSBTdG9yYWdlIEdlbjIuXG4gICAqIC0gYG1pblRsc1ZlcnNpb25gOiBUaGUgbWluaW11bSB2ZXJzaW9uIG9mIFRMUyByZXF1aXJlZCBmb3Igc2VjdXJpbmcgY29ubmVjdGlvbnMsIGVuaGFuY2luZyBkYXRhIHNlY3VyaXR5LlxuICAgKiAtIGBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZGA6IENvbnRyb2xzIHdoZXRoZXIgdGhlIHN0b3JhZ2UgYWNjb3VudCBpcyBhY2Nlc3NpYmxlIGZyb20gdGhlIHB1YmxpYyBpbnRlcm5ldC5cbiAgICogLSBgYWNjb3VudEtpbmRgOiBTcGVjaWZpZXMgdGhlIGtpbmQgb2Ygc3RvcmFnZSBhY2NvdW50LCB3aGljaCBjYW4gaW5mbHVlbmNlIHN1cHBvcnRlZCBmZWF0dXJlcyBhbmQgcHJpY2luZy5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRoaXMgY29uc3RydWN0IGlzIGRlZmluZWQsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIGNsb3VkIGRldmVsb3BtZW50IGtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbnN0cnVjdC5cbiAgICogQHBhcmFtIHByb3BzIC0gUHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIERhdGEgTGFrZSwgaW5jbHVkaW5nIGxvY2F0aW9uLCBuYW1lLCBzZWN1cml0eSBzZXR0aW5ncywgZXRjLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IGFueSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5maWxlc3lzdGVtcyA9IG5ldyBNYXA8c3RyaW5nLCBEYXRhTGFrZUZpbGVzeXN0ZW0+KCk7XG4gICAgLy8gRGVmYXVsdCB2YWx1ZXNcbiAgICB0aGlzLnByb3BzID0ge1xuICAgICAgbmFtZTogXCJ0ZXN0NDIzNDg4MDhcIixcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfTtcblxuICAgIHRoaXMucmVzb3VyY2VHcm91cCA9IHRoaXMuc2V0dXBSZXNvdXJjZUdyb3VwKHByb3BzKTtcbiAgICB0aGlzLnJlc291cmNlR3JvdXBOYW1lID0gdGhpcy5yZXNvdXJjZUdyb3VwLm5hbWU7XG5cbiAgICB0aGlzLnN0b3JhZ2VBY2NvdW50ID0gbmV3IHNhLkFjY291bnQoc2NvcGUsIGlkICsgXCJzdG9yYWdlQWNjb3VudFwiLCB7XG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgYWNjb3VudFRpZXI6IFwiU3RhbmRhcmRcIixcbiAgICAgIGFjY291bnRLaW5kOiBcIlN0b3JhZ2VWMlwiLFxuICAgICAgaXNIbnNFbmFibGVkOiB0cnVlLFxuICAgICAgcmVzb3VyY2VHcm91cDogdGhpcy5yZXNvdXJjZUdyb3VwLFxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IERhdGEgTGFrZSBHZW4yIGZpbGVzeXN0ZW0gd2l0aGluIHRoZSBzcGVjaWZpZWQgc3RvcmFnZSBhY2NvdW50LlxuICAgKlxuICAgKiBUaGlzIG1ldGhvZCBpbml0aWFsaXplcyBhIG5ldyBmaWxlc3lzdGVtIGluIEF6dXJlIERhdGEgTGFrZSBTdG9yYWdlIEdlbjIsIGFsbG93aW5nIGZvciB0aGUgc3RvcmFnZSBvZiBoaWVyYXJjaGljYWwgZGF0YSBzdHJ1Y3R1cmVzLlxuICAgKiBFYWNoIGZpbGVzeXN0ZW0gY2FuIGNvbnRhaW4gbXVsdGlwbGUgZGlyZWN0b3JpZXMgYW5kIGZpbGVzLCBvcmdhbml6ZWQgaW4gYSBoaWVyYXJjaGljYWwgbWFubmVyLiBUaGlzIG1ldGhvZCBlbnN1cmVzIHRoYXQgdGhlIGZpbGVzeXN0ZW1cbiAgICogbmFtZSBpcyB1bmlxdWUgd2l0aGluIHRoZSBzdG9yYWdlIGFjY291bnQgdG8gcHJldmVudCBuYW1pbmcgY29uZmxpY3RzLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBuZXcgZmlsZXN5c3RlbSB0byBjcmVhdGUuIFRoaXMgbmFtZSBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHN0b3JhZ2UgYWNjb3VudC5cbiAgICogQHBhcmFtIHByb3BzIC0gQ29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzIGZvciB0aGUgbmV3IGZpbGVzeXN0ZW0sIGluY2x1ZGluZyBtZXRhZGF0YSwgZW5jcnlwdGlvbiBzZXR0aW5ncywgYW5kIG1vcmUuXG4gICAqIEByZXR1cm5zIFRoZSBuZXdseSBjcmVhdGVkIERhdGFMYWtlRmlsZXN5c3RlbSBpbnN0YW5jZS5cbiAgICogQHRocm93cyBFcnJvciBpZiBhIGZpbGVzeXN0ZW0gd2l0aCB0aGUgc2FtZSBuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBzdG9yYWdlIGFjY291bnQuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgZmlsZXN5c3RlbUNvbmZpZyA9IHtcbiAgICogICBwcm9wZXJ0aWVzOiB7IHByb3BlcnR5MTogJ3ZhbHVlMScgfSwgIC8vIEV4YW1wbGUgcHJvcGVydGllc1xuICAgKiAgIGRlZmF1bHRFbmNyeXB0aW9uU2NvcGU6ICdteUVuY3J5cHRpb25TY29wZSdcbiAgICogfTtcbiAgICogY29uc3QgbmV3RmlsZXN5c3RlbSA9IHN0b3JhZ2VBY2NvdW50LmFkZERhdGFMYWtlRmlsZXN5c3RlbSgnbXlOZXdGaWxlc3lzdGVtJywgZmlsZXN5c3RlbUNvbmZpZyk7XG4gICAqIGBgYFxuICAgKiBUaGlzIGV4YW1wbGUgY3JlYXRlcyBhIG5ldyBmaWxlc3lzdGVtIG5hbWVkICdteU5ld0ZpbGVzeXN0ZW0nIHdpdGggc3BlY2lmaWVkIHByb3BlcnRpZXMgYW5kIGVuY3J5cHRpb24gc2NvcGUuXG4gICAqL1xuICBwdWJsaWMgYWRkRGF0YUxha2VGaWxlc3lzdGVtKFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBwcm9wczogRGF0YUxha2VGaWxlc3lzdGVtQ29uZmlnLFxuICApOiBEYXRhTGFrZUZpbGVzeXN0ZW0ge1xuICAgIGlmICh0aGlzLmZpbGVzeXN0ZW1zLmhhcyhuYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGaWxlc3lzdGVtICcke25hbWV9JyBhbHJlYWR5IGV4aXN0cy5gKTtcbiAgICB9XG5cbiAgICB2YXIgY29uZmlnOiBTdG9yYWdlRGF0YUxha2VHZW4yRmlsZXN5c3RlbUNvbmZpZyA9IHtcbiAgICAgIG5hbWU6IG5hbWUsXG4gICAgICBzdG9yYWdlQWNjb3VudElkOiB0aGlzLnN0b3JhZ2VBY2NvdW50LmlkLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfTtcblxuICAgIGNvbnN0IG5ld0ZpbGVzeXN0ZW0gPSBuZXcgRGF0YUxha2VGaWxlc3lzdGVtKHRoaXMsIG5hbWUsIGNvbmZpZyk7XG5cbiAgICB0aGlzLmZpbGVzeXN0ZW1zLnNldChuYW1lLCBuZXdGaWxlc3lzdGVtKTtcbiAgICByZXR1cm4gbmV3RmlsZXN5c3RlbTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { StorageDataLakeGen2Filesystem, StorageDataLakeGen2FilesystemConfig, StorageDataLakeGen2FilesystemAce } from "@cdktf/provider-azurerm/lib/storage-data-lake-gen2-filesystem";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
import { DataLakePath, DataLakePathConfig } from "./path";
|
|
4
|
+
export interface DataLakeFilesystemConfig {
|
|
5
|
+
readonly group?: string;
|
|
6
|
+
readonly owner?: string;
|
|
7
|
+
readonly properties?: {
|
|
8
|
+
[key: string]: string;
|
|
9
|
+
};
|
|
10
|
+
readonly ace?: StorageDataLakeGen2FilesystemAce[];
|
|
11
|
+
}
|
|
12
|
+
export declare class DataLakeFilesystem extends Construct {
|
|
13
|
+
readonly name: string;
|
|
14
|
+
readonly filesystem: StorageDataLakeGen2Filesystem;
|
|
15
|
+
readonly paths: Map<string, DataLakePath>;
|
|
16
|
+
private storageAccountId;
|
|
17
|
+
/**
|
|
18
|
+
* Represents a filesystem within Azure Data Lake Storage Gen2.
|
|
19
|
+
*
|
|
20
|
+
* This class manages the lifecycle and configuration of a filesystem in Azure Data Lake Gen2, which is used to store directories and files
|
|
21
|
+
* in a hierarchical structure. This class allows for the creation, configuration, and management of access controls and properties associated with a filesystem.
|
|
22
|
+
*
|
|
23
|
+
* @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
24
|
+
* @param id - The unique identifier for this instance of the filesystem.
|
|
25
|
+
* @param props - Configuration properties for the Data Lake Gen2 filesystem. These properties may include:
|
|
26
|
+
* - `name`: The name of the filesystem.
|
|
27
|
+
* - `storageAccountId`: The ID of the Azure Storage account that hosts the filesystem.
|
|
28
|
+
* - `defaultEncryptionScope`: Specifies the default encryption scope for the filesystem.
|
|
29
|
+
* - `properties`: A dictionary of strings representing properties to associate with the filesystem.
|
|
30
|
+
* - `ace`: An array of access control expressions to define permissions within the filesystem.
|
|
31
|
+
*
|
|
32
|
+
* Example usage:
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const dataLakeFilesystem = new StorageDataLakeGen2Filesystem(this, 'myFilesystem', {
|
|
35
|
+
* name: 'mydatafilesystem',
|
|
36
|
+
* storageAccountId: 'storage_account_id',
|
|
37
|
+
* defaultEncryptionScope: 'my-encryption-scope',
|
|
38
|
+
* properties: {
|
|
39
|
+
* property1: 'value1',
|
|
40
|
+
* property2: 'value2'
|
|
41
|
+
* }
|
|
42
|
+
* });
|
|
43
|
+
* ```
|
|
44
|
+
* This class initializes a filesystem with specified configurations such as name, storage account ID, and optional properties like encryption scope and custom properties.
|
|
45
|
+
*/
|
|
46
|
+
constructor(scope: Construct, id: string, props: StorageDataLakeGen2FilesystemConfig);
|
|
47
|
+
/**
|
|
48
|
+
* Adds a new directory or file path to the existing Data Lake Gen2 filesystem.
|
|
49
|
+
*
|
|
50
|
+
* This method allows for the creation of a new path, which can be either a directory or a file, within the defined filesystem in Azure Data Lake Gen2.
|
|
51
|
+
* Each path is configured with optional properties and access controls, making it possible to finely tune the permissions and settings for data stored at this path.
|
|
52
|
+
*
|
|
53
|
+
* @param name - The name of the new path to create within the filesystem. This name must be unique within the filesystem.
|
|
54
|
+
* @param props - Configuration properties for the new path, including access controls, ownership details, and other relevant settings.
|
|
55
|
+
* @returns The newly created DataLakePath instance representing the path within the filesystem.
|
|
56
|
+
* @throws Error if a path with the same name already exists in the filesystem.
|
|
57
|
+
*
|
|
58
|
+
* Example usage:
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const pathConfig = {
|
|
61
|
+
* group: 'dataGroup',
|
|
62
|
+
* owner: 'dataOwner',
|
|
63
|
+
* ace: [{ id: 'ace1', type: 'user', permissions: 'rwx' }]
|
|
64
|
+
* };
|
|
65
|
+
* const newPath = dataLakeFilesystem.addDataLakePath('newDataPath', pathConfig);
|
|
66
|
+
* ```
|
|
67
|
+
* This example demonstrates adding a new path 'newDataPath' to the filesystem with specified group, owner, and access control entries.
|
|
68
|
+
*/
|
|
69
|
+
addDataLakePath(name: string, props: DataLakePathConfig): DataLakePath;
|
|
70
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DataLakeFilesystem = void 0;
|
|
4
|
+
const storage_data_lake_gen2_filesystem_1 = require("@cdktf/provider-azurerm/lib/storage-data-lake-gen2-filesystem");
|
|
5
|
+
const constructs_1 = require("constructs");
|
|
6
|
+
const path_1 = require("./path");
|
|
7
|
+
class DataLakeFilesystem extends constructs_1.Construct {
|
|
8
|
+
/**
|
|
9
|
+
* Represents a filesystem within Azure Data Lake Storage Gen2.
|
|
10
|
+
*
|
|
11
|
+
* This class manages the lifecycle and configuration of a filesystem in Azure Data Lake Gen2, which is used to store directories and files
|
|
12
|
+
* in a hierarchical structure. This class allows for the creation, configuration, and management of access controls and properties associated with a filesystem.
|
|
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 filesystem.
|
|
16
|
+
* @param props - Configuration properties for the Data Lake Gen2 filesystem. These properties may include:
|
|
17
|
+
* - `name`: The name of the filesystem.
|
|
18
|
+
* - `storageAccountId`: The ID of the Azure Storage account that hosts the filesystem.
|
|
19
|
+
* - `defaultEncryptionScope`: Specifies the default encryption scope for the filesystem.
|
|
20
|
+
* - `properties`: A dictionary of strings representing properties to associate with the filesystem.
|
|
21
|
+
* - `ace`: An array of access control expressions to define permissions within the filesystem.
|
|
22
|
+
*
|
|
23
|
+
* Example usage:
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const dataLakeFilesystem = new StorageDataLakeGen2Filesystem(this, 'myFilesystem', {
|
|
26
|
+
* name: 'mydatafilesystem',
|
|
27
|
+
* storageAccountId: 'storage_account_id',
|
|
28
|
+
* defaultEncryptionScope: 'my-encryption-scope',
|
|
29
|
+
* properties: {
|
|
30
|
+
* property1: 'value1',
|
|
31
|
+
* property2: 'value2'
|
|
32
|
+
* }
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
* This class initializes a filesystem with specified configurations such as name, storage account ID, and optional properties like encryption scope and custom properties.
|
|
36
|
+
*/
|
|
37
|
+
constructor(scope, id, props) {
|
|
38
|
+
super(scope, id);
|
|
39
|
+
this.name = id;
|
|
40
|
+
this.paths = new Map();
|
|
41
|
+
this.storageAccountId = props.storageAccountId;
|
|
42
|
+
this.filesystem = new storage_data_lake_gen2_filesystem_1.StorageDataLakeGen2Filesystem(this, id, props);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Adds a new directory or file path to the existing Data Lake Gen2 filesystem.
|
|
46
|
+
*
|
|
47
|
+
* This method allows for the creation of a new path, which can be either a directory or a file, within the defined filesystem in Azure Data Lake Gen2.
|
|
48
|
+
* Each path is configured with optional properties and access controls, making it possible to finely tune the permissions and settings for data stored at this path.
|
|
49
|
+
*
|
|
50
|
+
* @param name - The name of the new path to create within the filesystem. This name must be unique within the filesystem.
|
|
51
|
+
* @param props - Configuration properties for the new path, including access controls, ownership details, and other relevant settings.
|
|
52
|
+
* @returns The newly created DataLakePath instance representing the path within the filesystem.
|
|
53
|
+
* @throws Error if a path with the same name already exists in the filesystem.
|
|
54
|
+
*
|
|
55
|
+
* Example usage:
|
|
56
|
+
* ```typescript
|
|
57
|
+
* const pathConfig = {
|
|
58
|
+
* group: 'dataGroup',
|
|
59
|
+
* owner: 'dataOwner',
|
|
60
|
+
* ace: [{ id: 'ace1', type: 'user', permissions: 'rwx' }]
|
|
61
|
+
* };
|
|
62
|
+
* const newPath = dataLakeFilesystem.addDataLakePath('newDataPath', pathConfig);
|
|
63
|
+
* ```
|
|
64
|
+
* This example demonstrates adding a new path 'newDataPath' to the filesystem with specified group, owner, and access control entries.
|
|
65
|
+
*/
|
|
66
|
+
addDataLakePath(name, props) {
|
|
67
|
+
if (this.paths.has(name)) {
|
|
68
|
+
throw new Error(`Filesystem '${name}' already exists.`);
|
|
69
|
+
}
|
|
70
|
+
var config = {
|
|
71
|
+
filesystemName: this.filesystem.name,
|
|
72
|
+
storageAccountId: this.storageAccountId,
|
|
73
|
+
path: name,
|
|
74
|
+
resource: "directory",
|
|
75
|
+
...props,
|
|
76
|
+
};
|
|
77
|
+
const newPath = new path_1.DataLakePath(this, name, config);
|
|
78
|
+
this.paths.set(name, newPath);
|
|
79
|
+
return newPath;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.DataLakeFilesystem = DataLakeFilesystem;
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXN5c3RlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1kYXRhbGFrZS9saWIvZmlsZXN5c3RlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxSEFJdUU7QUFFdkUsMkNBQXVDO0FBQ3ZDLGlDQUEwRDtBQVMxRCxNQUFhLGtCQUFtQixTQUFRLHNCQUFTO0lBTy9DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0gsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1YsS0FBMEM7UUFFMUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQXdCLENBQUM7UUFDN0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksaUVBQTZCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXFCRztJQUNJLGVBQWUsQ0FDcEIsSUFBWSxFQUNaLEtBQXlCO1FBRXpCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksbUJBQW1CLENBQUMsQ0FBQztTQUN6RDtRQUVELElBQUksTUFBTSxHQUFrQztZQUMxQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1lBQ3BDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMsSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsV0FBVztZQUNyQixHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsTUFBTSxPQUFPLEdBQUcsSUFBSSxtQkFBWSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQTNGRCxnREEyRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBTdG9yYWdlRGF0YUxha2VHZW4yRmlsZXN5c3RlbSxcbiAgU3RvcmFnZURhdGFMYWtlR2VuMkZpbGVzeXN0ZW1Db25maWcsXG4gIFN0b3JhZ2VEYXRhTGFrZUdlbjJGaWxlc3lzdGVtQWNlLFxufSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3N0b3JhZ2UtZGF0YS1sYWtlLWdlbjItZmlsZXN5c3RlbVwiO1xuaW1wb3J0IHsgU3RvcmFnZURhdGFMYWtlR2VuMlBhdGhDb25maWcgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3N0b3JhZ2UtZGF0YS1sYWtlLWdlbjItcGF0aFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IERhdGFMYWtlUGF0aCwgRGF0YUxha2VQYXRoQ29uZmlnIH0gZnJvbSBcIi4vcGF0aFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFMYWtlRmlsZXN5c3RlbUNvbmZpZyB7XG4gIHJlYWRvbmx5IGdyb3VwPzogc3RyaW5nO1xuICByZWFkb25seSBvd25lcj86IHN0cmluZztcbiAgcmVhZG9ubHkgcHJvcGVydGllcz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHJlYWRvbmx5IGFjZT86IFN0b3JhZ2VEYXRhTGFrZUdlbjJGaWxlc3lzdGVtQWNlW107XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhTGFrZUZpbGVzeXN0ZW0gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgZmlsZXN5c3RlbTogU3RvcmFnZURhdGFMYWtlR2VuMkZpbGVzeXN0ZW07XG4gIHB1YmxpYyByZWFkb25seSBwYXRoczogTWFwPHN0cmluZywgRGF0YUxha2VQYXRoPjtcblxuICBwcml2YXRlIHN0b3JhZ2VBY2NvdW50SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogUmVwcmVzZW50cyBhIGZpbGVzeXN0ZW0gd2l0aGluIEF6dXJlIERhdGEgTGFrZSBTdG9yYWdlIEdlbjIuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgbWFuYWdlcyB0aGUgbGlmZWN5Y2xlIGFuZCBjb25maWd1cmF0aW9uIG9mIGEgZmlsZXN5c3RlbSBpbiBBenVyZSBEYXRhIExha2UgR2VuMiwgd2hpY2ggaXMgdXNlZCB0byBzdG9yZSBkaXJlY3RvcmllcyBhbmQgZmlsZXNcbiAgICogaW4gYSBoaWVyYXJjaGljYWwgc3RydWN0dXJlLiBUaGlzIGNsYXNzIGFsbG93cyBmb3IgdGhlIGNyZWF0aW9uLCBjb25maWd1cmF0aW9uLCBhbmQgbWFuYWdlbWVudCBvZiBhY2Nlc3MgY29udHJvbHMgYW5kIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIGEgZmlsZXN5c3RlbS5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdHlwaWNhbGx5IHJlcHJlc2VudGluZyB0aGUgQ2xvdWQgRGV2ZWxvcG1lbnQgS2l0IChDREspIHN0YWNrLlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgaW5zdGFuY2Ugb2YgdGhlIGZpbGVzeXN0ZW0uXG4gICAqIEBwYXJhbSBwcm9wcyAtIENvbmZpZ3VyYXRpb24gcHJvcGVydGllcyBmb3IgdGhlIERhdGEgTGFrZSBHZW4yIGZpbGVzeXN0ZW0uIFRoZXNlIHByb3BlcnRpZXMgbWF5IGluY2x1ZGU6XG4gICAqICAgICAgICAgICAgICAgIC0gYG5hbWVgOiBUaGUgbmFtZSBvZiB0aGUgZmlsZXN5c3RlbS5cbiAgICogICAgICAgICAgICAgICAgLSBgc3RvcmFnZUFjY291bnRJZGA6IFRoZSBJRCBvZiB0aGUgQXp1cmUgU3RvcmFnZSBhY2NvdW50IHRoYXQgaG9zdHMgdGhlIGZpbGVzeXN0ZW0uXG4gICAqICAgICAgICAgICAgICAgIC0gYGRlZmF1bHRFbmNyeXB0aW9uU2NvcGVgOiBTcGVjaWZpZXMgdGhlIGRlZmF1bHQgZW5jcnlwdGlvbiBzY29wZSBmb3IgdGhlIGZpbGVzeXN0ZW0uXG4gICAqICAgICAgICAgICAgICAgIC0gYHByb3BlcnRpZXNgOiBBIGRpY3Rpb25hcnkgb2Ygc3RyaW5ncyByZXByZXNlbnRpbmcgcHJvcGVydGllcyB0byBhc3NvY2lhdGUgd2l0aCB0aGUgZmlsZXN5c3RlbS5cbiAgICogICAgICAgICAgICAgICAgLSBgYWNlYDogQW4gYXJyYXkgb2YgYWNjZXNzIGNvbnRyb2wgZXhwcmVzc2lvbnMgdG8gZGVmaW5lIHBlcm1pc3Npb25zIHdpdGhpbiB0aGUgZmlsZXN5c3RlbS5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBjb25zdCBkYXRhTGFrZUZpbGVzeXN0ZW0gPSBuZXcgU3RvcmFnZURhdGFMYWtlR2VuMkZpbGVzeXN0ZW0odGhpcywgJ215RmlsZXN5c3RlbScsIHtcbiAgICogICBuYW1lOiAnbXlkYXRhZmlsZXN5c3RlbScsXG4gICAqICAgc3RvcmFnZUFjY291bnRJZDogJ3N0b3JhZ2VfYWNjb3VudF9pZCcsXG4gICAqICAgZGVmYXVsdEVuY3J5cHRpb25TY29wZTogJ215LWVuY3J5cHRpb24tc2NvcGUnLFxuICAgKiAgIHByb3BlcnRpZXM6IHtcbiAgICogICAgIHByb3BlcnR5MTogJ3ZhbHVlMScsXG4gICAqICAgICBwcm9wZXJ0eTI6ICd2YWx1ZTInXG4gICAqICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqIFRoaXMgY2xhc3MgaW5pdGlhbGl6ZXMgYSBmaWxlc3lzdGVtIHdpdGggc3BlY2lmaWVkIGNvbmZpZ3VyYXRpb25zIHN1Y2ggYXMgbmFtZSwgc3RvcmFnZSBhY2NvdW50IElELCBhbmQgb3B0aW9uYWwgcHJvcGVydGllcyBsaWtlIGVuY3J5cHRpb24gc2NvcGUgYW5kIGN1c3RvbSBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBTdG9yYWdlRGF0YUxha2VHZW4yRmlsZXN5c3RlbUNvbmZpZyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLm5hbWUgPSBpZDtcbiAgICB0aGlzLnBhdGhzID0gbmV3IE1hcDxzdHJpbmcsIERhdGFMYWtlUGF0aD4oKTtcbiAgICB0aGlzLnN0b3JhZ2VBY2NvdW50SWQgPSBwcm9wcy5zdG9yYWdlQWNjb3VudElkO1xuICAgIHRoaXMuZmlsZXN5c3RlbSA9IG5ldyBTdG9yYWdlRGF0YUxha2VHZW4yRmlsZXN5c3RlbSh0aGlzLCBpZCwgcHJvcHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBuZXcgZGlyZWN0b3J5IG9yIGZpbGUgcGF0aCB0byB0aGUgZXhpc3RpbmcgRGF0YSBMYWtlIEdlbjIgZmlsZXN5c3RlbS5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgYWxsb3dzIGZvciB0aGUgY3JlYXRpb24gb2YgYSBuZXcgcGF0aCwgd2hpY2ggY2FuIGJlIGVpdGhlciBhIGRpcmVjdG9yeSBvciBhIGZpbGUsIHdpdGhpbiB0aGUgZGVmaW5lZCBmaWxlc3lzdGVtIGluIEF6dXJlIERhdGEgTGFrZSBHZW4yLlxuICAgKiBFYWNoIHBhdGggaXMgY29uZmlndXJlZCB3aXRoIG9wdGlvbmFsIHByb3BlcnRpZXMgYW5kIGFjY2VzcyBjb250cm9scywgbWFraW5nIGl0IHBvc3NpYmxlIHRvIGZpbmVseSB0dW5lIHRoZSBwZXJtaXNzaW9ucyBhbmQgc2V0dGluZ3MgZm9yIGRhdGEgc3RvcmVkIGF0IHRoaXMgcGF0aC5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbmV3IHBhdGggdG8gY3JlYXRlIHdpdGhpbiB0aGUgZmlsZXN5c3RlbS4gVGhpcyBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZmlsZXN5c3RlbS5cbiAgICogQHBhcmFtIHByb3BzIC0gQ29uZmlndXJhdGlvbiBwcm9wZXJ0aWVzIGZvciB0aGUgbmV3IHBhdGgsIGluY2x1ZGluZyBhY2Nlc3MgY29udHJvbHMsIG93bmVyc2hpcCBkZXRhaWxzLCBhbmQgb3RoZXIgcmVsZXZhbnQgc2V0dGluZ3MuXG4gICAqIEByZXR1cm5zIFRoZSBuZXdseSBjcmVhdGVkIERhdGFMYWtlUGF0aCBpbnN0YW5jZSByZXByZXNlbnRpbmcgdGhlIHBhdGggd2l0aGluIHRoZSBmaWxlc3lzdGVtLlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIGEgcGF0aCB3aXRoIHRoZSBzYW1lIG5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGZpbGVzeXN0ZW0uXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgcGF0aENvbmZpZyA9IHtcbiAgICogICBncm91cDogJ2RhdGFHcm91cCcsXG4gICAqICAgb3duZXI6ICdkYXRhT3duZXInLFxuICAgKiAgIGFjZTogW3sgaWQ6ICdhY2UxJywgdHlwZTogJ3VzZXInLCBwZXJtaXNzaW9uczogJ3J3eCcgfV1cbiAgICogfTtcbiAgICogY29uc3QgbmV3UGF0aCA9IGRhdGFMYWtlRmlsZXN5c3RlbS5hZGREYXRhTGFrZVBhdGgoJ25ld0RhdGFQYXRoJywgcGF0aENvbmZpZyk7XG4gICAqIGBgYFxuICAgKiBUaGlzIGV4YW1wbGUgZGVtb25zdHJhdGVzIGFkZGluZyBhIG5ldyBwYXRoICduZXdEYXRhUGF0aCcgdG8gdGhlIGZpbGVzeXN0ZW0gd2l0aCBzcGVjaWZpZWQgZ3JvdXAsIG93bmVyLCBhbmQgYWNjZXNzIGNvbnRyb2wgZW50cmllcy5cbiAgICovXG4gIHB1YmxpYyBhZGREYXRhTGFrZVBhdGgoXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIHByb3BzOiBEYXRhTGFrZVBhdGhDb25maWcsXG4gICk6IERhdGFMYWtlUGF0aCB7XG4gICAgaWYgKHRoaXMucGF0aHMuaGFzKG5hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZpbGVzeXN0ZW0gJyR7bmFtZX0nIGFscmVhZHkgZXhpc3RzLmApO1xuICAgIH1cblxuICAgIHZhciBjb25maWc6IFN0b3JhZ2VEYXRhTGFrZUdlbjJQYXRoQ29uZmlnID0ge1xuICAgICAgZmlsZXN5c3RlbU5hbWU6IHRoaXMuZmlsZXN5c3RlbS5uYW1lLFxuICAgICAgc3RvcmFnZUFjY291bnRJZDogdGhpcy5zdG9yYWdlQWNjb3VudElkLFxuICAgICAgcGF0aDogbmFtZSxcbiAgICAgIHJlc291cmNlOiBcImRpcmVjdG9yeVwiLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfTtcblxuICAgIGNvbnN0IG5ld1BhdGggPSBuZXcgRGF0YUxha2VQYXRoKHRoaXMsIG5hbWUsIGNvbmZpZyk7XG5cbiAgICB0aGlzLnBhdGhzLnNldChuYW1lLCBuZXdQYXRoKTtcbiAgICByZXR1cm4gbmV3UGF0aDtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./filesystem"), exports);
|
|
18
|
+
__exportStar(require("./path"), exports);
|
|
19
|
+
__exportStar(require("./datalake"), exports);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZGF0YWxha2UvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQ0FBNkI7QUFDN0IseUNBQXVCO0FBQ3ZCLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2ZpbGVzeXN0ZW1cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3BhdGhcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2RhdGFsYWtlXCI7XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { StorageDataLakeGen2Path, StorageDataLakeGen2PathConfig, StorageDataLakeGen2PathAce } from "@cdktf/provider-azurerm/lib/storage-data-lake-gen2-path";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
export interface DataLakePathConfig {
|
|
4
|
+
readonly group?: string;
|
|
5
|
+
readonly owner?: string;
|
|
6
|
+
readonly ace?: StorageDataLakeGen2PathAce[];
|
|
7
|
+
}
|
|
8
|
+
export declare class DataLakePath extends Construct {
|
|
9
|
+
readonly name: string;
|
|
10
|
+
readonly filesystem: StorageDataLakeGen2Path;
|
|
11
|
+
/**
|
|
12
|
+
* Manages a specific path within an Azure Data Lake Storage Gen2 filesystem.
|
|
13
|
+
*
|
|
14
|
+
* This class provides functionality to configure and manage a data path within a Data Lake Gen2 filesystem,
|
|
15
|
+
* such as directories and files, with access control settings. It is used to create and manage the structure
|
|
16
|
+
* and security settings of data stored in Azure Data Lake Storage Gen2.
|
|
17
|
+
*
|
|
18
|
+
* @param scope - The scope in which to define this construct, typically representing the Cloud Development Kit (CDK) stack.
|
|
19
|
+
* @param id - The unique identifier for this instance of the Data Lake path. Typically, this is the name of the path.
|
|
20
|
+
* @param props - Configuration properties for the Data Lake Gen2 path. These properties may include:
|
|
21
|
+
* - `filesystemName`: The name of the filesystem within which this path is defined.
|
|
22
|
+
* - `path`: The specific path within the filesystem. This could represent a file or a directory.
|
|
23
|
+
* - `storageAccountId`: The ID of the Azure Storage account that hosts the filesystem.
|
|
24
|
+
* - `ace`: An array of access control expressions to define permissions for the path.
|
|
25
|
+
* - `owner`: The owner of the path for access control purposes.
|
|
26
|
+
* - `group`: The owning group for the path for access control purposes.
|
|
27
|
+
* - `resource`: Type of the resource, typically a file or directory.
|
|
28
|
+
*
|
|
29
|
+
* Example usage:
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const dataLakePath = new DataLakePath(this, 'myDataPath', {
|
|
32
|
+
* filesystemName: 'myfilesystem',
|
|
33
|
+
* path: 'path/to/directory',
|
|
34
|
+
* storageAccountId: 'storage_account_id',
|
|
35
|
+
* owner: 'owner_id',
|
|
36
|
+
* group: 'group_id',
|
|
37
|
+
* ace: [{
|
|
38
|
+
* id: 'user_id',
|
|
39
|
+
* type: 'user',
|
|
40
|
+
* permissions: 'rwx',
|
|
41
|
+
* }],
|
|
42
|
+
* resource: 'directory'
|
|
43
|
+
* });
|
|
44
|
+
* ```
|
|
45
|
+
* This setup creates and manages a directory or a file path within a specified Data Lake Gen2 filesystem,
|
|
46
|
+
* applying the necessary permissions and access controls as configured.
|
|
47
|
+
*/
|
|
48
|
+
constructor(scope: Construct, id: string, props: StorageDataLakeGen2PathConfig);
|
|
49
|
+
}
|