@microsoft/terraform-cdk-constructs 0.0.3-pre.10 → 0.0.3-pre.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +858 -681
- package/API.md +499 -405
- package/README.md +4 -5
- package/docs/testing.md +39 -137
- package/lib/azure-actiongroup/lib/actiongroup.d.ts +1 -1
- package/lib/azure-actiongroup/lib/actiongroup.js +4 -4
- package/lib/azure-actiongroup/model/action-group-props.d.ts +3 -2
- package/lib/azure-actiongroup/model/action-group-props.js +1 -1
- package/lib/azure-actiongroup/test/AzureActionGroup.integ.js +66 -0
- package/lib/azure-actiongroup/test/AzureActionGroup.spec.js +5 -33
- package/lib/azure-applicationgateway/lib/gateway.d.ts +5 -3
- package/lib/azure-applicationgateway/lib/gateway.js +14 -7
- package/lib/azure-applicationgateway/test/AzureApplicationGateway.integ.d.ts +1 -0
- package/lib/azure-applicationgateway/test/AzureApplicationGateway.integ.js +272 -0
- package/lib/azure-applicationgateway/test/AzureApplicationGateway.spec.js +3 -35
- package/lib/azure-applicationinsights/lib/appinsights.d.ts +4 -3
- package/lib/azure-applicationinsights/lib/appinsights.js +6 -6
- package/lib/azure-applicationinsights/test/AzureAppInsights.integ.d.ts +1 -0
- package/lib/azure-applicationinsights/test/AzureAppInsights.integ.js +101 -0
- package/lib/azure-applicationinsights/test/AzureAppInsights.spec.js +4 -27
- package/lib/azure-containerregistry/lib/registry.d.ts +4 -3
- package/lib/azure-containerregistry/lib/registry.js +5 -5
- package/lib/azure-containerregistry/test/AzureContainerRegistry.integ.d.ts +1 -0
- package/lib/azure-containerregistry/test/AzureContainerRegistry.integ.js +68 -0
- package/lib/azure-containerregistry/test/AzureContainerRegistry.spec.js +4 -23
- package/lib/azure-datalake/lib/datalake.d.ts +1 -0
- package/lib/azure-datalake/lib/datalake.js +2 -1
- package/lib/azure-datalake/test/AzureDatalake.spec.d.ts +1 -0
- package/lib/azure-datalake/test/AzureDatalake.spec.js +32 -0
- package/lib/azure-datalake/test/AzureStorageAccount.integ.d.ts +1 -0
- package/lib/azure-datalake/test/AzureStorageAccount.integ.js +60 -0
- package/lib/azure-eventhub/lib/authorization.js +1 -1
- package/lib/azure-eventhub/lib/consumer.js +1 -1
- package/lib/azure-eventhub/lib/{cluster.d.ts → eventhubcluster.d.ts} +11 -7
- package/lib/azure-eventhub/lib/eventhubcluster.js +64 -0
- package/lib/azure-eventhub/lib/index.d.ts +1 -1
- package/lib/azure-eventhub/lib/index.js +2 -2
- package/lib/azure-eventhub/lib/instance.d.ts +1 -0
- package/lib/azure-eventhub/lib/instance.js +5 -4
- package/lib/azure-eventhub/lib/kusto-connection.js +1 -1
- package/lib/azure-eventhub/lib/namespace.d.ts +7 -6
- package/lib/azure-eventhub/lib/namespace.js +24 -26
- package/lib/azure-eventhub/test/AzureEventhub.integ.d.ts +1 -0
- package/lib/azure-eventhub/test/AzureEventhub.integ.js +72 -0
- package/lib/azure-eventhub/test/AzureEventhub.spec.js +4 -27
- package/lib/azure-functionapp/lib/functionapplinux.js +1 -1
- package/lib/azure-functionapp/test/AzureLinuxFunctionApp.integ.d.ts +1 -0
- package/lib/azure-functionapp/test/AzureLinuxFunctionApp.integ.js +117 -0
- package/lib/azure-functionapp/test/AzureLinuxFunctionApp.spec.js +4 -21
- package/lib/azure-keyvault/lib/certificate.js +2 -2
- package/lib/azure-keyvault/lib/key.js +1 -1
- package/lib/azure-keyvault/lib/policy.js +1 -1
- package/lib/azure-keyvault/lib/secret.js +1 -1
- package/lib/azure-keyvault/lib/vault.d.ts +3 -2
- package/lib/azure-keyvault/lib/vault.js +4 -4
- package/lib/azure-keyvault/test/AzureKeyVault.integ.d.ts +1 -0
- package/lib/azure-keyvault/test/AzureKeyVault.integ.js +119 -0
- package/lib/azure-keyvault/test/AzureKeyVault.spec.js +4 -35
- package/lib/azure-kubernetes/lib/cluster.js +1 -1
- package/lib/azure-kubernetes/test/AzureKubernetesCluster.integ.d.ts +1 -0
- package/lib/azure-kubernetes/test/AzureKubernetesCluster.integ.js +75 -0
- package/lib/azure-kubernetes/test/AzureKubernetesCluster.spec.js +4 -21
- package/lib/azure-kusto/lib/cluster.d.ts +9 -5
- package/lib/azure-kusto/lib/cluster.js +66 -42
- package/lib/azure-kusto/lib/compute-specification.js +1 -1
- package/lib/azure-kusto/lib/database.d.ts +7 -8
- package/lib/azure-kusto/lib/database.js +23 -25
- package/lib/azure-kusto/test/AzureKusto.integ.d.ts +1 -0
- package/lib/azure-kusto/test/AzureKusto.integ.js +74 -0
- package/lib/azure-kusto/test/AzureKusto.spec.js +3 -22
- package/lib/azure-loganalytics/lib/workspace.d.ts +6 -3
- package/lib/azure-loganalytics/lib/workspace.js +7 -6
- package/lib/azure-loganalytics/test/AzureLogAnalytics.integ.d.ts +1 -0
- package/lib/azure-loganalytics/test/AzureLogAnalytics.integ.js +117 -0
- package/lib/azure-loganalytics/test/AzureLogAnalytics.spec.js +4 -23
- package/lib/azure-metricalert/lib/metric-alert.js +1 -1
- package/lib/azure-metricalert/test/AzureMetricAlert.integ.d.ts +1 -0
- package/lib/azure-metricalert/test/AzureMetricAlert.integ.js +85 -0
- package/lib/azure-metricalert/test/AzureMetricAlert.spec.js +4 -21
- package/lib/azure-networksecuritygroup/lib/preconfigured-rules.js +1 -1
- package/lib/azure-networksecuritygroup/lib/securitygroup.d.ts +4 -3
- package/lib/azure-networksecuritygroup/lib/securitygroup.js +7 -7
- package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.integ.d.ts +1 -0
- package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.integ.js +85 -0
- package/lib/azure-networksecuritygroup/test/AzureNetworkSecurityGroup.spec.js +4 -23
- package/lib/azure-queryrulealert/lib/query-rule-alert.js +1 -1
- package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.integ.d.ts +1 -0
- package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.integ.js +63 -0
- package/lib/azure-queryrulealert/test/AzureQueryRuleAlert.spec.js +4 -21
- package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
- package/lib/azure-resourcegroup/test/AzureResourceGroup.integ.d.ts +1 -0
- package/lib/azure-resourcegroup/test/AzureResourceGroup.integ.js +41 -0
- package/lib/azure-resourcegroup/test/AzureResourceGroup.spec.js +4 -17
- package/lib/azure-storageaccount/lib/account.d.ts +5 -0
- package/lib/azure-storageaccount/lib/account.js +3 -2
- package/lib/azure-storageaccount/lib/container.js +2 -2
- package/lib/azure-storageaccount/lib/fileshare.js +2 -2
- package/lib/azure-storageaccount/lib/queue.js +1 -1
- package/lib/azure-storageaccount/lib/table.js +1 -1
- package/lib/azure-storageaccount/test/AzureStorageAccount.integ.d.ts +1 -0
- package/lib/azure-storageaccount/test/AzureStorageAccount.integ.js +84 -0
- package/lib/azure-storageaccount/test/AzureStorageAccount.spec.js +4 -17
- package/lib/azure-virtualmachine/lib/image-references.js +2 -2
- package/lib/azure-virtualmachine/lib/vm.d.ts +29 -6
- package/lib/azure-virtualmachine/lib/vm.js +17 -15
- package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.integ.d.ts +1 -0
- package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.integ.js +109 -0
- package/lib/azure-virtualmachine/test/AzureLinuxVirtualMachine.spec.js +5 -25
- package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.integ.d.ts +1 -0
- package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.integ.js +105 -0
- package/lib/azure-virtualmachine/test/AzureWindowsVirtualMachine.spec.js +4 -23
- package/lib/azure-virtualmachinescaleset/lib/cluster.d.ts +28 -6
- package/lib/azure-virtualmachinescaleset/lib/cluster.js +13 -11
- package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.integ.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.integ.js +113 -0
- package/lib/azure-virtualmachinescaleset/test/AzureLinuxVirtualMachineScaleSet.spec.js +5 -25
- package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.integ.d.ts +1 -0
- package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.integ.js +109 -0
- package/lib/azure-virtualmachinescaleset/test/AzureWindowsVirtualMachineScaleSet.spec.js +4 -23
- package/lib/azure-virtualnetwork/lib/network.d.ts +4 -3
- package/lib/azure-virtualnetwork/lib/network.js +7 -6
- package/lib/azure-virtualnetwork/lib/peering.js +1 -1
- package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.integ.d.ts +1 -0
- package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.integ.js +92 -0
- package/lib/azure-virtualnetwork/test/AzureVirtualNetwork.spec.js +5 -25
- package/lib/core-azure/lib/diagsettings.d.ts +3 -2
- package/lib/core-azure/lib/diagsettings.js +15 -21
- package/lib/core-azure/lib/rbac.js +1 -1
- package/lib/core-azure/lib/resource.js +6 -4
- package/lib/core-azure/test/AzureResource.integ.d.ts +1 -0
- package/lib/core-azure/test/AzureResource.integ.js +75 -0
- package/lib/testing/index.d.ts +34 -0
- package/lib/testing/index.js +235 -2
- package/package.json +32 -11
- package/cdktf.out/manifest.json +0 -13
- package/cdktf.out/stacks/testAzureActionGroup/cdk.tf.json +0 -111
- package/cdktf.out/stacks/testAzureApplicationGateway/cdk.tf.json +0 -588
- package/cdktf.out/stacks/testAzureApplicationInsights/cdk.tf.json +0 -245
- package/cdktf.out/stacks/testAzureContainerRegistry/cdk.tf.json +0 -179
- package/cdktf.out/stacks/testAzureEventhub/cdk.tf.json +0 -236
- package/cdktf.out/stacks/testAzureKeyVault/cdk.tf.json +0 -436
- package/cdktf.out/stacks/testAzureKubernetesCluster/cdk.tf.json +0 -152
- package/cdktf.out/stacks/testAzureKusto/cdk.tf.json +0 -209
- package/cdktf.out/stacks/testAzureLinuxFunctionApp/cdk.tf.json +0 -439
- package/cdktf.out/stacks/testAzureLinuxVirtualMachineExample/cdk.tf.json +0 -283
- package/cdktf.out/stacks/testAzureLinuxVirtualMachineScaleSetExample/cdk.tf.json +0 -261
- package/cdktf.out/stacks/testAzureLogAnalytics/cdk.tf.json +0 -309
- package/cdktf.out/stacks/testAzureMetricAlert/cdk.tf.json +0 -161
- package/cdktf.out/stacks/testAzureNetworkSecurityGroup/cdk.tf.json +0 -271
- package/cdktf.out/stacks/testAzureQueryRuleAlert/cdk.tf.json +0 -122
- package/cdktf.out/stacks/testAzureResourceGroup/cdk.tf.json +0 -88
- package/cdktf.out/stacks/testAzureStorageAccount/cdk.tf.json +0 -339
- package/cdktf.out/stacks/testAzureVirtualNetwork/cdk.tf.json +0 -264
- package/cdktf.out/stacks/testAzureWindowVirtualMachineScaleSetExample/cdk.tf.json +0 -261
- package/cdktf.out/stacks/testAzureWindowsVirtualMachineExample/cdk.tf.json +0 -280
- package/cdktf.out/stacks/testExampleAzureResource/cdk.tf.json +0 -167
- package/lib/azure-actiongroup/test/ExampleAzureActionGroup.d.ts +0 -5
- package/lib/azure-actiongroup/test/ExampleAzureActionGroup.js +0 -66
- package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.d.ts +0 -5
- package/lib/azure-applicationgateway/test/ExampleAzureApplicationGateway.js +0 -267
- package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.d.ts +0 -5
- package/lib/azure-applicationinsights/test/ExampleAzureApplicationInsights.js +0 -87
- package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.d.ts +0 -5
- package/lib/azure-containerregistry/test/ExampleAzureContainerRegistry.js +0 -57
- package/lib/azure-eventhub/lib/cluster.js +0 -64
- package/lib/azure-eventhub/test/ExampleAzureEventhub.d.ts +0 -5
- package/lib/azure-eventhub/test/ExampleAzureEventhub.js +0 -72
- package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.d.ts +0 -5
- package/lib/azure-functionapp/test/ExampleAzureLinuxFunctionApp.js +0 -123
- package/lib/azure-keyvault/test/ExampleAzureKeyVault.d.ts +0 -5
- package/lib/azure-keyvault/test/ExampleAzureKeyVault.js +0 -112
- package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.d.ts +0 -5
- package/lib/azure-kubernetes/test/ExampleAzureKubernetesCluster.js +0 -65
- package/lib/azure-kusto/test/ExampleAzureKusto.d.ts +0 -5
- package/lib/azure-kusto/test/ExampleAzureKusto.js +0 -71
- package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.d.ts +0 -5
- package/lib/azure-loganalytics/test/ExampleAzureLogAnalytics.js +0 -115
- package/lib/azure-metricalert/test/ExampleAzureMetricAlert.d.ts +0 -5
- package/lib/azure-metricalert/test/ExampleAzureMetricAlert.js +0 -81
- package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.d.ts +0 -5
- package/lib/azure-networksecuritygroup/test/ExampleAzureNetworkSecurityGroup.js +0 -97
- package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.d.ts +0 -5
- package/lib/azure-queryrulealert/test/ExampleAzureQueryRuleAlert.js +0 -67
- package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.d.ts +0 -5
- package/lib/azure-resourcegroup/test/ExampleAzureResourceGroup.js +0 -29
- package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.d.ts +0 -5
- package/lib/azure-storageaccount/test/ExampleAzureStorageAccount.js +0 -102
- package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.d.ts +0 -5
- package/lib/azure-virtualmachine/test/ExampleAzureLinuxVirtualMachine.js +0 -106
- package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.d.ts +0 -5
- package/lib/azure-virtualmachine/test/ExampleAzureWindowsVirtualMachine.js +0 -102
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.d.ts +0 -5
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureLinuxVirtualMachineScaleSet.js +0 -107
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.d.ts +0 -5
- package/lib/azure-virtualmachinescaleset/test/ExampleAzureWindowsVirtualMachineScaleSet.js +0 -103
- package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.d.ts +0 -5
- package/lib/azure-virtualnetwork/test/ExampleAzureVirtualNetwork.js +0 -88
- package/lib/core-azure/test/AzureResource.spec.js +0 -19
- package/lib/core-azure/test/ExampleAzureResource.d.ts +0 -5
- package/lib/core-azure/test/ExampleAzureResource.js +0 -67
- package/tfsec.json +0 -4
- /package/lib/{core-azure/test/AzureResource.spec.d.ts → azure-actiongroup/test/AzureActionGroup.integ.d.ts} +0 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const data_azurerm_client_config_1 = require("@cdktf/provider-azurerm/lib/data-azurerm-client-config");
|
|
4
|
+
const key_vault_1 = require("@cdktf/provider-azurerm/lib/key-vault");
|
|
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_1 = require("cdktf");
|
|
9
|
+
const testing_1 = require("../../testing");
|
|
10
|
+
const util = require("../../util/azureTenantIdHelpers");
|
|
11
|
+
const randomName_1 = require("../../util/randomName");
|
|
12
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
13
|
+
const appi = require("../lib");
|
|
14
|
+
describe("Example of deploying Application Insights", () => {
|
|
15
|
+
let stack;
|
|
16
|
+
let fullSynthResult;
|
|
17
|
+
const streamOutput = process.env.STREAM_OUTPUT !== "false";
|
|
18
|
+
beforeEach(() => {
|
|
19
|
+
const app = cdktf_1.Testing.app();
|
|
20
|
+
stack = new cdktf_1.TerraformStack(app, "test");
|
|
21
|
+
const randomName = (0, randomName_1.generateRandomName)(12);
|
|
22
|
+
const clientConfig = new data_azurerm_client_config_1.DataAzurermClientConfig(stack, "CurrentClientConfig", {});
|
|
23
|
+
new provider_1.AzurermProvider(stack, "azureFeature", {
|
|
24
|
+
features: {
|
|
25
|
+
resourceGroup: {
|
|
26
|
+
preventDeletionIfContainsResources: false,
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
// Create a resource group
|
|
31
|
+
const resourceGroup = new resource_group_1.ResourceGroup(stack, "rg", {
|
|
32
|
+
name: `rg-${randomName}`,
|
|
33
|
+
location: "eastus",
|
|
34
|
+
});
|
|
35
|
+
const keyvault = new key_vault_1.KeyVault(stack, "key_vault", {
|
|
36
|
+
name: `kv-${randomName}`,
|
|
37
|
+
location: resourceGroup.location,
|
|
38
|
+
resourceGroupName: resourceGroup.name,
|
|
39
|
+
skuName: "standard",
|
|
40
|
+
tenantId: util.getAzureTenantId(),
|
|
41
|
+
purgeProtectionEnabled: true,
|
|
42
|
+
softDeleteRetentionDays: 7,
|
|
43
|
+
accessPolicy: [
|
|
44
|
+
{
|
|
45
|
+
tenantId: util.getAzureTenantId(),
|
|
46
|
+
objectId: clientConfig.objectId,
|
|
47
|
+
secretPermissions: [
|
|
48
|
+
"Get",
|
|
49
|
+
"List",
|
|
50
|
+
"Set",
|
|
51
|
+
"Delete",
|
|
52
|
+
"Backup",
|
|
53
|
+
"Restore",
|
|
54
|
+
"Recover",
|
|
55
|
+
"Purge",
|
|
56
|
+
],
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
});
|
|
60
|
+
const logAnalyticsWorkspace = new log_analytics_workspace_1.LogAnalyticsWorkspace(stack, "log_analytics", {
|
|
61
|
+
location: "eastus",
|
|
62
|
+
name: `la-${randomName}`,
|
|
63
|
+
resourceGroupName: resourceGroup.name,
|
|
64
|
+
});
|
|
65
|
+
const applicationInsights = new appi.AppInsights(stack, "testappi", {
|
|
66
|
+
name: `appi-${randomName}`,
|
|
67
|
+
location: "eastus",
|
|
68
|
+
resourceGroup: resourceGroup,
|
|
69
|
+
applicationType: "web",
|
|
70
|
+
workspaceId: logAnalyticsWorkspace.id,
|
|
71
|
+
});
|
|
72
|
+
// Save Ikey to Key Vault as secret
|
|
73
|
+
applicationInsights.saveIKeyToKeyVault(keyvault.id);
|
|
74
|
+
applicationInsights.saveIKeyToKeyVault(keyvault.id, "customSecretName");
|
|
75
|
+
//Diag Settings
|
|
76
|
+
applicationInsights.addDiagSettings({
|
|
77
|
+
name: "diagsettings",
|
|
78
|
+
logAnalyticsWorkspaceId: logAnalyticsWorkspace.id,
|
|
79
|
+
metric: [
|
|
80
|
+
{
|
|
81
|
+
category: "AllMetrics",
|
|
82
|
+
},
|
|
83
|
+
],
|
|
84
|
+
});
|
|
85
|
+
//RBAC
|
|
86
|
+
applicationInsights.addAccess(clientConfig.objectId, "Contributor");
|
|
87
|
+
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
88
|
+
});
|
|
89
|
+
afterEach(() => {
|
|
90
|
+
try {
|
|
91
|
+
(0, testing_1.TerraformDestroy)(fullSynthResult, streamOutput);
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
console.error("Error during Terraform destroy:", error);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
it("check if stack can be deployed", () => {
|
|
98
|
+
(0, testing_1.TerraformApplyAndCheckIdempotency)(fullSynthResult, streamOutput); // Set to true to stream output
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVBcHBJbnNpZ2h0cy5pbnRlZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1hcHBsaWNhdGlvbmluc2lnaHRzL3Rlc3QvQXp1cmVBcHBJbnNpZ2h0cy5pbnRlZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHVHQUFpRztBQUNqRyxxRUFBaUU7QUFDakUsaUdBQTRGO0FBQzVGLG1FQUF1RTtBQUN2RSwrRUFBMkU7QUFDM0UsaUNBQWdEO0FBQ2hELDJDQUd1QjtBQUN2Qix3REFBd0Q7QUFDeEQsc0RBQTJEO0FBQzNELDJDQUF5QztBQUV6QywrQkFBK0I7QUFFL0IsUUFBUSxDQUFDLDJDQUEyQyxFQUFFLEdBQUcsRUFBRTtJQUN6RCxJQUFJLEtBQXFCLENBQUM7SUFDMUIsSUFBSSxlQUFvQixDQUFDO0lBQ3pCLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxLQUFLLE9BQU8sQ0FBQztJQUUzRCxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsTUFBTSxHQUFHLEdBQUcsZUFBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLEtBQUssR0FBRyxJQUFJLHNCQUFjLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLElBQUEsK0JBQWtCLEVBQUMsRUFBRSxDQUFDLENBQUM7UUFFMUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxvREFBdUIsQ0FDOUMsS0FBSyxFQUNMLHFCQUFxQixFQUNyQixFQUFFLENBQ0gsQ0FBQztRQUVGLElBQUksMEJBQWUsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1lBQ3pDLFFBQVEsRUFBRTtnQkFDUixhQUFhLEVBQUU7b0JBQ2Isa0NBQWtDLEVBQUUsS0FBSztpQkFDMUM7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILDBCQUEwQjtRQUMxQixNQUFNLGFBQWEsR0FBRyxJQUFJLDhCQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNuRCxJQUFJLEVBQUUsTUFBTSxVQUFVLEVBQUU7WUFDeEIsUUFBUSxFQUFFLFFBQVE7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsSUFBSSxvQkFBUSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUU7WUFDaEQsSUFBSSxFQUFFLE1BQU0sVUFBVSxFQUFFO1lBQ3hCLFFBQVEsRUFBRSxhQUFhLENBQUMsUUFBUTtZQUNoQyxpQkFBaUIsRUFBRSxhQUFhLENBQUMsSUFBSTtZQUNyQyxPQUFPLEVBQUUsVUFBVTtZQUNuQixRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ2pDLHNCQUFzQixFQUFFLElBQUk7WUFDNUIsdUJBQXVCLEVBQUUsQ0FBQztZQUMxQixZQUFZLEVBQUU7Z0JBQ1o7b0JBQ0UsUUFBUSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtvQkFDakMsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRO29CQUMvQixpQkFBaUIsRUFBRTt3QkFDakIsS0FBSzt3QkFDTCxNQUFNO3dCQUNOLEtBQUs7d0JBQ0wsUUFBUTt3QkFDUixRQUFRO3dCQUNSLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxPQUFPO3FCQUNSO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLHFCQUFxQixHQUFHLElBQUksK0NBQXFCLENBQ3JELEtBQUssRUFDTCxlQUFlLEVBQ2Y7WUFDRSxRQUFRLEVBQUUsUUFBUTtZQUNsQixJQUFJLEVBQUUsTUFBTSxVQUFVLEVBQUU7WUFDeEIsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLElBQUk7U0FDdEMsQ0FDRixDQUFDO1FBRUYsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUNsRSxJQUFJLEVBQUUsUUFBUSxVQUFVLEVBQUU7WUFDMUIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsYUFBYSxFQUFFLGFBQWE7WUFDNUIsZUFBZSxFQUFFLEtBQUs7WUFDdEIsV0FBVyxFQUFFLHFCQUFxQixDQUFDLEVBQUU7U0FDdEMsQ0FBQyxDQUFDO1FBRUgsbUNBQW1DO1FBQ25DLG1CQUFtQixDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRCxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFFeEUsZUFBZTtRQUNmLG1CQUFtQixDQUFDLGVBQWUsQ0FBQztZQUNsQyxJQUFJLEVBQUUsY0FBYztZQUNwQix1QkFBdUIsRUFBRSxxQkFBcUIsQ0FBQyxFQUFFO1lBQ2pELE1BQU0sRUFBRTtnQkFDTjtvQkFDRSxRQUFRLEVBQUUsWUFBWTtpQkFDdkI7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU07UUFDTixtQkFBbUIsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUVwRSxlQUFlLEdBQUcsZUFBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDRCQUE0QjtJQUMxRSxDQUFDLENBQUMsQ0FBQztJQUVILFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDYixJQUFJO1lBQ0YsSUFBQSwwQkFBZ0IsRUFBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDakQ7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDekQ7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxHQUFHLEVBQUU7UUFDeEMsSUFBQSwyQ0FBaUMsRUFBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQywrQkFBK0I7SUFDbkcsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFBenVyZXJtQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9kYXRhLWF6dXJlcm0tY2xpZW50LWNvbmZpZ1wiO1xuaW1wb3J0IHsgS2V5VmF1bHQgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2tleS12YXVsdFwiO1xuaW1wb3J0IHsgTG9nQW5hbHl0aWNzV29ya3NwYWNlIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9sb2ctYW5hbHl0aWNzLXdvcmtzcGFjZVwiO1xuaW1wb3J0IHsgQXp1cmVybVByb3ZpZGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9wcm92aWRlclwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCB7IFRlc3RpbmcsIFRlcnJhZm9ybVN0YWNrIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQge1xuICBUZXJyYWZvcm1BcHBseUFuZENoZWNrSWRlbXBvdGVuY3ksXG4gIFRlcnJhZm9ybURlc3Ryb3ksXG59IGZyb20gXCIuLi8uLi90ZXN0aW5nXCI7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gXCIuLi8uLi91dGlsL2F6dXJlVGVuYW50SWRIZWxwZXJzXCI7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbU5hbWUgfSBmcm9tIFwiLi4vLi4vdXRpbC9yYW5kb21OYW1lXCI7XG5pbXBvcnQgXCJjZGt0Zi9saWIvdGVzdGluZy9hZGFwdGVycy9qZXN0XCI7XG5cbmltcG9ydCAqIGFzIGFwcGkgZnJvbSBcIi4uL2xpYlwiO1xuXG5kZXNjcmliZShcIkV4YW1wbGUgb2YgZGVwbG95aW5nIEFwcGxpY2F0aW9uIEluc2lnaHRzXCIsICgpID0+IHtcbiAgbGV0IHN0YWNrOiBUZXJyYWZvcm1TdGFjaztcbiAgbGV0IGZ1bGxTeW50aFJlc3VsdDogYW55O1xuICBjb25zdCBzdHJlYW1PdXRwdXQgPSBwcm9jZXNzLmVudi5TVFJFQU1fT1VUUFVUICE9PSBcImZhbHNlXCI7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgY29uc3QgYXBwID0gVGVzdGluZy5hcHAoKTtcbiAgICBzdGFjayA9IG5ldyBUZXJyYWZvcm1TdGFjayhhcHAsIFwidGVzdFwiKTtcbiAgICBjb25zdCByYW5kb21OYW1lID0gZ2VuZXJhdGVSYW5kb21OYW1lKDEyKTtcblxuICAgIGNvbnN0IGNsaWVudENvbmZpZyA9IG5ldyBEYXRhQXp1cmVybUNsaWVudENvbmZpZyhcbiAgICAgIHN0YWNrLFxuICAgICAgXCJDdXJyZW50Q2xpZW50Q29uZmlnXCIsXG4gICAgICB7fSxcbiAgICApO1xuXG4gICAgbmV3IEF6dXJlcm1Qcm92aWRlcihzdGFjaywgXCJhenVyZUZlYXR1cmVcIiwge1xuICAgICAgZmVhdHVyZXM6IHtcbiAgICAgICAgcmVzb3VyY2VHcm91cDoge1xuICAgICAgICAgIHByZXZlbnREZWxldGlvbklmQ29udGFpbnNSZXNvdXJjZXM6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIENyZWF0ZSBhIHJlc291cmNlIGdyb3VwXG4gICAgY29uc3QgcmVzb3VyY2VHcm91cCA9IG5ldyBSZXNvdXJjZUdyb3VwKHN0YWNrLCBcInJnXCIsIHtcbiAgICAgIG5hbWU6IGByZy0ke3JhbmRvbU5hbWV9YCxcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgIH0pO1xuXG4gICAgY29uc3Qga2V5dmF1bHQgPSBuZXcgS2V5VmF1bHQoc3RhY2ssIFwia2V5X3ZhdWx0XCIsIHtcbiAgICAgIG5hbWU6IGBrdi0ke3JhbmRvbU5hbWV9YCxcbiAgICAgIGxvY2F0aW9uOiByZXNvdXJjZUdyb3VwLmxvY2F0aW9uLFxuICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHJlc291cmNlR3JvdXAubmFtZSxcbiAgICAgIHNrdU5hbWU6IFwic3RhbmRhcmRcIixcbiAgICAgIHRlbmFudElkOiB1dGlsLmdldEF6dXJlVGVuYW50SWQoKSxcbiAgICAgIHB1cmdlUHJvdGVjdGlvbkVuYWJsZWQ6IHRydWUsXG4gICAgICBzb2Z0RGVsZXRlUmV0ZW50aW9uRGF5czogNyxcbiAgICAgIGFjY2Vzc1BvbGljeTogW1xuICAgICAgICB7XG4gICAgICAgICAgdGVuYW50SWQ6IHV0aWwuZ2V0QXp1cmVUZW5hbnRJZCgpLFxuICAgICAgICAgIG9iamVjdElkOiBjbGllbnRDb25maWcub2JqZWN0SWQsXG4gICAgICAgICAgc2VjcmV0UGVybWlzc2lvbnM6IFtcbiAgICAgICAgICAgIFwiR2V0XCIsXG4gICAgICAgICAgICBcIkxpc3RcIixcbiAgICAgICAgICAgIFwiU2V0XCIsXG4gICAgICAgICAgICBcIkRlbGV0ZVwiLFxuICAgICAgICAgICAgXCJCYWNrdXBcIixcbiAgICAgICAgICAgIFwiUmVzdG9yZVwiLFxuICAgICAgICAgICAgXCJSZWNvdmVyXCIsXG4gICAgICAgICAgICBcIlB1cmdlXCIsXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBsb2dBbmFseXRpY3NXb3Jrc3BhY2UgPSBuZXcgTG9nQW5hbHl0aWNzV29ya3NwYWNlKFxuICAgICAgc3RhY2ssXG4gICAgICBcImxvZ19hbmFseXRpY3NcIixcbiAgICAgIHtcbiAgICAgICAgbG9jYXRpb246IFwiZWFzdHVzXCIsXG4gICAgICAgIG5hbWU6IGBsYS0ke3JhbmRvbU5hbWV9YCxcbiAgICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHJlc291cmNlR3JvdXAubmFtZSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIGNvbnN0IGFwcGxpY2F0aW9uSW5zaWdodHMgPSBuZXcgYXBwaS5BcHBJbnNpZ2h0cyhzdGFjaywgXCJ0ZXN0YXBwaVwiLCB7XG4gICAgICBuYW1lOiBgYXBwaS0ke3JhbmRvbU5hbWV9YCxcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgICAgcmVzb3VyY2VHcm91cDogcmVzb3VyY2VHcm91cCxcbiAgICAgIGFwcGxpY2F0aW9uVHlwZTogXCJ3ZWJcIixcbiAgICAgIHdvcmtzcGFjZUlkOiBsb2dBbmFseXRpY3NXb3Jrc3BhY2UuaWQsXG4gICAgfSk7XG5cbiAgICAvLyBTYXZlIElrZXkgdG8gS2V5IFZhdWx0IGFzIHNlY3JldFxuICAgIGFwcGxpY2F0aW9uSW5zaWdodHMuc2F2ZUlLZXlUb0tleVZhdWx0KGtleXZhdWx0LmlkKTtcbiAgICBhcHBsaWNhdGlvbkluc2lnaHRzLnNhdmVJS2V5VG9LZXlWYXVsdChrZXl2YXVsdC5pZCwgXCJjdXN0b21TZWNyZXROYW1lXCIpO1xuXG4gICAgLy9EaWFnIFNldHRpbmdzXG4gICAgYXBwbGljYXRpb25JbnNpZ2h0cy5hZGREaWFnU2V0dGluZ3Moe1xuICAgICAgbmFtZTogXCJkaWFnc2V0dGluZ3NcIixcbiAgICAgIGxvZ0FuYWx5dGljc1dvcmtzcGFjZUlkOiBsb2dBbmFseXRpY3NXb3Jrc3BhY2UuaWQsXG4gICAgICBtZXRyaWM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNhdGVnb3J5OiBcIkFsbE1ldHJpY3NcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICAvL1JCQUNcbiAgICBhcHBsaWNhdGlvbkluc2lnaHRzLmFkZEFjY2VzcyhjbGllbnRDb25maWcub2JqZWN0SWQsIFwiQ29udHJpYnV0b3JcIik7XG5cbiAgICBmdWxsU3ludGhSZXN1bHQgPSBUZXN0aW5nLmZ1bGxTeW50aChzdGFjayk7IC8vIFNhdmUgdGhlIHJlc3VsdCBmb3IgcmV1c2VcbiAgfSk7XG5cbiAgYWZ0ZXJFYWNoKCgpID0+IHtcbiAgICB0cnkge1xuICAgICAgVGVycmFmb3JtRGVzdHJveShmdWxsU3ludGhSZXN1bHQsIHN0cmVhbU91dHB1dCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBkdXJpbmcgVGVycmFmb3JtIGRlc3Ryb3k6XCIsIGVycm9yKTtcbiAgICB9XG4gIH0pO1xuXG4gIGl0KFwiY2hlY2sgaWYgc3RhY2sgY2FuIGJlIGRlcGxveWVkXCIsICgpID0+IHtcbiAgICBUZXJyYWZvcm1BcHBseUFuZENoZWNrSWRlbXBvdGVuY3koZnVsbFN5bnRoUmVzdWx0LCBzdHJlYW1PdXRwdXQpOyAvLyBTZXQgdG8gdHJ1ZSB0byBzdHJlYW0gb3V0cHV0XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
4
|
-
const resource_group_1 = require("@cdktf/provider-azurerm/lib/resource-group");
|
|
5
4
|
const cdktf_1 = require("cdktf");
|
|
6
|
-
const ExampleAzureApplicationInsights_1 = require("./ExampleAzureApplicationInsights");
|
|
7
|
-
require("cdktf/lib/testing/adapters/jest");
|
|
8
5
|
const appi = require("..");
|
|
9
|
-
const
|
|
6
|
+
const testing_1 = require("../../testing");
|
|
7
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
10
8
|
describe("Application Insights With Defaults", () => {
|
|
11
9
|
let stack;
|
|
12
10
|
let fullSynthResult;
|
|
@@ -14,14 +12,9 @@ describe("Application Insights With Defaults", () => {
|
|
|
14
12
|
const app = cdktf_1.Testing.app();
|
|
15
13
|
stack = new cdktf_1.TerraformStack(app, "test");
|
|
16
14
|
new provider_1.AzurermProvider(stack, "azureFeature", { features: {} });
|
|
17
|
-
const resourceGroup = new resource_group_1.ResourceGroup(stack, "MyResourceGroup", {
|
|
18
|
-
name: "testrg",
|
|
19
|
-
location: "eastus",
|
|
20
|
-
});
|
|
21
15
|
new appi.AppInsights(stack, "testAzureApplicationInsightsDefaults", {
|
|
22
16
|
name: "appi-test",
|
|
23
17
|
location: "eastus",
|
|
24
|
-
resourceGroup: resourceGroup,
|
|
25
18
|
applicationType: "web",
|
|
26
19
|
});
|
|
27
20
|
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
@@ -33,23 +26,7 @@ describe("Application Insights With Defaults", () => {
|
|
|
33
26
|
expect(fullSynthResult).toBeValidTerraform(); // Use the saved result
|
|
34
27
|
});
|
|
35
28
|
it("check if this can be planned", () => {
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
describe("Application Insights Example", () => {
|
|
40
|
-
it("renders the Application Insights and checks snapshot", () => {
|
|
41
|
-
// Need to remove the tenant_id from the snapshot as it will change wherever the test is run
|
|
42
|
-
const output = cdktf_1.Testing.synth(new ExampleAzureApplicationInsights_1.exampleAzureApplicationInsights(cdktf_1.Testing.app(), "testAzureKeyVault"));
|
|
43
|
-
const myObject = JSON.parse(output);
|
|
44
|
-
expect(util.removeTenantIdFromSnapshot(myObject)).toMatchSnapshot();
|
|
45
|
-
});
|
|
46
|
-
it("check if the produced terraform configuration is valid", () => {
|
|
47
|
-
// We need to do a full synth to plan the terraform configuration
|
|
48
|
-
expect(cdktf_1.Testing.fullSynth(new ExampleAzureApplicationInsights_1.exampleAzureApplicationInsights(cdktf_1.Testing.app(), "testAzureApplicationInsights"))).toBeValidTerraform();
|
|
49
|
-
});
|
|
50
|
-
it("check if this can be planned", () => {
|
|
51
|
-
// We need to do a full synth to plan the terraform configuration
|
|
52
|
-
expect(cdktf_1.Testing.fullSynth(new ExampleAzureApplicationInsights_1.exampleAzureApplicationInsights(cdktf_1.Testing.app(), "testAzureApplicationInsights"))).toPlanSuccessfully();
|
|
29
|
+
(0, testing_1.TerraformPlan)(fullSynthResult); // Use the saved result
|
|
53
30
|
});
|
|
54
31
|
});
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVBcHBJbnNpZ2h0cy5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWFwcGxpY2F0aW9uaW5zaWdodHMvdGVzdC9BenVyZUFwcEluc2lnaHRzLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtRUFBdUU7QUFDdkUsaUNBQWdEO0FBQ2hELDJCQUEyQjtBQUMzQiwyQ0FBOEM7QUFDOUMsMkNBQXlDO0FBRXpDLFFBQVEsQ0FBQyxvQ0FBb0MsRUFBRSxHQUFHLEVBQUU7SUFDbEQsSUFBSSxLQUFxQixDQUFDO0lBQzFCLElBQUksZUFBb0IsQ0FBQztJQUV6QixVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsTUFBTSxHQUFHLEdBQUcsZUFBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLEtBQUssR0FBRyxJQUFJLHNCQUFjLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXhDLElBQUksMEJBQWUsQ0FBQyxLQUFLLEVBQUUsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFN0QsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxzQ0FBc0MsRUFBRTtZQUNsRSxJQUFJLEVBQUUsV0FBVztZQUNqQixRQUFRLEVBQUUsUUFBUTtZQUNsQixlQUFlLEVBQUUsS0FBSztTQUN2QixDQUFDLENBQUM7UUFFSCxlQUFlLEdBQUcsZUFBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDRCQUE0QjtJQUMxRSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxtRUFBbUUsRUFBRSxHQUFHLEVBQUU7UUFDM0UsTUFBTSxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLHFDQUFxQztJQUN2RixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3REFBd0QsRUFBRSxHQUFHLEVBQUU7UUFDaEUsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyx1QkFBdUI7SUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO1FBQ3RDLElBQUEsdUJBQWEsRUFBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLHVCQUF1QjtJQUN6RCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXp1cmVybVByb3ZpZGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9wcm92aWRlclwiO1xuaW1wb3J0IHsgVGVzdGluZywgVGVycmFmb3JtU3RhY2sgfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCAqIGFzIGFwcGkgZnJvbSBcIi4uXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1QbGFuIH0gZnJvbSBcIi4uLy4uL3Rlc3RpbmdcIjtcbmltcG9ydCBcImNka3RmL2xpYi90ZXN0aW5nL2FkYXB0ZXJzL2plc3RcIjtcblxuZGVzY3JpYmUoXCJBcHBsaWNhdGlvbiBJbnNpZ2h0cyBXaXRoIERlZmF1bHRzXCIsICgpID0+IHtcbiAgbGV0IHN0YWNrOiBUZXJyYWZvcm1TdGFjaztcbiAgbGV0IGZ1bGxTeW50aFJlc3VsdDogYW55O1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGNvbnN0IGFwcCA9IFRlc3RpbmcuYXBwKCk7XG4gICAgc3RhY2sgPSBuZXcgVGVycmFmb3JtU3RhY2soYXBwLCBcInRlc3RcIik7XG5cbiAgICBuZXcgQXp1cmVybVByb3ZpZGVyKHN0YWNrLCBcImF6dXJlRmVhdHVyZVwiLCB7IGZlYXR1cmVzOiB7fSB9KTtcblxuICAgIG5ldyBhcHBpLkFwcEluc2lnaHRzKHN0YWNrLCBcInRlc3RBenVyZUFwcGxpY2F0aW9uSW5zaWdodHNEZWZhdWx0c1wiLCB7XG4gICAgICBuYW1lOiBcImFwcGktdGVzdFwiLFxuICAgICAgbG9jYXRpb246IFwiZWFzdHVzXCIsXG4gICAgICBhcHBsaWNhdGlvblR5cGU6IFwid2ViXCIsXG4gICAgfSk7XG5cbiAgICBmdWxsU3ludGhSZXN1bHQgPSBUZXN0aW5nLmZ1bGxTeW50aChzdGFjayk7IC8vIFNhdmUgdGhlIHJlc3VsdCBmb3IgcmV1c2VcbiAgfSk7XG5cbiAgaXQoXCJyZW5kZXJzIGFuIEFwcGxpY2F0aW9uIEluc2lnaHRzIHdpdGggZGVmYXVsdHMgYW5kIGNoZWNrcyBzbmFwc2hvdFwiLCAoKSA9PiB7XG4gICAgZXhwZWN0KFRlc3Rpbmcuc3ludGgoc3RhY2spKS50b01hdGNoU25hcHNob3QoKTsgLy8gQ29tcGFyZSB0aGUgYWxyZWFkeSBwcmVwYXJlZCBzdGFja1xuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHRoZSBwcm9kdWNlZCB0ZXJyYWZvcm0gY29uZmlndXJhdGlvbiBpcyB2YWxpZFwiLCAoKSA9PiB7XG4gICAgZXhwZWN0KGZ1bGxTeW50aFJlc3VsdCkudG9CZVZhbGlkVGVycmFmb3JtKCk7IC8vIFVzZSB0aGUgc2F2ZWQgcmVzdWx0XG4gIH0pO1xuXG4gIGl0KFwiY2hlY2sgaWYgdGhpcyBjYW4gYmUgcGxhbm5lZFwiLCAoKSA9PiB7XG4gICAgVGVycmFmb3JtUGxhbihmdWxsU3ludGhSZXN1bHQpOyAvLyBVc2UgdGhlIHNhdmVkIHJlc3VsdFxuICB9KTtcbn0pO1xuIl19
|
|
@@ -11,9 +11,10 @@ export interface RegistryProps {
|
|
|
11
11
|
*/
|
|
12
12
|
readonly name: string;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* An optional reference to the resource group in which to deploy the Container Registry.
|
|
15
|
+
* If not provided, the Container Registry will be deployed in the default resource group.
|
|
15
16
|
*/
|
|
16
|
-
readonly resourceGroup
|
|
17
|
+
readonly resourceGroup?: ResourceGroup;
|
|
17
18
|
/**
|
|
18
19
|
* The SKU of the Log Analytics Workspace.
|
|
19
20
|
*/
|
|
@@ -48,7 +49,7 @@ export declare class Registry extends AzureResource {
|
|
|
48
49
|
* @param props - The properties for configuring the Azure Container Registry. The properties include:
|
|
49
50
|
* - `location`: Required. The Azure region where the registry will be deployed.
|
|
50
51
|
* - `name`: Required. The name of the Container Registry.
|
|
51
|
-
* - `resourceGroup`:
|
|
52
|
+
* - `resourceGroup`: Optional. Reference to the resource group for deployment.
|
|
52
53
|
* - `sku`: Optional. The SKU of the Container Registry (e.g., Basic, Standard, Premium). Determines the features available.
|
|
53
54
|
* - `tags`: Optional. Tags for resource management.
|
|
54
55
|
* - `adminEnabled`: Optional. Specifies whether the admin user is enabled for the registry. Defaults to false if not set.
|
|
@@ -18,7 +18,7 @@ class Registry extends lib_1.AzureResource {
|
|
|
18
18
|
* @param props - The properties for configuring the Azure Container Registry. The properties include:
|
|
19
19
|
* - `location`: Required. The Azure region where the registry will be deployed.
|
|
20
20
|
* - `name`: Required. The name of the Container Registry.
|
|
21
|
-
* - `resourceGroup`:
|
|
21
|
+
* - `resourceGroup`: Optional. Reference to the resource group for deployment.
|
|
22
22
|
* - `sku`: Optional. The SKU of the Container Registry (e.g., Basic, Standard, Premium). Determines the features available.
|
|
23
23
|
* - `tags`: Optional. Tags for resource management.
|
|
24
24
|
* - `adminEnabled`: Optional. Specifies whether the admin user is enabled for the registry. Defaults to false if not set.
|
|
@@ -39,7 +39,7 @@ class Registry extends lib_1.AzureResource {
|
|
|
39
39
|
constructor(scope, id, props) {
|
|
40
40
|
super(scope, id);
|
|
41
41
|
this.props = props;
|
|
42
|
-
this.resourceGroup = props
|
|
42
|
+
this.resourceGroup = this.setupResourceGroup(props);
|
|
43
43
|
// Provide default values
|
|
44
44
|
const sku = props.sku ?? "Basic";
|
|
45
45
|
const admin_enabled = props.adminEnabled ?? false;
|
|
@@ -47,7 +47,7 @@ class Registry extends lib_1.AzureResource {
|
|
|
47
47
|
const azurermContainerRegistry = new container_registry_1.ContainerRegistry(this, "acr", {
|
|
48
48
|
location: props.location,
|
|
49
49
|
name: props.name,
|
|
50
|
-
resourceGroupName:
|
|
50
|
+
resourceGroupName: this.resourceGroup.name,
|
|
51
51
|
sku: sku,
|
|
52
52
|
tags: props.tags,
|
|
53
53
|
adminEnabled: admin_enabled,
|
|
@@ -72,5 +72,5 @@ class Registry extends lib_1.AzureResource {
|
|
|
72
72
|
}
|
|
73
73
|
exports.Registry = Registry;
|
|
74
74
|
_a = JSII_RTTI_SYMBOL_1;
|
|
75
|
-
Registry[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_containerregistry.Registry", version: "0.0.3-pre.
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
Registry[_a] = { fqn: "@microsoft/terraform-cdk-constructs.azure_containerregistry.Registry", version: "0.0.3-pre.12" };
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtY29udGFpbmVycmVnaXN0cnkvbGliL3JlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsdUZBQW1GO0FBRW5GLCtCQUErQjtBQUUvQiw4Q0FBcUQ7QUFrQ3JELE1BQWEsUUFBUyxTQUFRLG1CQUFhO0lBS3pDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BNEJHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFvQjtRQUM1RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXBELHlCQUF5QjtRQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQztRQUNqQyxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQztRQUNsRCxNQUFNLHdCQUF3QixHQUFHLEtBQUssQ0FBQyx1QkFBdUIsSUFBSSxFQUFFLENBQUM7UUFFckUsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLHNDQUFpQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUU7WUFDbEUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDMUMsR0FBRyxFQUFFLEdBQUc7WUFDUixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsWUFBWSxFQUFFLGFBQWE7WUFDM0IsZUFBZSxFQUFFLHdCQUF3QjtTQUMxQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxHQUFHLHdCQUF3QixDQUFDLEVBQUUsQ0FBQztRQUV0QyxvQkFBb0I7UUFDcEIsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRTtZQUN0RSxLQUFLLEVBQUUsd0JBQXdCLENBQUMsRUFBRTtTQUNuQyxDQUFDLENBQUM7UUFFSCxNQUFNLDJCQUEyQixHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDM0QsSUFBSSxFQUNKLHlCQUF5QixFQUN6QjtZQUNFLEtBQUssRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO1NBQ3JDLENBQ0YsQ0FBQztRQUVGLE1BQU0sa0NBQWtDLEdBQUcsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUNsRSxJQUFJLEVBQ0osY0FBYyxFQUNkO1lBQ0UsS0FBSyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7U0FDNUMsQ0FDRixDQUFDO1FBRUYsZ0lBQWdJO1FBQ2hJLHlCQUF5QixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELDJCQUEyQixDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDekUsa0NBQWtDLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkUsQ0FBQzs7QUFsRkgsNEJBbUZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGFpbmVyUmVnaXN0cnkgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL2NvbnRhaW5lci1yZWdpc3RyeVwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCAqIGFzIGNka3RmIGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF6dXJlUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RyeVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBenVyZSBSZWdpb24gdG8gZGVwbG95LlxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb246IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBMb2cgQW5hbHl0aWNzIFdvcmtzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEFuIG9wdGlvbmFsIHJlZmVyZW5jZSB0byB0aGUgcmVzb3VyY2UgZ3JvdXAgaW4gd2hpY2ggdG8gZGVwbG95IHRoZSBDb250YWluZXIgUmVnaXN0cnkuXG4gICAqIElmIG5vdCBwcm92aWRlZCwgdGhlIENvbnRhaW5lciBSZWdpc3RyeSB3aWxsIGJlIGRlcGxveWVkIGluIHRoZSBkZWZhdWx0IHJlc291cmNlIGdyb3VwLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cD86IFJlc291cmNlR3JvdXA7XG4gIC8qKlxuICAgKiBUaGUgU0tVIG9mIHRoZSBMb2cgQW5hbHl0aWNzIFdvcmtzcGFjZS5cbiAgICovXG4gIHJlYWRvbmx5IHNrdT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB0YWdzIHRvIGFzc2lnbiB0byB0aGUgUmVzb3VyY2UgR3JvdXAuXG4gICAqL1xuICByZWFkb25seSB0YWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgLyoqXG4gICAqIENyZWF0ZSBlbmFibGUgQWRtaW4gdXNlci5cbiAgICovXG4gIHJlYWRvbmx5IGFkbWluRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHRoZSBsb2NhdGlvbnMgdG8gY29uZmlndXJlIHJlcGxpY2F0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZ2VvUmVwbGljYXRpb25Mb2NhdGlvbnM/OiBhbnk7XG59XG5cbmV4cG9ydCBjbGFzcyBSZWdpc3RyeSBleHRlbmRzIEF6dXJlUmVzb3VyY2Uge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IFJlZ2lzdHJ5UHJvcHM7XG4gIHB1YmxpYyByZXNvdXJjZUdyb3VwOiBSZXNvdXJjZUdyb3VwO1xuICBwdWJsaWMgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIG5ldyBBenVyZSBDb250YWluZXIgUmVnaXN0cnkgKEFDUikuXG4gICAqXG4gICAqIFRoaXMgY2xhc3MgY3JlYXRlcyBhbiBBenVyZSBDb250YWluZXIgUmVnaXN0cnkgaW5zdGFuY2UsIHdoaWNoIGlzIGEgbWFuYWdlZCBEb2NrZXIgcmVnaXN0cnkgc2VydmljZSBiYXNlZCBvbiB0aGUgRG9ja2VyIFJlZ2lzdHJ5IDIuMCBzcGVjaWZpY2F0aW9uLlxuICAgKiBUaGlzIHNlcnZpY2UgZW5hYmxlcyB5b3UgdG8gc3RvcmUgYW5kIG1hbmFnZSBjb250YWluZXIgaW1hZ2VzIGFjcm9zcyBhbGwgdHlwZXMgb2YgQXp1cmUgZGVwbG95bWVudHMsIHlvdSBjYW4gYWxzbyB1c2UgaXQgdG8gYnVpbGQsIHN0b3JlLCBhbmQgbWFuYWdlIGltYWdlcyBmb3IgYWxsIHR5cGVzIG9mIGNvbnRhaW5lciBkZXBsb3ltZW50cy5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRvIGRlZmluZSB0aGlzIGNvbnN0cnVjdCwgdHlwaWNhbGx5IHVzZWQgZm9yIG1hbmFnaW5nIGxpZmVjeWNsZXMgYW5kIGNyZWF0aW9uIG9yZGVyLlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgY29uc3RydWN0IGluc3RhbmNlLlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIEF6dXJlIENvbnRhaW5lciBSZWdpc3RyeS4gVGhlIHByb3BlcnRpZXMgaW5jbHVkZTpcbiAgICogICAgICAgICAgICAgICAgLSBgbG9jYXRpb25gOiBSZXF1aXJlZC4gVGhlIEF6dXJlIHJlZ2lvbiB3aGVyZSB0aGUgcmVnaXN0cnkgd2lsbCBiZSBkZXBsb3llZC5cbiAgICogICAgICAgICAgICAgICAgLSBgbmFtZWA6IFJlcXVpcmVkLiBUaGUgbmFtZSBvZiB0aGUgQ29udGFpbmVyIFJlZ2lzdHJ5LlxuICAgKiAgICAgICAgICAgICAgICAtIGByZXNvdXJjZUdyb3VwYDogT3B0aW9uYWwuIFJlZmVyZW5jZSB0byB0aGUgcmVzb3VyY2UgZ3JvdXAgZm9yIGRlcGxveW1lbnQuXG4gICAqICAgICAgICAgICAgICAgIC0gYHNrdWA6IE9wdGlvbmFsLiBUaGUgU0tVIG9mIHRoZSBDb250YWluZXIgUmVnaXN0cnkgKGUuZy4sIEJhc2ljLCBTdGFuZGFyZCwgUHJlbWl1bSkuIERldGVybWluZXMgdGhlIGZlYXR1cmVzIGF2YWlsYWJsZS5cbiAgICogICAgICAgICAgICAgICAgLSBgdGFnc2A6IE9wdGlvbmFsLiBUYWdzIGZvciByZXNvdXJjZSBtYW5hZ2VtZW50LlxuICAgKiAgICAgICAgICAgICAgICAtIGBhZG1pbkVuYWJsZWRgOiBPcHRpb25hbC4gU3BlY2lmaWVzIHdoZXRoZXIgdGhlIGFkbWluIHVzZXIgaXMgZW5hYmxlZCBmb3IgdGhlIHJlZ2lzdHJ5LiBEZWZhdWx0cyB0byBmYWxzZSBpZiBub3Qgc2V0LlxuICAgKiAgICAgICAgICAgICAgICAtIGBnZW9SZXBsaWNhdGlvbkxvY2F0aW9uc2A6IE9wdGlvbmFsLiBTcGVjaWZpZXMgYWRkaXRpb25hbCBBenVyZSByZWdpb25zIHdoZXJlIHRoZSByZWdpc3RyeSBzaG91bGQgYmUgZ2VvLXJlcGxpY2F0ZWQuXG4gICAqXG4gICAqIEV4YW1wbGUgdXNhZ2U6XG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogbmV3IFJlZ2lzdHJ5KHRoaXMsICdteVJlZ2lzdHJ5Jywge1xuICAgKiAgIGxvY2F0aW9uOiAnV2VzdCBVUycsXG4gICAqICAgbmFtZTogJ215Q29udGFpbmVyUmVnaXN0cnknLFxuICAgKiAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlR3JvdXAsXG4gICAqICAgc2t1OiAnUHJlbWl1bScsXG4gICAqICAgYWRtaW5FbmFibGVkOiB0cnVlLFxuICAgKiAgIGdlb1JlcGxpY2F0aW9uTG9jYXRpb25zOiBbJ0Vhc3QgVVMnLCAnV2VzdCBFdXJvcGUnXVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUmVnaXN0cnlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5yZXNvdXJjZUdyb3VwID0gdGhpcy5zZXR1cFJlc291cmNlR3JvdXAocHJvcHMpO1xuXG4gICAgLy8gUHJvdmlkZSBkZWZhdWx0IHZhbHVlc1xuICAgIGNvbnN0IHNrdSA9IHByb3BzLnNrdSA/PyBcIkJhc2ljXCI7XG4gICAgY29uc3QgYWRtaW5fZW5hYmxlZCA9IHByb3BzLmFkbWluRW5hYmxlZCA/PyBmYWxzZTtcbiAgICBjb25zdCBnZW9yZXBsaWNhdGlvbl9sb2NhdGlvbnMgPSBwcm9wcy5nZW9SZXBsaWNhdGlvbkxvY2F0aW9ucyA/PyBbXTtcblxuICAgIGNvbnN0IGF6dXJlcm1Db250YWluZXJSZWdpc3RyeSA9IG5ldyBDb250YWluZXJSZWdpc3RyeSh0aGlzLCBcImFjclwiLCB7XG4gICAgICBsb2NhdGlvbjogcHJvcHMubG9jYXRpb24sXG4gICAgICBuYW1lOiBwcm9wcy5uYW1lLFxuICAgICAgcmVzb3VyY2VHcm91cE5hbWU6IHRoaXMucmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgc2t1OiBza3UsXG4gICAgICB0YWdzOiBwcm9wcy50YWdzLFxuICAgICAgYWRtaW5FbmFibGVkOiBhZG1pbl9lbmFibGVkLFxuICAgICAgZ2VvcmVwbGljYXRpb25zOiBnZW9yZXBsaWNhdGlvbl9sb2NhdGlvbnMsXG4gICAgfSk7XG5cbiAgICB0aGlzLmlkID0gYXp1cmVybUNvbnRhaW5lclJlZ2lzdHJ5LmlkO1xuXG4gICAgLy8gVGVycmFmb3JtIE91dHB1dHNcbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEFDUmlkID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcImlkXCIsIHtcbiAgICAgIHZhbHVlOiBhenVyZXJtQ29udGFpbmVyUmVnaXN0cnkuaWQsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjZGt0ZlRlcnJhZm9ybU91dHB1dEFDUk5hbWUgPSBuZXcgY2RrdGYuVGVycmFmb3JtT3V0cHV0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiY29udGFpbmVyX3JlZ2lzdHJ5X25hbWVcIixcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IGF6dXJlcm1Db250YWluZXJSZWdpc3RyeS5uYW1lLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgY29uc3QgY2RrdGZUZXJyYWZvcm1PdXRwdXRBQ1Jsb2dpbnNlcnZlciA9IG5ldyBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQoXG4gICAgICB0aGlzLFxuICAgICAgXCJsb2dpbl9zZXJ2ZXJcIixcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IGF6dXJlcm1Db250YWluZXJSZWdpc3RyeS5sb2dpblNlcnZlcixcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIC8qVGhpcyBhbGxvd3MgdGhlIFRlcnJhZm9ybSByZXNvdXJjZSBuYW1lIHRvIG1hdGNoIHRoZSBvcmlnaW5hbCBuYW1lLiBZb3UgY2FuIHJlbW92ZSB0aGUgY2FsbCBpZiB5b3UgZG9uJ3QgbmVlZCB0aGVtIHRvIG1hdGNoLiovXG4gICAgY2RrdGZUZXJyYWZvcm1PdXRwdXRBQ1JpZC5vdmVycmlkZUxvZ2ljYWxJZChcImlkXCIpO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0QUNSTmFtZS5vdmVycmlkZUxvZ2ljYWxJZChcImNvbnRhaW5lcl9yZWdpc3RyeV9uYW1lXCIpO1xuICAgIGNka3RmVGVycmFmb3JtT3V0cHV0QUNSbG9naW5zZXJ2ZXIub3ZlcnJpZGVMb2dpY2FsSWQoXCJsb2dpbl9zZXJ2ZXJcIik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "cdktf/lib/testing/adapters/jest";
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const data_azurerm_client_config_1 = require("@cdktf/provider-azurerm/lib/data-azurerm-client-config");
|
|
4
|
+
const log_analytics_workspace_1 = require("@cdktf/provider-azurerm/lib/log-analytics-workspace");
|
|
5
|
+
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
6
|
+
const resource_group_1 = require("@cdktf/provider-azurerm/lib/resource-group");
|
|
7
|
+
const cdktf_1 = require("cdktf");
|
|
8
|
+
const acr = require("..");
|
|
9
|
+
const testing_1 = require("../../testing");
|
|
10
|
+
const randomName_1 = require("../../util/randomName");
|
|
11
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
12
|
+
describe("Example of deploying a Container Registry", () => {
|
|
13
|
+
let stack;
|
|
14
|
+
let fullSynthResult;
|
|
15
|
+
const streamOutput = process.env.STREAM_OUTPUT !== "false";
|
|
16
|
+
beforeEach(() => {
|
|
17
|
+
const app = cdktf_1.Testing.app();
|
|
18
|
+
stack = new cdktf_1.TerraformStack(app, "test");
|
|
19
|
+
const randomName = (0, randomName_1.generateRandomName)(12);
|
|
20
|
+
const clientConfig = new data_azurerm_client_config_1.DataAzurermClientConfig(stack, "CurrentClientConfig", {});
|
|
21
|
+
new provider_1.AzurermProvider(stack, "azureFeature", { features: {} });
|
|
22
|
+
const resourceGroup = new resource_group_1.ResourceGroup(stack, "rg", {
|
|
23
|
+
name: `rg-${randomName}`,
|
|
24
|
+
location: "eastus",
|
|
25
|
+
});
|
|
26
|
+
const logAnalyticsWorkspace = new log_analytics_workspace_1.LogAnalyticsWorkspace(stack, "log_analytics", {
|
|
27
|
+
location: "eastus",
|
|
28
|
+
name: `la-${randomName}`,
|
|
29
|
+
resourceGroupName: resourceGroup.name,
|
|
30
|
+
});
|
|
31
|
+
const azureContainerRegistry = new acr.Registry(stack, "testACR", {
|
|
32
|
+
name: `acr${randomName}`,
|
|
33
|
+
location: resourceGroup.location,
|
|
34
|
+
resourceGroup: resourceGroup,
|
|
35
|
+
sku: "Premium",
|
|
36
|
+
adminEnabled: false,
|
|
37
|
+
geoReplicationLocations: [{ location: "westus" }],
|
|
38
|
+
tags: {
|
|
39
|
+
environment: "test",
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
//Diag Settings
|
|
43
|
+
azureContainerRegistry.addDiagSettings({
|
|
44
|
+
name: "diagsettings",
|
|
45
|
+
logAnalyticsWorkspaceId: logAnalyticsWorkspace.id,
|
|
46
|
+
metric: [
|
|
47
|
+
{
|
|
48
|
+
category: "AllMetrics",
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
});
|
|
52
|
+
//RBAC
|
|
53
|
+
azureContainerRegistry.addAccess(clientConfig.objectId, "Contributor");
|
|
54
|
+
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
55
|
+
});
|
|
56
|
+
afterEach(() => {
|
|
57
|
+
try {
|
|
58
|
+
(0, testing_1.TerraformDestroy)(fullSynthResult, streamOutput);
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.error("Error during Terraform destroy:", error);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
it("check if stack can be deployed", () => {
|
|
65
|
+
(0, testing_1.TerraformApplyAndCheckIdempotency)(fullSynthResult, streamOutput); // Set to true to stream output
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVDb250YWluZXJSZWdpc3RyeS5pbnRlZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9henVyZS1jb250YWluZXJyZWdpc3RyeS90ZXN0L0F6dXJlQ29udGFpbmVyUmVnaXN0cnkuaW50ZWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx1R0FBaUc7QUFDakcsaUdBQTRGO0FBQzVGLG1FQUF1RTtBQUN2RSwrRUFBMkU7QUFDM0UsaUNBQWdEO0FBQ2hELDBCQUEwQjtBQUMxQiwyQ0FHdUI7QUFDdkIsc0RBQTJEO0FBQzNELDJDQUF5QztBQUV6QyxRQUFRLENBQUMsMkNBQTJDLEVBQUUsR0FBRyxFQUFFO0lBQ3pELElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLGVBQW9CLENBQUM7SUFDekIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEtBQUssT0FBTyxDQUFDO0lBRTNELFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxNQUFNLEdBQUcsR0FBRyxlQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDMUIsS0FBSyxHQUFHLElBQUksc0JBQWMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDeEMsTUFBTSxVQUFVLEdBQUcsSUFBQSwrQkFBa0IsRUFBQyxFQUFFLENBQUMsQ0FBQztRQUUxQyxNQUFNLFlBQVksR0FBRyxJQUFJLG9EQUF1QixDQUM5QyxLQUFLLEVBQ0wscUJBQXFCLEVBQ3JCLEVBQUUsQ0FDSCxDQUFDO1FBRUYsSUFBSSwwQkFBZSxDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU3RCxNQUFNLGFBQWEsR0FBRyxJQUFJLDhCQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNuRCxJQUFJLEVBQUUsTUFBTSxVQUFVLEVBQUU7WUFDeEIsUUFBUSxFQUFFLFFBQVE7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLCtDQUFxQixDQUNyRCxLQUFLLEVBQ0wsZUFBZSxFQUNmO1lBQ0UsUUFBUSxFQUFFLFFBQVE7WUFDbEIsSUFBSSxFQUFFLE1BQU0sVUFBVSxFQUFFO1lBQ3hCLGlCQUFpQixFQUFFLGFBQWEsQ0FBQyxJQUFJO1NBQ3RDLENBQ0YsQ0FBQztRQUVGLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDaEUsSUFBSSxFQUFFLE1BQU0sVUFBVSxFQUFFO1lBQ3hCLFFBQVEsRUFBRSxhQUFhLENBQUMsUUFBUTtZQUNoQyxhQUFhLEVBQUUsYUFBYTtZQUM1QixHQUFHLEVBQUUsU0FBUztZQUNkLFlBQVksRUFBRSxLQUFLO1lBQ25CLHVCQUF1QixFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUM7WUFDakQsSUFBSSxFQUFFO2dCQUNKLFdBQVcsRUFBRSxNQUFNO2FBQ3BCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsZUFBZTtRQUNmLHNCQUFzQixDQUFDLGVBQWUsQ0FBQztZQUNyQyxJQUFJLEVBQUUsY0FBYztZQUNwQix1QkFBdUIsRUFBRSxxQkFBcUIsQ0FBQyxFQUFFO1lBQ2pELE1BQU0sRUFBRTtnQkFDTjtvQkFDRSxRQUFRLEVBQUUsWUFBWTtpQkFDdkI7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU07UUFDTixzQkFBc0IsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUV2RSxlQUFlLEdBQUcsZUFBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDRCQUE0QjtJQUMxRSxDQUFDLENBQUMsQ0FBQztJQUVILFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDYixJQUFJO1lBQ0YsSUFBQSwwQkFBZ0IsRUFBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDakQ7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDekQ7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxHQUFHLEVBQUU7UUFDeEMsSUFBQSwyQ0FBaUMsRUFBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQywrQkFBK0I7SUFDbkcsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFBenVyZXJtQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9kYXRhLWF6dXJlcm0tY2xpZW50LWNvbmZpZ1wiO1xuaW1wb3J0IHsgTG9nQW5hbHl0aWNzV29ya3NwYWNlIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9sb2ctYW5hbHl0aWNzLXdvcmtzcGFjZVwiO1xuaW1wb3J0IHsgQXp1cmVybVByb3ZpZGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9wcm92aWRlclwiO1xuaW1wb3J0IHsgUmVzb3VyY2VHcm91cCB9IGZyb20gXCJAY2RrdGYvcHJvdmlkZXItYXp1cmVybS9saWIvcmVzb3VyY2UtZ3JvdXBcIjtcbmltcG9ydCB7IFRlc3RpbmcsIFRlcnJhZm9ybVN0YWNrIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgKiBhcyBhY3IgZnJvbSBcIi4uXCI7XG5pbXBvcnQge1xuICBUZXJyYWZvcm1BcHBseUFuZENoZWNrSWRlbXBvdGVuY3ksXG4gIFRlcnJhZm9ybURlc3Ryb3ksXG59IGZyb20gXCIuLi8uLi90ZXN0aW5nXCI7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbU5hbWUgfSBmcm9tIFwiLi4vLi4vdXRpbC9yYW5kb21OYW1lXCI7XG5pbXBvcnQgXCJjZGt0Zi9saWIvdGVzdGluZy9hZGFwdGVycy9qZXN0XCI7XG5cbmRlc2NyaWJlKFwiRXhhbXBsZSBvZiBkZXBsb3lpbmcgYSBDb250YWluZXIgUmVnaXN0cnlcIiwgKCkgPT4ge1xuICBsZXQgc3RhY2s6IFRlcnJhZm9ybVN0YWNrO1xuICBsZXQgZnVsbFN5bnRoUmVzdWx0OiBhbnk7XG4gIGNvbnN0IHN0cmVhbU91dHB1dCA9IHByb2Nlc3MuZW52LlNUUkVBTV9PVVRQVVQgIT09IFwiZmFsc2VcIjtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBjb25zdCBhcHAgPSBUZXN0aW5nLmFwcCgpO1xuICAgIHN0YWNrID0gbmV3IFRlcnJhZm9ybVN0YWNrKGFwcCwgXCJ0ZXN0XCIpO1xuICAgIGNvbnN0IHJhbmRvbU5hbWUgPSBnZW5lcmF0ZVJhbmRvbU5hbWUoMTIpO1xuXG4gICAgY29uc3QgY2xpZW50Q29uZmlnID0gbmV3IERhdGFBenVyZXJtQ2xpZW50Q29uZmlnKFxuICAgICAgc3RhY2ssXG4gICAgICBcIkN1cnJlbnRDbGllbnRDb25maWdcIixcbiAgICAgIHt9LFxuICAgICk7XG5cbiAgICBuZXcgQXp1cmVybVByb3ZpZGVyKHN0YWNrLCBcImF6dXJlRmVhdHVyZVwiLCB7IGZlYXR1cmVzOiB7fSB9KTtcblxuICAgIGNvbnN0IHJlc291cmNlR3JvdXAgPSBuZXcgUmVzb3VyY2VHcm91cChzdGFjaywgXCJyZ1wiLCB7XG4gICAgICBuYW1lOiBgcmctJHtyYW5kb21OYW1lfWAsXG4gICAgICBsb2NhdGlvbjogXCJlYXN0dXNcIixcbiAgICB9KTtcblxuICAgIGNvbnN0IGxvZ0FuYWx5dGljc1dvcmtzcGFjZSA9IG5ldyBMb2dBbmFseXRpY3NXb3Jrc3BhY2UoXG4gICAgICBzdGFjayxcbiAgICAgIFwibG9nX2FuYWx5dGljc1wiLFxuICAgICAge1xuICAgICAgICBsb2NhdGlvbjogXCJlYXN0dXNcIixcbiAgICAgICAgbmFtZTogYGxhLSR7cmFuZG9tTmFtZX1gLFxuICAgICAgICByZXNvdXJjZUdyb3VwTmFtZTogcmVzb3VyY2VHcm91cC5uYW1lLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgY29uc3QgYXp1cmVDb250YWluZXJSZWdpc3RyeSA9IG5ldyBhY3IuUmVnaXN0cnkoc3RhY2ssIFwidGVzdEFDUlwiLCB7XG4gICAgICBuYW1lOiBgYWNyJHtyYW5kb21OYW1lfWAsXG4gICAgICBsb2NhdGlvbjogcmVzb3VyY2VHcm91cC5sb2NhdGlvbixcbiAgICAgIHJlc291cmNlR3JvdXA6IHJlc291cmNlR3JvdXAsXG4gICAgICBza3U6IFwiUHJlbWl1bVwiLFxuICAgICAgYWRtaW5FbmFibGVkOiBmYWxzZSxcbiAgICAgIGdlb1JlcGxpY2F0aW9uTG9jYXRpb25zOiBbeyBsb2NhdGlvbjogXCJ3ZXN0dXNcIiB9XSxcbiAgICAgIHRhZ3M6IHtcbiAgICAgICAgZW52aXJvbm1lbnQ6IFwidGVzdFwiLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vRGlhZyBTZXR0aW5nc1xuICAgIGF6dXJlQ29udGFpbmVyUmVnaXN0cnkuYWRkRGlhZ1NldHRpbmdzKHtcbiAgICAgIG5hbWU6IFwiZGlhZ3NldHRpbmdzXCIsXG4gICAgICBsb2dBbmFseXRpY3NXb3Jrc3BhY2VJZDogbG9nQW5hbHl0aWNzV29ya3NwYWNlLmlkLFxuICAgICAgbWV0cmljOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBjYXRlZ29yeTogXCJBbGxNZXRyaWNzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgLy9SQkFDXG4gICAgYXp1cmVDb250YWluZXJSZWdpc3RyeS5hZGRBY2Nlc3MoY2xpZW50Q29uZmlnLm9iamVjdElkLCBcIkNvbnRyaWJ1dG9yXCIpO1xuXG4gICAgZnVsbFN5bnRoUmVzdWx0ID0gVGVzdGluZy5mdWxsU3ludGgoc3RhY2spOyAvLyBTYXZlIHRoZSByZXN1bHQgZm9yIHJldXNlXG4gIH0pO1xuXG4gIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIFRlcnJhZm9ybURlc3Ryb3koZnVsbFN5bnRoUmVzdWx0LCBzdHJlYW1PdXRwdXQpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFwiRXJyb3IgZHVyaW5nIFRlcnJhZm9ybSBkZXN0cm95OlwiLCBlcnJvcik7XG4gICAgfVxuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHN0YWNrIGNhbiBiZSBkZXBsb3llZFwiLCAoKSA9PiB7XG4gICAgVGVycmFmb3JtQXBwbHlBbmRDaGVja0lkZW1wb3RlbmN5KGZ1bGxTeW50aFJlc3VsdCwgc3RyZWFtT3V0cHV0KTsgLy8gU2V0IHRvIHRydWUgdG8gc3RyZWFtIG91dHB1dFxuICB9KTtcbn0pO1xuIl19
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
4
|
-
const resource_group_1 = require("@cdktf/provider-azurerm/lib/resource-group");
|
|
5
4
|
const cdktf_1 = require("cdktf");
|
|
6
|
-
const ExampleAzureContainerRegistry_1 = require("./ExampleAzureContainerRegistry");
|
|
7
|
-
require("cdktf/lib/testing/adapters/jest");
|
|
8
5
|
const acr = require("..");
|
|
6
|
+
const testing_1 = require("../../testing");
|
|
7
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
9
8
|
describe("Azure Container Registry With Defaults", () => {
|
|
10
9
|
let stack;
|
|
11
10
|
let fullSynthResult;
|
|
@@ -13,14 +12,9 @@ describe("Azure Container Registry With Defaults", () => {
|
|
|
13
12
|
const app = cdktf_1.Testing.app();
|
|
14
13
|
stack = new cdktf_1.TerraformStack(app, "test");
|
|
15
14
|
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
15
|
new acr.Registry(stack, "testAzureContainerRegistryDefaults", {
|
|
21
16
|
name: "latest",
|
|
22
17
|
location: "eastus",
|
|
23
|
-
resourceGroup: rg,
|
|
24
18
|
});
|
|
25
19
|
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
26
20
|
});
|
|
@@ -31,20 +25,7 @@ describe("Azure Container Registry With Defaults", () => {
|
|
|
31
25
|
expect(fullSynthResult).toBeValidTerraform(); // Use the saved result
|
|
32
26
|
});
|
|
33
27
|
it("check if this can be planned", () => {
|
|
34
|
-
|
|
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();
|
|
28
|
+
(0, testing_1.TerraformPlan)(fullSynthResult); // Use the saved result
|
|
48
29
|
});
|
|
49
30
|
});
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVDb250YWluZXJSZWdpc3RyeS5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWNvbnRhaW5lcnJlZ2lzdHJ5L3Rlc3QvQXp1cmVDb250YWluZXJSZWdpc3RyeS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUVBQXVFO0FBQ3ZFLGlDQUFnRDtBQUNoRCwwQkFBMEI7QUFDMUIsMkNBQThDO0FBQzlDLDJDQUF5QztBQUV6QyxRQUFRLENBQUMsd0NBQXdDLEVBQUUsR0FBRyxFQUFFO0lBQ3RELElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLGVBQW9CLENBQUM7SUFFekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLE1BQU0sR0FBRyxHQUFHLGVBQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMxQixLQUFLLEdBQUcsSUFBSSxzQkFBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV4QyxJQUFJLDBCQUFlLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTdELElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsb0NBQW9DLEVBQUU7WUFDNUQsSUFBSSxFQUFFLFFBQVE7WUFDZCxRQUFRLEVBQUUsUUFBUTtTQUNuQixDQUFDLENBQUM7UUFFSCxlQUFlLEdBQUcsZUFBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLDRCQUE0QjtJQUMxRSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx1RUFBdUUsRUFBRSxHQUFHLEVBQUU7UUFDL0UsTUFBTSxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLHFDQUFxQztJQUN2RixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3REFBd0QsRUFBRSxHQUFHLEVBQUU7UUFDaEUsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyx1QkFBdUI7SUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO1FBQ3RDLElBQUEsdUJBQWEsRUFBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLHVCQUF1QjtJQUN6RCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXp1cmVybVByb3ZpZGVyIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9wcm92aWRlclwiO1xuaW1wb3J0IHsgVGVzdGluZywgVGVycmFmb3JtU3RhY2sgfSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCAqIGFzIGFjciBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IFRlcnJhZm9ybVBsYW4gfSBmcm9tIFwiLi4vLi4vdGVzdGluZ1wiO1xuaW1wb3J0IFwiY2RrdGYvbGliL3Rlc3RpbmcvYWRhcHRlcnMvamVzdFwiO1xuXG5kZXNjcmliZShcIkF6dXJlIENvbnRhaW5lciBSZWdpc3RyeSBXaXRoIERlZmF1bHRzXCIsICgpID0+IHtcbiAgbGV0IHN0YWNrOiBUZXJyYWZvcm1TdGFjaztcbiAgbGV0IGZ1bGxTeW50aFJlc3VsdDogYW55O1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGNvbnN0IGFwcCA9IFRlc3RpbmcuYXBwKCk7XG4gICAgc3RhY2sgPSBuZXcgVGVycmFmb3JtU3RhY2soYXBwLCBcInRlc3RcIik7XG5cbiAgICBuZXcgQXp1cmVybVByb3ZpZGVyKHN0YWNrLCBcImF6dXJlRmVhdHVyZVwiLCB7IGZlYXR1cmVzOiB7fSB9KTtcblxuICAgIG5ldyBhY3IuUmVnaXN0cnkoc3RhY2ssIFwidGVzdEF6dXJlQ29udGFpbmVyUmVnaXN0cnlEZWZhdWx0c1wiLCB7XG4gICAgICBuYW1lOiBcImxhdGVzdFwiLFxuICAgICAgbG9jYXRpb246IFwiZWFzdHVzXCIsXG4gICAgfSk7XG5cbiAgICBmdWxsU3ludGhSZXN1bHQgPSBUZXN0aW5nLmZ1bGxTeW50aChzdGFjayk7IC8vIFNhdmUgdGhlIHJlc3VsdCBmb3IgcmV1c2VcbiAgfSk7XG5cbiAgaXQoXCJyZW5kZXJzIGFuIEF6dXJlIENvbnRhaW5lciBSZWdpc3RyeSB3aXRoIGRlZmF1bHRzIGFuZCBjaGVja3Mgc25hcHNob3RcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChUZXN0aW5nLnN5bnRoKHN0YWNrKSkudG9NYXRjaFNuYXBzaG90KCk7IC8vIENvbXBhcmUgdGhlIGFscmVhZHkgcHJlcGFyZWQgc3RhY2tcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGUgcHJvZHVjZWQgdGVycmFmb3JtIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChmdWxsU3ludGhSZXN1bHQpLnRvQmVWYWxpZFRlcnJhZm9ybSgpOyAvLyBVc2UgdGhlIHNhdmVkIHJlc3VsdFxuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHRoaXMgY2FuIGJlIHBsYW5uZWRcIiwgKCkgPT4ge1xuICAgIFRlcnJhZm9ybVBsYW4oZnVsbFN5bnRoUmVzdWx0KTsgLy8gVXNlIHRoZSBzYXZlZCByZXN1bHRcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -6,6 +6,7 @@ import { AzureResource } from "../../core-azure";
|
|
|
6
6
|
export declare class DataLake extends AzureResource {
|
|
7
7
|
readonly props: any;
|
|
8
8
|
resourceGroupName: string;
|
|
9
|
+
id: string;
|
|
9
10
|
resourceGroup: ResourceGroup;
|
|
10
11
|
readonly filesystems: Map<string, DataLakeFilesystem>;
|
|
11
12
|
readonly storageAccount: sa.Account;
|
|
@@ -51,6 +51,7 @@ class DataLake extends core_azure_1.AzureResource {
|
|
|
51
51
|
isHnsEnabled: true,
|
|
52
52
|
resourceGroup: this.resourceGroup,
|
|
53
53
|
});
|
|
54
|
+
this.id = this.storageAccount.id;
|
|
54
55
|
}
|
|
55
56
|
/**
|
|
56
57
|
* Creates a new Data Lake Gen2 filesystem within the specified storage account.
|
|
@@ -89,4 +90,4 @@ class DataLake extends core_azure_1.AzureResource {
|
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
exports.DataLake = DataLake;
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxha2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtZGF0YWxha2UvbGliL2RhdGFsYWtlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLDZDQUE0RTtBQUM1RSxpREFBaUQ7QUFDakQsaURBQWlEO0FBRWpELE1BQWEsUUFBUyxTQUFRLDBCQUFhO0lBUXpDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0EyQkc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQVU7UUFDbEQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO1FBQ3pELGlCQUFpQjtRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsSUFBSSxFQUFFLGNBQWM7WUFDcEIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztRQUVqRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLGdCQUFnQixFQUFFO1lBQ2pFLEdBQUcsSUFBSSxDQUFDLEtBQUs7WUFDYixXQUFXLEVBQUUsVUFBVTtZQUN2QixXQUFXLEVBQUUsV0FBVztZQUN4QixZQUFZLEVBQUUsSUFBSTtZQUNsQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBQ0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXFCRztJQUNJLHFCQUFxQixDQUMxQixJQUFZLEVBQ1osS0FBK0I7UUFFL0IsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLGVBQWUsSUFBSSxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsSUFBSSxNQUFNLEdBQXdDO1lBQ2hELElBQUksRUFBRSxJQUFJO1lBQ1YsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ3hDLEdBQUcsS0FBSztTQUNULENBQUM7UUFFRixNQUFNLGFBQWEsR0FBRyxJQUFJLCtCQUFrQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFakUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzFDLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRjtBQXBHRCw0QkFvR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXNvdXJjZUdyb3VwIH0gZnJvbSBcIkBjZGt0Zi9wcm92aWRlci1henVyZXJtL2xpYi9yZXNvdXJjZS1ncm91cFwiO1xuaW1wb3J0IHsgU3RvcmFnZURhdGFMYWtlR2VuMkZpbGVzeXN0ZW1Db25maWcgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3N0b3JhZ2UtZGF0YS1sYWtlLWdlbjItZmlsZXN5c3RlbVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IERhdGFMYWtlRmlsZXN5c3RlbSwgRGF0YUxha2VGaWxlc3lzdGVtQ29uZmlnIH0gZnJvbSBcIi4vZmlsZXN5c3RlbVwiO1xuaW1wb3J0ICogYXMgc2EgZnJvbSBcIi4uLy4uL2F6dXJlLXN0b3JhZ2VhY2NvdW50XCI7XG5pbXBvcnQgeyBBenVyZVJlc291cmNlIH0gZnJvbSBcIi4uLy4uL2NvcmUtYXp1cmVcIjtcblxuZXhwb3J0IGNsYXNzIERhdGFMYWtlIGV4dGVuZHMgQXp1cmVSZXNvdXJjZSB7XG4gIHJlYWRvbmx5IHByb3BzOiBhbnk7XG4gIHB1YmxpYyByZXNvdXJjZUdyb3VwTmFtZTogc3RyaW5nO1xuICBwdWJsaWMgaWQ6IHN0cmluZztcbiAgcHVibGljIHJlc291cmNlR3JvdXA6IFJlc291cmNlR3JvdXA7XG4gIHB1YmxpYyByZWFkb25seSBmaWxlc3lzdGVtczogTWFwPHN0cmluZywgRGF0YUxha2VGaWxlc3lzdGVtPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RvcmFnZUFjY291bnQ6IHNhLkFjY291bnQ7XG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGFuIEF6dXJlIERhdGEgTGFrZSBzdG9yYWdlIGFjY291bnQsIG1hbmFnaW5nIHRoZSBzdG9yYWdlIGFuZCByZXRyaWV2YWwgb2YgZGF0YSBpbiBhIHNjYWxhYmxlLCBzZWN1cmUgbWFubmVyLlxuICAgKlxuICAgKiBUaGlzIGNsYXNzIGVuY2Fwc3VsYXRlcyB0aGUgcHJvcGVydGllcyBhbmQgZnVuY3Rpb25hbGl0eSBvZiBhbiBBenVyZSBEYXRhIExha2UsIHdoaWNoIGlzIGJ1aWx0IG9uIHRvcCBvZiBBenVyZSBCbG9iIHN0b3JhZ2VcbiAgICogd2l0aCBlbmhhbmNlZCBjYXBhYmlsaXRpZXMgdG8gaGFuZGxlIGJpZyBkYXRhIGFuYWx5dGljcyBlZmZpY2llbnRseS4gVGhlIERhdGEgTGFrZSBlbmFibGVzIGJhdGNoIGFuZCByZWFsLXRpbWUgZGF0YSBwcm9jZXNzaW5nXG4gICAqIGFuZCBjb2xsYWJvcmF0aW9uIGZvciBhbmFseXRpY3MgcHVycG9zZXMuIEl0IHByb3ZpZGVzIGEgY2VudHJhbGl6ZWQgcGxhY2UgdG8gc3RvcmUgc3RydWN0dXJlZCBvciB1bnN0cnVjdHVyZWQgZGF0YSBmcm9tIG11bHRpcGxlXG4gICAqIHNvdXJjZXMgc28gdGhhdCBpdCBjYW4gYmUgcHJvY2Vzc2VkIGFuZCBhbmFseXplZC5cbiAgICpcbiAgICogUHJvcGVydGllczpcbiAgICogLSBgYWNjb3VudFJlcGxpY2F0aW9uVHlwZWA6IFNwZWNpZmllcyB0aGUgdHlwZSBvZiBkYXRhIHJlcGxpY2F0aW9uIGZvciBkdXJhYmlsaXR5IGFuZCBhdmFpbGFiaWxpdHkuIE9wdGlvbnMgaW5jbHVkZSBsb2NhbGx5IHJlZHVuZGFudCBzdG9yYWdlIChMUlMpLFxuICAgKiAgIGdlby1yZWR1bmRhbnQgc3RvcmFnZSAoR1JTKSwgYW5kIHJlYWQtYWNjZXNzIGdlby1yZWR1bmRhbnQgc3RvcmFnZSAoUkFHUlMpLlxuICAgKiAtIGBhY2NvdW50VGllcmA6IERlZmluZXMgdGhlIHBlcmZvcm1hbmNlIHRpZXIgKGUuZy4sIFN0YW5kYXJkLCBQcmVtaXVtKSB0aGF0IGFmZmVjdHMgdGhlIHR5cGUgb2YgaGFyZHdhcmUgdXNlZCBmb3IgdGhlIHN0b3JhZ2UgYWNjb3VudC5cbiAgICogLSBgbG9jYXRpb25gOiBUaGUgQXp1cmUgcmVnaW9uIHdoZXJlIHRoZSBzdG9yYWdlIGFjY291bnQgaXMgbG9jYXRlZCwgaW5mbHVlbmNpbmcgd2hlcmUgZGF0YSBpcyBzdG9yZWQgZ2VvZ3JhcGhpY2FsbHkuXG4gICAqIC0gYG5hbWVgOiBBIHVuaXF1ZSBuYW1lIGZvciB0aGUgc3RvcmFnZSBhY2NvdW50IHdpdGhpbiBBenVyZS5cbiAgICogLSBgcmVzb3VyY2VHcm91cGA6IFRoZSByZXNvdXJjZSBncm91cCB1bmRlciB3aGljaCB0aGUgc3RvcmFnZSBhY2NvdW50IGlzIGNhdGVnb3JpemVkIGFuZCBiaWxsZWQuXG4gICAqIC0gYHRhZ3NgOiBLZXktdmFsdWUgcGFpcnMgZm9yIHJlc291cmNlIGNhdGVnb3JpemF0aW9uIGFuZCBvcGVyYXRpb25hbCBtYW5hZ2VtZW50LlxuICAgKiAtIGBlbmFibGVIdHRwc1RyYWZmaWNPbmx5YDogRW5mb3JjZXMgSFRUUFMgZm9yIGRhdGEgdHJhbnNmZXIsIGVuaGFuY2luZyBzZWN1cml0eSBieSBlbmNyeXB0aW5nIGRhdGEgaW4gdHJhbnNpdC5cbiAgICogLSBgaWRlbnRpdHlgOiBNYW5hZ2VkIFNlcnZpY2UgSWRlbnRpdHkgY29uZmlndXJhdGlvbiBmb3IgQXp1cmUgQWN0aXZlIERpcmVjdG9yeSBhdXRoZW50aWNhdGlvbiBtYW5hZ2VtZW50LlxuICAgKiAtIGBhY2Nlc3NUaWVyYDogU3BlY2lmaWVzIHRoZSBkYXRhIGFjY2VzcyB0aWVyIChIb3QsIENvb2wpIGFmZmVjdGluZyBjb3N0IGFuZCByZXRyaWV2YWwgc3BlZWRzLlxuICAgKiAtIGBpc0huc0VuYWJsZWRgOiBJbmRpY2F0ZXMgaWYgdGhlIEhpZXJhcmNoaWNhbCBOYW1lc3BhY2UgaXMgZW5hYmxlZCwgcmVxdWlyZWQgZm9yIEF6dXJlIERhdGEgTGFrZSBTdG9yYWdlIEdlbjIuXG4gICAqIC0gYG1pblRsc1ZlcnNpb25gOiBUaGUgbWluaW11bSB2ZXJzaW9uIG9mIFRMUyByZXF1aXJlZCBmb3Igc2VjdXJpbmcgY29ubmVjdGlvbnMsIGVuaGFuY2luZyBkYXRhIHNlY3VyaXR5LlxuICAgKiAtIGBwdWJsaWNOZXR3b3JrQWNjZXNzRW5hYmxlZGA6IENvbnRyb2xzIHdoZXRoZXIgdGhlIHN0b3JhZ2UgYWNjb3VudCBpcyBhY2Nlc3NpYmxlIGZyb20gdGhlIHB1YmxpYyBpbnRlcm5ldC5cbiAgICogLSBgYWNjb3VudEtpbmRgOiBTcGVjaWZpZXMgdGhlIGtpbmQgb2Ygc3RvcmFnZSBhY2NvdW50LCB3aGljaCBjYW4gaW5mbHVlbmNlIHN1cHBvcnRlZCBmZWF0dXJlcyBhbmQgcHJpY2luZy5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRoaXMgY29uc3RydWN0IGlzIGRlZmluZWQsIHR5cGljYWxseSByZXByZXNlbnRpbmcgdGhlIGNsb3VkIGRldmVsb3BtZW50IGtpdCAoQ0RLKSBzdGFjay5cbiAgICogQHBhcmFtIGlkIC0gVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbnN0cnVjdC5cbiAgICogQHBhcmFtIHByb3BzIC0gUHJvcGVydGllcyBmb3IgY29uZmlndXJpbmcgdGhlIERhdGEgTGFrZSwgaW5jbHVkaW5nIGxvY2F0aW9uLCBuYW1lLCBzZWN1cml0eSBzZXR0aW5ncywgZXRjLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IGFueSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5maWxlc3lzdGVtcyA9IG5ldyBNYXA8c3RyaW5nLCBEYXRhTGFrZUZpbGVzeXN0ZW0+KCk7XG4gICAgLy8gRGVmYXVsdCB2YWx1ZXNcbiAgICB0aGlzLnByb3BzID0ge1xuICAgICAgbmFtZTogXCJ0ZXN0NDIzNDg4MDhcIixcbiAgICAgIGxvY2F0aW9uOiBcImVhc3R1c1wiLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfTtcblxuICAgIHRoaXMucmVzb3VyY2VHcm91cCA9IHRoaXMuc2V0dXBSZXNvdXJjZUdyb3VwKHByb3BzKTtcbiAgICB0aGlzLnJlc291cmNlR3JvdXBOYW1lID0gdGhpcy5yZXNvdXJjZUdyb3VwLm5hbWU7XG5cbiAgICB0aGlzLnN0b3JhZ2VBY2NvdW50ID0gbmV3IHNhLkFjY291bnQoc2NvcGUsIGlkICsgXCJzdG9yYWdlQWNjb3VudFwiLCB7XG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgYWNjb3VudFRpZXI6IFwiU3RhbmRhcmRcIixcbiAgICAgIGFjY291bnRLaW5kOiBcIlN0b3JhZ2VWMlwiLFxuICAgICAgaXNIbnNFbmFibGVkOiB0cnVlLFxuICAgICAgcmVzb3VyY2VHcm91cDogdGhpcy5yZXNvdXJjZUdyb3VwLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pZCA9IHRoaXMuc3RvcmFnZUFjY291bnQuaWQ7XG4gIH1cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgRGF0YSBMYWtlIEdlbjIgZmlsZXN5c3RlbSB3aXRoaW4gdGhlIHNwZWNpZmllZCBzdG9yYWdlIGFjY291bnQuXG4gICAqXG4gICAqIFRoaXMgbWV0aG9kIGluaXRpYWxpemVzIGEgbmV3IGZpbGVzeXN0ZW0gaW4gQXp1cmUgRGF0YSBMYWtlIFN0b3JhZ2UgR2VuMiwgYWxsb3dpbmcgZm9yIHRoZSBzdG9yYWdlIG9mIGhpZXJhcmNoaWNhbCBkYXRhIHN0cnVjdHVyZXMuXG4gICAqIEVhY2ggZmlsZXN5c3RlbSBjYW4gY29udGFpbiBtdWx0aXBsZSBkaXJlY3RvcmllcyBhbmQgZmlsZXMsIG9yZ2FuaXplZCBpbiBhIGhpZXJhcmNoaWNhbCBtYW5uZXIuIFRoaXMgbWV0aG9kIGVuc3VyZXMgdGhhdCB0aGUgZmlsZXN5c3RlbVxuICAgKiBuYW1lIGlzIHVuaXF1ZSB3aXRoaW4gdGhlIHN0b3JhZ2UgYWNjb3VudCB0byBwcmV2ZW50IG5hbWluZyBjb25mbGljdHMuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIG5ldyBmaWxlc3lzdGVtIHRvIGNyZWF0ZS4gVGhpcyBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgc3RvcmFnZSBhY2NvdW50LlxuICAgKiBAcGFyYW0gcHJvcHMgLSBDb25maWd1cmF0aW9uIHByb3BlcnRpZXMgZm9yIHRoZSBuZXcgZmlsZXN5c3RlbSwgaW5jbHVkaW5nIG1ldGFkYXRhLCBlbmNyeXB0aW9uIHNldHRpbmdzLCBhbmQgbW9yZS5cbiAgICogQHJldHVybnMgVGhlIG5ld2x5IGNyZWF0ZWQgRGF0YUxha2VGaWxlc3lzdGVtIGluc3RhbmNlLlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIGEgZmlsZXN5c3RlbSB3aXRoIHRoZSBzYW1lIG5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIHN0b3JhZ2UgYWNjb3VudC5cbiAgICpcbiAgICogRXhhbXBsZSB1c2FnZTpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBjb25zdCBmaWxlc3lzdGVtQ29uZmlnID0ge1xuICAgKiAgIHByb3BlcnRpZXM6IHsgcHJvcGVydHkxOiAndmFsdWUxJyB9LCAgLy8gRXhhbXBsZSBwcm9wZXJ0aWVzXG4gICAqICAgZGVmYXVsdEVuY3J5cHRpb25TY29wZTogJ215RW5jcnlwdGlvblNjb3BlJ1xuICAgKiB9O1xuICAgKiBjb25zdCBuZXdGaWxlc3lzdGVtID0gc3RvcmFnZUFjY291bnQuYWRkRGF0YUxha2VGaWxlc3lzdGVtKCdteU5ld0ZpbGVzeXN0ZW0nLCBmaWxlc3lzdGVtQ29uZmlnKTtcbiAgICogYGBgXG4gICAqIFRoaXMgZXhhbXBsZSBjcmVhdGVzIGEgbmV3IGZpbGVzeXN0ZW0gbmFtZWQgJ215TmV3RmlsZXN5c3RlbScgd2l0aCBzcGVjaWZpZWQgcHJvcGVydGllcyBhbmQgZW5jcnlwdGlvbiBzY29wZS5cbiAgICovXG4gIHB1YmxpYyBhZGREYXRhTGFrZUZpbGVzeXN0ZW0oXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIHByb3BzOiBEYXRhTGFrZUZpbGVzeXN0ZW1Db25maWcsXG4gICk6IERhdGFMYWtlRmlsZXN5c3RlbSB7XG4gICAgaWYgKHRoaXMuZmlsZXN5c3RlbXMuaGFzKG5hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZpbGVzeXN0ZW0gJyR7bmFtZX0nIGFscmVhZHkgZXhpc3RzLmApO1xuICAgIH1cblxuICAgIHZhciBjb25maWc6IFN0b3JhZ2VEYXRhTGFrZUdlbjJGaWxlc3lzdGVtQ29uZmlnID0ge1xuICAgICAgbmFtZTogbmFtZSxcbiAgICAgIHN0b3JhZ2VBY2NvdW50SWQ6IHRoaXMuc3RvcmFnZUFjY291bnQuaWQsXG4gICAgICAuLi5wcm9wcyxcbiAgICB9O1xuXG4gICAgY29uc3QgbmV3RmlsZXN5c3RlbSA9IG5ldyBEYXRhTGFrZUZpbGVzeXN0ZW0odGhpcywgbmFtZSwgY29uZmlnKTtcblxuICAgIHRoaXMuZmlsZXN5c3RlbXMuc2V0KG5hbWUsIG5ld0ZpbGVzeXN0ZW0pO1xuICAgIHJldHVybiBuZXdGaWxlc3lzdGVtO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "cdktf/lib/testing/adapters/jest";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const provider_1 = require("@cdktf/provider-azurerm/lib/provider");
|
|
4
|
+
const cdktf_1 = require("cdktf");
|
|
5
|
+
const storage = require("..");
|
|
6
|
+
const testing_1 = require("../../testing");
|
|
7
|
+
require("cdktf/lib/testing/adapters/jest");
|
|
8
|
+
describe("Azure Datalake With Defaults", () => {
|
|
9
|
+
let stack;
|
|
10
|
+
let fullSynthResult;
|
|
11
|
+
beforeEach(() => {
|
|
12
|
+
const app = cdktf_1.Testing.app();
|
|
13
|
+
stack = new cdktf_1.TerraformStack(app, "test");
|
|
14
|
+
new provider_1.AzurermProvider(stack, "azureFeature", { features: {} });
|
|
15
|
+
// Create a Storage Account with the defined rules
|
|
16
|
+
new storage.DataLake(stack, "storageaccount", {
|
|
17
|
+
name: "test42348808",
|
|
18
|
+
location: "eastus",
|
|
19
|
+
});
|
|
20
|
+
fullSynthResult = cdktf_1.Testing.fullSynth(stack); // Save the result for reuse
|
|
21
|
+
});
|
|
22
|
+
it("renders an Azure Storage Account with defaults and checks snapshot", () => {
|
|
23
|
+
expect(cdktf_1.Testing.synth(stack)).toMatchSnapshot(); // Compare the already prepared stack
|
|
24
|
+
});
|
|
25
|
+
it("check if the produced terraform configuration is valid", () => {
|
|
26
|
+
expect(fullSynthResult).toBeValidTerraform(); // Use the saved result
|
|
27
|
+
});
|
|
28
|
+
it("check if this can be planned", () => {
|
|
29
|
+
(0, testing_1.TerraformPlan)(fullSynthResult); // Use the saved result
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXp1cmVEYXRhbGFrZS5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F6dXJlLWRhdGFsYWtlL3Rlc3QvQXp1cmVEYXRhbGFrZS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUVBQXVFO0FBQ3ZFLGlDQUFnRDtBQUNoRCw4QkFBOEI7QUFDOUIsMkNBQThDO0FBQzlDLDJDQUF5QztBQUV6QyxRQUFRLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO0lBQzVDLElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLGVBQW9CLENBQUM7SUFFekIsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLE1BQU0sR0FBRyxHQUFHLGVBQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUMxQixLQUFLLEdBQUcsSUFBSSxzQkFBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV4QyxJQUFJLDBCQUFlLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTdELGtEQUFrRDtRQUNsRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFO1lBQzVDLElBQUksRUFBRSxjQUFjO1lBQ3BCLFFBQVEsRUFBRSxRQUFRO1NBQ25CLENBQUMsQ0FBQztRQUVILGVBQWUsR0FBRyxlQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsNEJBQTRCO0lBQzFFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLG9FQUFvRSxFQUFFLEdBQUcsRUFBRTtRQUM1RSxNQUFNLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMscUNBQXFDO0lBQ3ZGLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdEQUF3RCxFQUFFLEdBQUcsRUFBRTtRQUNoRSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QjtJQUN2RSxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSxHQUFHLEVBQUU7UUFDdEMsSUFBQSx1QkFBYSxFQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsdUJBQXVCO0lBQ3pELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBenVyZXJtUHJvdmlkZXIgfSBmcm9tIFwiQGNka3RmL3Byb3ZpZGVyLWF6dXJlcm0vbGliL3Byb3ZpZGVyXCI7XG5pbXBvcnQgeyBUZXN0aW5nLCBUZXJyYWZvcm1TdGFjayB9IGZyb20gXCJjZGt0ZlwiO1xuaW1wb3J0ICogYXMgc3RvcmFnZSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IFRlcnJhZm9ybVBsYW4gfSBmcm9tIFwiLi4vLi4vdGVzdGluZ1wiO1xuaW1wb3J0IFwiY2RrdGYvbGliL3Rlc3RpbmcvYWRhcHRlcnMvamVzdFwiO1xuXG5kZXNjcmliZShcIkF6dXJlIERhdGFsYWtlIFdpdGggRGVmYXVsdHNcIiwgKCkgPT4ge1xuICBsZXQgc3RhY2s6IFRlcnJhZm9ybVN0YWNrO1xuICBsZXQgZnVsbFN5bnRoUmVzdWx0OiBhbnk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgY29uc3QgYXBwID0gVGVzdGluZy5hcHAoKTtcbiAgICBzdGFjayA9IG5ldyBUZXJyYWZvcm1TdGFjayhhcHAsIFwidGVzdFwiKTtcblxuICAgIG5ldyBBenVyZXJtUHJvdmlkZXIoc3RhY2ssIFwiYXp1cmVGZWF0dXJlXCIsIHsgZmVhdHVyZXM6IHt9IH0pO1xuXG4gICAgLy8gQ3JlYXRlIGEgU3RvcmFnZSBBY2NvdW50IHdpdGggdGhlIGRlZmluZWQgcnVsZXNcbiAgICBuZXcgc3RvcmFnZS5EYXRhTGFrZShzdGFjaywgXCJzdG9yYWdlYWNjb3VudFwiLCB7XG4gICAgICBuYW1lOiBcInRlc3Q0MjM0ODgwOFwiLFxuICAgICAgbG9jYXRpb246IFwiZWFzdHVzXCIsXG4gICAgfSk7XG5cbiAgICBmdWxsU3ludGhSZXN1bHQgPSBUZXN0aW5nLmZ1bGxTeW50aChzdGFjayk7IC8vIFNhdmUgdGhlIHJlc3VsdCBmb3IgcmV1c2VcbiAgfSk7XG5cbiAgaXQoXCJyZW5kZXJzIGFuIEF6dXJlIFN0b3JhZ2UgQWNjb3VudCB3aXRoIGRlZmF1bHRzIGFuZCBjaGVja3Mgc25hcHNob3RcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChUZXN0aW5nLnN5bnRoKHN0YWNrKSkudG9NYXRjaFNuYXBzaG90KCk7IC8vIENvbXBhcmUgdGhlIGFscmVhZHkgcHJlcGFyZWQgc3RhY2tcbiAgfSk7XG5cbiAgaXQoXCJjaGVjayBpZiB0aGUgcHJvZHVjZWQgdGVycmFmb3JtIGNvbmZpZ3VyYXRpb24gaXMgdmFsaWRcIiwgKCkgPT4ge1xuICAgIGV4cGVjdChmdWxsU3ludGhSZXN1bHQpLnRvQmVWYWxpZFRlcnJhZm9ybSgpOyAvLyBVc2UgdGhlIHNhdmVkIHJlc3VsdFxuICB9KTtcblxuICBpdChcImNoZWNrIGlmIHRoaXMgY2FuIGJlIHBsYW5uZWRcIiwgKCkgPT4ge1xuICAgIFRlcnJhZm9ybVBsYW4oZnVsbFN5bnRoUmVzdWx0KTsgLy8gVXNlIHRoZSBzYXZlZCByZXN1bHRcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import "cdktf/lib/testing/adapters/jest";
|