@microsoft/terraform-cdk-constructs 1.0.0 → 1.2.0
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 +60999 -15780
- package/API.md +54947 -10610
- package/README.md +72 -36
- package/docs/monitoring-guide.md +206 -0
- package/docs/testing.md +84 -1
- package/lib/azure-actiongroup/index.d.ts +11 -0
- package/lib/azure-actiongroup/index.js +28 -0
- package/lib/azure-actiongroup/lib/action-group-schemas.d.ts +24 -0
- package/lib/azure-actiongroup/lib/action-group-schemas.js +201 -0
- package/lib/azure-actiongroup/lib/action-group.d.ts +312 -0
- package/lib/azure-actiongroup/lib/action-group.js +201 -0
- package/lib/azure-actiongroup/lib/index.d.ts +5 -0
- package/lib/azure-actiongroup/lib/index.js +22 -0
- package/lib/azure-actiongroup/test/action-group.integ.d.ts +9 -0
- package/lib/azure-actiongroup/test/action-group.integ.js +79 -0
- package/lib/azure-actiongroup/test/action-group.spec.d.ts +8 -0
- package/lib/azure-actiongroup/test/action-group.spec.js +602 -0
- package/lib/azure-activitylogalert/index.d.ts +11 -0
- package/lib/azure-activitylogalert/index.js +28 -0
- package/lib/azure-activitylogalert/lib/activity-log-alert-schemas.d.ts +24 -0
- package/lib/azure-activitylogalert/lib/activity-log-alert-schemas.js +182 -0
- package/lib/azure-activitylogalert/lib/activity-log-alert.d.ts +236 -0
- package/lib/azure-activitylogalert/lib/activity-log-alert.js +212 -0
- package/lib/azure-activitylogalert/lib/index.d.ts +5 -0
- package/lib/azure-activitylogalert/lib/index.js +22 -0
- package/lib/azure-activitylogalert/test/activity-log-alert.integ.d.ts +9 -0
- package/lib/azure-activitylogalert/test/activity-log-alert.integ.js +98 -0
- package/lib/azure-activitylogalert/test/activity-log-alert.spec.d.ts +9 -0
- package/lib/azure-activitylogalert/test/activity-log-alert.spec.js +1101 -0
- package/lib/azure-aks/index.d.ts +9 -0
- package/lib/azure-aks/index.js +28 -0
- package/lib/azure-aks/lib/aks-cluster-schemas.d.ts +505 -0
- package/lib/azure-aks/lib/aks-cluster-schemas.js +572 -0
- package/lib/azure-aks/lib/aks-cluster.d.ts +395 -0
- package/lib/azure-aks/lib/aks-cluster.js +489 -0
- package/lib/azure-aks/lib/index.d.ts +11 -0
- package/lib/azure-aks/lib/index.js +38 -0
- package/lib/azure-aks/test/aks-cluster.integ.d.ts +9 -0
- package/lib/azure-aks/test/aks-cluster.integ.js +260 -0
- package/lib/azure-aks/test/aks-cluster.spec.d.ts +8 -0
- package/lib/azure-aks/test/aks-cluster.spec.js +1396 -0
- package/lib/azure-diagnosticsettings/index.d.ts +7 -0
- package/lib/azure-diagnosticsettings/index.js +24 -0
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings-schemas.d.ts +50 -0
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings-schemas.js +207 -0
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings.d.ts +193 -0
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings.js +200 -0
- package/lib/azure-diagnosticsettings/lib/index.d.ts +8 -0
- package/lib/azure-diagnosticsettings/lib/index.js +25 -0
- package/lib/azure-diagnosticsettings/test/diagnostic-settings.spec.d.ts +8 -0
- package/lib/azure-diagnosticsettings/test/diagnostic-settings.spec.js +432 -0
- package/lib/azure-metricalert/index.d.ts +11 -0
- package/lib/azure-metricalert/index.js +28 -0
- package/lib/azure-metricalert/lib/index.d.ts +5 -0
- package/lib/azure-metricalert/lib/index.js +22 -0
- package/lib/azure-metricalert/lib/metric-alert-schemas.d.ts +24 -0
- package/lib/azure-metricalert/lib/metric-alert-schemas.js +242 -0
- package/lib/azure-metricalert/lib/metric-alert.d.ts +344 -0
- package/lib/azure-metricalert/lib/metric-alert.js +252 -0
- package/lib/azure-metricalert/test/metric-alert.integ.d.ts +9 -0
- package/lib/azure-metricalert/test/metric-alert.integ.js +123 -0
- package/lib/azure-metricalert/test/metric-alert.spec.d.ts +9 -0
- package/lib/azure-metricalert/test/metric-alert.spec.js +1266 -0
- package/lib/azure-networkinterface/index.d.ts +4 -0
- package/lib/azure-networkinterface/index.js +21 -0
- package/lib/azure-networkinterface/lib/index.d.ts +6 -0
- package/lib/azure-networkinterface/lib/index.js +22 -0
- package/lib/azure-networkinterface/lib/network-interface-schemas.d.ts +32 -0
- package/lib/azure-networkinterface/lib/network-interface-schemas.js +222 -0
- package/lib/azure-networkinterface/lib/network-interface.d.ts +265 -0
- package/lib/azure-networkinterface/lib/network-interface.js +228 -0
- package/lib/azure-networkinterface/test/network-interface.integ.d.ts +9 -0
- package/lib/azure-networkinterface/test/network-interface.integ.js +102 -0
- package/lib/azure-networkinterface/test/network-interface.spec.d.ts +8 -0
- package/lib/azure-networkinterface/test/network-interface.spec.js +655 -0
- package/lib/azure-networksecuritygroup/index.d.ts +6 -0
- package/lib/azure-networksecuritygroup/index.js +23 -0
- package/lib/azure-networksecuritygroup/lib/index.d.ts +5 -0
- package/lib/azure-networksecuritygroup/lib/index.js +16 -0
- package/lib/azure-networksecuritygroup/lib/network-security-group-schemas.d.ts +32 -0
- package/lib/azure-networksecuritygroup/lib/network-security-group-schemas.js +198 -0
- package/lib/azure-networksecuritygroup/lib/network-security-group.d.ts +268 -0
- package/lib/azure-networksecuritygroup/lib/network-security-group.js +248 -0
- package/lib/azure-networksecuritygroup/test/network-security-group.integ.d.ts +9 -0
- package/lib/azure-networksecuritygroup/test/network-security-group.integ.js +151 -0
- package/lib/azure-networksecuritygroup/test/network-security-group.spec.d.ts +8 -0
- package/lib/azure-networksecuritygroup/test/network-security-group.spec.js +652 -0
- package/lib/azure-publicipaddress/index.d.ts +6 -0
- package/lib/azure-publicipaddress/index.js +23 -0
- package/lib/azure-publicipaddress/lib/index.d.ts +9 -0
- package/lib/azure-publicipaddress/lib/index.js +19 -0
- package/lib/azure-publicipaddress/lib/public-ip-address-schemas.d.ts +32 -0
- package/lib/azure-publicipaddress/lib/public-ip-address-schemas.js +227 -0
- package/lib/azure-publicipaddress/lib/public-ip-address.d.ts +256 -0
- package/lib/azure-publicipaddress/lib/public-ip-address.js +267 -0
- package/lib/azure-publicipaddress/test/public-ip-address.integ.d.ts +9 -0
- package/lib/azure-publicipaddress/test/public-ip-address.integ.js +75 -0
- package/lib/azure-publicipaddress/test/public-ip-address.spec.d.ts +15 -0
- package/lib/azure-publicipaddress/test/public-ip-address.spec.js +498 -0
- package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
- package/lib/azure-resourcegroup/test/resource-group.integ.js +23 -11
- package/lib/azure-storageaccount/lib/storage-account-schemas.d.ts +98 -0
- package/lib/azure-storageaccount/lib/storage-account-schemas.js +1 -1
- package/lib/azure-storageaccount/lib/storage-account.d.ts +38 -1
- package/lib/azure-storageaccount/lib/storage-account.js +138 -2
- package/lib/azure-storageaccount/test/storage-account.integ.js +91 -12
- package/lib/azure-subnet/index.d.ts +4 -0
- package/lib/azure-subnet/index.js +21 -0
- package/lib/azure-subnet/lib/index.d.ts +5 -0
- package/lib/azure-subnet/lib/index.js +22 -0
- package/lib/azure-subnet/lib/subnet-schemas.d.ts +32 -0
- package/lib/azure-subnet/lib/subnet-schemas.js +237 -0
- package/lib/azure-subnet/lib/subnet.d.ts +285 -0
- package/lib/azure-subnet/lib/subnet.js +254 -0
- package/lib/azure-subnet/test/subnet.integ.d.ts +11 -0
- package/lib/azure-subnet/test/subnet.integ.js +80 -0
- package/lib/azure-subnet/test/subnet.spec.d.ts +8 -0
- package/lib/azure-subnet/test/subnet.spec.js +396 -0
- package/lib/azure-virtualmachine/index.d.ts +7 -0
- package/lib/azure-virtualmachine/index.js +24 -0
- package/lib/azure-virtualmachine/lib/index.d.ts +11 -0
- package/lib/azure-virtualmachine/lib/index.js +38 -0
- package/lib/azure-virtualmachine/lib/virtual-machine-schemas.d.ts +327 -0
- package/lib/azure-virtualmachine/lib/virtual-machine-schemas.js +544 -0
- package/lib/azure-virtualmachine/lib/virtual-machine.d.ts +377 -0
- package/lib/azure-virtualmachine/lib/virtual-machine.js +462 -0
- package/lib/azure-virtualmachine/test/virtual-machine.integ.d.ts +9 -0
- package/lib/azure-virtualmachine/test/virtual-machine.integ.js +220 -0
- package/lib/azure-virtualmachine/test/virtual-machine.spec.d.ts +9 -0
- package/lib/azure-virtualmachine/test/virtual-machine.spec.js +1032 -0
- package/lib/azure-virtualnetwork/index.d.ts +10 -0
- package/lib/azure-virtualnetwork/index.js +28 -0
- package/lib/azure-virtualnetwork/lib/index.d.ts +9 -0
- package/lib/azure-virtualnetwork/lib/index.js +22 -0
- package/lib/azure-virtualnetwork/lib/virtual-network-schemas.d.ts +32 -0
- package/lib/azure-virtualnetwork/lib/virtual-network-schemas.js +236 -0
- package/lib/azure-virtualnetwork/lib/virtual-network.d.ts +213 -0
- package/lib/azure-virtualnetwork/lib/virtual-network.js +245 -0
- package/lib/azure-virtualnetwork/test/virtual-network.integ.d.ts +9 -0
- package/lib/azure-virtualnetwork/test/virtual-network.integ.js +91 -0
- package/lib/azure-virtualnetwork/test/virtual-network.spec.d.ts +8 -0
- package/lib/azure-virtualnetwork/test/virtual-network.spec.js +398 -0
- package/lib/azure-vmss/index.d.ts +6 -0
- package/lib/azure-vmss/index.js +23 -0
- package/lib/azure-vmss/lib/index.d.ts +9 -0
- package/lib/azure-vmss/lib/index.js +39 -0
- package/lib/azure-vmss/lib/virtual-machine-scale-set.d.ts +258 -0
- package/lib/azure-vmss/lib/virtual-machine-scale-set.js +503 -0
- package/lib/azure-vmss/lib/vmss-schemas.d.ts +472 -0
- package/lib/azure-vmss/lib/vmss-schemas.js +444 -0
- package/lib/azure-vmss/test/virtual-machine-scale-set.integ.d.ts +15 -0
- package/lib/azure-vmss/test/virtual-machine-scale-set.integ.js +261 -0
- package/lib/azure-vmss/test/virtual-machine-scale-set.spec.d.ts +8 -0
- package/lib/azure-vmss/test/virtual-machine-scale-set.spec.js +997 -0
- package/lib/core-azure/lib/azapi/azapi-resource.d.ts +95 -27
- package/lib/core-azure/lib/azapi/azapi-resource.js +95 -58
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.d.ts +33 -21
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.js +69 -27
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.d.ts +134 -120
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.js +209 -59
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-action/index.d.ts +141 -128
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-action/index.js +183 -36
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-id/index.d.ts +55 -43
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-id/index.js +94 -26
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-list/index.d.ts +129 -116
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource-list/index.js +155 -32
- package/lib/core-azure/lib/azapi/providers-azapi/data-plane-resource/index.d.ts +187 -174
- package/lib/core-azure/lib/azapi/providers-azapi/data-plane-resource/index.js +267 -48
- package/lib/core-azure/lib/azapi/providers-azapi/index.d.ts +10 -10
- package/lib/core-azure/lib/azapi/providers-azapi/index.js +1 -1
- package/lib/core-azure/lib/azapi/providers-azapi/lazy-index.d.ts +0 -0
- package/lib/core-azure/lib/azapi/providers-azapi/lazy-index.js +13 -0
- package/lib/core-azure/lib/azapi/providers-azapi/provider/index.d.ts +174 -162
- package/lib/core-azure/lib/azapi/providers-azapi/provider/index.js +274 -14
- package/lib/core-azure/lib/azapi/providers-azapi/resource/index.d.ts +239 -225
- package/lib/core-azure/lib/azapi/providers-azapi/resource/index.js +360 -76
- package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.d.ts +163 -150
- package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.js +221 -46
- package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.d.ts +162 -149
- package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.js +249 -50
- package/lib/core-azure/lib/azapi/schema-mapper/schema-mapper.js +4 -2
- package/lib/core-azure/lib/version-manager/api-version-manager.js +1 -1
- package/lib/core-azure/lib/version-manager/interfaces/version-interfaces.js +7 -7
- package/lib/index.d.ts +37 -0
- package/lib/index.js +40 -2
- package/lib/testing/index.d.ts +92 -2
- package/lib/testing/index.js +258 -18
- package/lib/testing/lib/cleanup.d.ts +229 -0
- package/lib/testing/lib/cleanup.js +331 -0
- package/lib/testing/lib/metadata.d.ts +151 -0
- package/lib/testing/lib/metadata.js +180 -0
- package/lib/testing/lib/naming.d.ts +96 -0
- package/lib/testing/lib/naming.js +336 -0
- package/node_modules/uuid/LICENSE.md +9 -0
- package/node_modules/uuid/README.md +510 -0
- package/node_modules/uuid/dist/cjs/index.d.ts +15 -0
- package/node_modules/uuid/dist/cjs/index.js +31 -0
- package/node_modules/uuid/dist/cjs/max.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/max.js +3 -0
- package/node_modules/uuid/dist/cjs/md5.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/md5.js +13 -0
- package/node_modules/uuid/dist/cjs/native.d.ts +6 -0
- package/node_modules/uuid/dist/cjs/native.js +4 -0
- package/node_modules/uuid/dist/cjs/nil.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/nil.js +3 -0
- package/node_modules/uuid/dist/cjs/package.json +1 -0
- package/node_modules/uuid/dist/cjs/parse.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/parse.js +11 -0
- package/node_modules/uuid/dist/cjs/regex.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/regex.js +3 -0
- package/node_modules/uuid/dist/cjs/rng.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/rng.js +13 -0
- package/node_modules/uuid/dist/cjs/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/sha1.js +13 -0
- package/node_modules/uuid/dist/cjs/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/cjs/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs/types.d.ts +21 -0
- package/node_modules/uuid/dist/cjs/types.js +2 -0
- package/node_modules/uuid/dist/cjs/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs/v1.d.ts +11 -0
- package/node_modules/uuid/dist/cjs/v1.js +87 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs/v3.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v3.js +14 -0
- package/node_modules/uuid/dist/cjs/v35.d.ts +7 -0
- package/node_modules/uuid/dist/cjs/v35.js +41 -0
- package/node_modules/uuid/dist/cjs/v4.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v4.js +29 -0
- package/node_modules/uuid/dist/cjs/v5.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v5.js +14 -0
- package/node_modules/uuid/dist/cjs/v6.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v6.js +19 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs/v7.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v7.js +69 -0
- package/node_modules/uuid/dist/cjs/validate.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/validate.js +7 -0
- package/node_modules/uuid/dist/cjs/version.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/version.js +10 -0
- package/node_modules/uuid/dist/cjs-browser/index.d.ts +15 -0
- package/node_modules/uuid/dist/cjs-browser/index.js +31 -0
- package/node_modules/uuid/dist/cjs-browser/max.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/max.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/md5.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/md5.js +137 -0
- package/node_modules/uuid/dist/cjs-browser/native.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/native.js +4 -0
- package/node_modules/uuid/dist/cjs-browser/nil.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/nil.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/package.json +1 -0
- package/node_modules/uuid/dist/cjs-browser/parse.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/parse.js +11 -0
- package/node_modules/uuid/dist/cjs-browser/regex.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/regex.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/rng.d.ts +1 -0
- package/node_modules/uuid/dist/cjs-browser/rng.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/sha1.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/cjs-browser/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs-browser/types.d.ts +21 -0
- package/node_modules/uuid/dist/cjs-browser/types.js +2 -0
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/v1.d.ts +11 -0
- package/node_modules/uuid/dist/cjs-browser/v1.js +87 -0
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v3.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v3.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v35.d.ts +7 -0
- package/node_modules/uuid/dist/cjs-browser/v35.js +41 -0
- package/node_modules/uuid/dist/cjs-browser/v4.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/v4.js +29 -0
- package/node_modules/uuid/dist/cjs-browser/v5.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v5.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v6.d.ts +4 -0
- package/node_modules/uuid/dist/cjs-browser/v6.js +19 -0
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v7.d.ts +9 -0
- package/node_modules/uuid/dist/cjs-browser/v7.js +69 -0
- package/node_modules/uuid/dist/cjs-browser/validate.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/validate.js +7 -0
- package/node_modules/uuid/dist/cjs-browser/version.d.ts +2 -0
- package/node_modules/uuid/dist/cjs-browser/version.js +10 -0
- package/node_modules/uuid/dist/esm/bin/uuid +2 -0
- package/node_modules/uuid/dist/esm/index.d.ts +15 -0
- package/node_modules/uuid/dist/esm/index.js +14 -0
- package/node_modules/uuid/dist/esm/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm/max.js +1 -0
- package/node_modules/uuid/dist/esm/md5.d.ts +4 -0
- package/node_modules/uuid/dist/esm/md5.js +11 -0
- package/node_modules/uuid/dist/esm/native.d.ts +6 -0
- package/node_modules/uuid/dist/esm/native.js +2 -0
- package/node_modules/uuid/dist/esm/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm/nil.js +1 -0
- package/node_modules/uuid/dist/esm/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm/parse.js +9 -0
- package/node_modules/uuid/dist/esm/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm/regex.js +1 -0
- package/node_modules/uuid/dist/esm/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm/rng.js +10 -0
- package/node_modules/uuid/dist/esm/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/esm/sha1.js +11 -0
- package/node_modules/uuid/dist/esm/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm/stringify.js +35 -0
- package/node_modules/uuid/dist/esm/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm/types.js +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm/v1.js +83 -0
- package/node_modules/uuid/dist/esm/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v1ToV6.js +10 -0
- package/node_modules/uuid/dist/esm/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v3.js +9 -0
- package/node_modules/uuid/dist/esm/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm/v35.js +36 -0
- package/node_modules/uuid/dist/esm/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v4.js +27 -0
- package/node_modules/uuid/dist/esm/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v5.js +9 -0
- package/node_modules/uuid/dist/esm/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v6.js +17 -0
- package/node_modules/uuid/dist/esm/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v6ToV1.js +10 -0
- package/node_modules/uuid/dist/esm/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v7.js +65 -0
- package/node_modules/uuid/dist/esm/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm/validate.js +5 -0
- package/node_modules/uuid/dist/esm/version.d.ts +2 -0
- package/node_modules/uuid/dist/esm/version.js +8 -0
- package/node_modules/uuid/dist/esm-browser/index.d.ts +15 -0
- package/node_modules/uuid/dist/esm-browser/index.js +14 -0
- package/node_modules/uuid/dist/esm-browser/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/max.js +1 -0
- package/node_modules/uuid/dist/esm-browser/md5.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/md5.js +135 -0
- package/node_modules/uuid/dist/esm-browser/native.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/native.js +2 -0
- package/node_modules/uuid/dist/esm-browser/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/nil.js +1 -0
- package/node_modules/uuid/dist/esm-browser/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/parse.js +9 -0
- package/node_modules/uuid/dist/esm-browser/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/regex.js +1 -0
- package/node_modules/uuid/dist/esm-browser/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/rng.js +11 -0
- package/node_modules/uuid/dist/esm-browser/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/sha1.js +70 -0
- package/node_modules/uuid/dist/esm-browser/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm-browser/stringify.js +35 -0
- package/node_modules/uuid/dist/esm-browser/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm-browser/types.js +1 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm-browser/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm-browser/v1.js +83 -0
- package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v1ToV6.js +10 -0
- package/node_modules/uuid/dist/esm-browser/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v3.js +9 -0
- package/node_modules/uuid/dist/esm-browser/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm-browser/v35.js +36 -0
- package/node_modules/uuid/dist/esm-browser/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v4.js +27 -0
- package/node_modules/uuid/dist/esm-browser/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v5.js +9 -0
- package/node_modules/uuid/dist/esm-browser/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v6.js +17 -0
- package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v6ToV1.js +10 -0
- package/node_modules/uuid/dist/esm-browser/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v7.js +65 -0
- package/node_modules/uuid/dist/esm-browser/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/validate.js +5 -0
- package/node_modules/uuid/dist/esm-browser/version.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/version.js +8 -0
- package/node_modules/uuid/package.json +132 -0
- package/package.json +17 -12
- package/scripts/cleanup-test-resources.ts +369 -0
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Azure Virtual Machine Scale Set implementation using AzapiResource framework
|
|
3
|
+
*
|
|
4
|
+
* This class provides a single, version-aware implementation for Azure Virtual Machine Scale Sets
|
|
5
|
+
* that automatically handles version management, schema validation, and property transformation
|
|
6
|
+
* across all supported API versions.
|
|
7
|
+
*
|
|
8
|
+
* Supported API Versions:
|
|
9
|
+
* - 2025-01-02 (Active)
|
|
10
|
+
* - 2025-02-01 (Active)
|
|
11
|
+
* - 2025-04-01 (Active, Latest)
|
|
12
|
+
*
|
|
13
|
+
* Features:
|
|
14
|
+
* - Automatic latest version resolution when no version is specified
|
|
15
|
+
* - Explicit version pinning for stability requirements
|
|
16
|
+
* - Schema-driven validation and transformation
|
|
17
|
+
* - Full JSII compliance for multi-language support
|
|
18
|
+
* - Comprehensive support for VMSS features (scaling, upgrades, orchestration)
|
|
19
|
+
* - Code reuse from VM implementation for common profiles
|
|
20
|
+
*/
|
|
21
|
+
import * as cdktf from "cdktf";
|
|
22
|
+
import { Construct } from "constructs";
|
|
23
|
+
import { VirtualMachineScaleSetSku, OrchestrationMode, VirtualMachineScaleSetProps, VmssMonitoringOptions } from "./vmss-schemas";
|
|
24
|
+
import { AzapiResource, MonitoringConfig } from "../../core-azure/lib/azapi/azapi-resource";
|
|
25
|
+
import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
26
|
+
/**
|
|
27
|
+
* Unified Azure Virtual Machine Scale Set implementation
|
|
28
|
+
*
|
|
29
|
+
* This class provides a single, version-aware implementation that automatically handles version
|
|
30
|
+
* resolution, schema validation, and property transformation while maintaining full JSII compliance.
|
|
31
|
+
*
|
|
32
|
+
* The class uses the AzapiResource framework to provide:
|
|
33
|
+
* - Automatic latest version resolution (2025-04-01 as of this implementation)
|
|
34
|
+
* - Support for explicit version pinning when stability is required
|
|
35
|
+
* - Schema-driven property validation and transformation
|
|
36
|
+
* - Migration analysis and deprecation warnings
|
|
37
|
+
* - Full JSII compliance for multi-language support
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* // Basic Uniform VMSS with Linux VMs:
|
|
41
|
+
* const vmss = new VirtualMachineScaleSet(this, "vmss", {
|
|
42
|
+
* name: "my-vmss",
|
|
43
|
+
* location: "eastus",
|
|
44
|
+
* resourceGroupId: resourceGroup.id,
|
|
45
|
+
* sku: {
|
|
46
|
+
* name: "Standard_D2s_v3",
|
|
47
|
+
* capacity: 3
|
|
48
|
+
* },
|
|
49
|
+
* orchestrationMode: "Uniform",
|
|
50
|
+
* upgradePolicy: {
|
|
51
|
+
* mode: "Automatic"
|
|
52
|
+
* },
|
|
53
|
+
* virtualMachineProfile: {
|
|
54
|
+
* storageProfile: {
|
|
55
|
+
* imageReference: {
|
|
56
|
+
* publisher: "Canonical",
|
|
57
|
+
* offer: "0001-com-ubuntu-server-jammy",
|
|
58
|
+
* sku: "22_04-lts-gen2",
|
|
59
|
+
* version: "latest"
|
|
60
|
+
* },
|
|
61
|
+
* osDisk: {
|
|
62
|
+
* createOption: "FromImage",
|
|
63
|
+
* managedDisk: {
|
|
64
|
+
* storageAccountType: "Premium_LRS"
|
|
65
|
+
* }
|
|
66
|
+
* }
|
|
67
|
+
* },
|
|
68
|
+
* osProfile: {
|
|
69
|
+
* computerName: "vmss-vm",
|
|
70
|
+
* adminUsername: "azureuser",
|
|
71
|
+
* linuxConfiguration: {
|
|
72
|
+
* disablePasswordAuthentication: true,
|
|
73
|
+
* ssh: {
|
|
74
|
+
* publicKeys: [{
|
|
75
|
+
* path: "/home/azureuser/.ssh/authorized_keys",
|
|
76
|
+
* keyData: "ssh-rsa AAAA..."
|
|
77
|
+
* }]
|
|
78
|
+
* }
|
|
79
|
+
* }
|
|
80
|
+
* },
|
|
81
|
+
* networkProfile: {
|
|
82
|
+
* networkInterfaceConfigurations: [{
|
|
83
|
+
* name: "nic-config",
|
|
84
|
+
* properties: {
|
|
85
|
+
* primary: true,
|
|
86
|
+
* ipConfigurations: [{
|
|
87
|
+
* name: "ip-config",
|
|
88
|
+
* properties: {
|
|
89
|
+
* subnet: {
|
|
90
|
+
* id: subnet.id
|
|
91
|
+
* }
|
|
92
|
+
* }
|
|
93
|
+
* }]
|
|
94
|
+
* }
|
|
95
|
+
* }],
|
|
96
|
+
* // networkApiVersion is automatically set to latest when not specified
|
|
97
|
+
* // Explicitly set only if you need to pin to a specific version
|
|
98
|
+
* // networkApiVersion: "2024-10-01"
|
|
99
|
+
* }
|
|
100
|
+
* }
|
|
101
|
+
* });
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* // Flexible orchestration mode with rolling upgrades:
|
|
105
|
+
* const flexibleVmss = new VirtualMachineScaleSet(this, "flexible-vmss", {
|
|
106
|
+
* name: "my-flexible-vmss",
|
|
107
|
+
* location: "eastus",
|
|
108
|
+
* resourceGroupId: resourceGroup.id,
|
|
109
|
+
* sku: {
|
|
110
|
+
* name: "Standard_D2s_v3",
|
|
111
|
+
* capacity: 5
|
|
112
|
+
* },
|
|
113
|
+
* orchestrationMode: "Flexible",
|
|
114
|
+
* upgradePolicy: {
|
|
115
|
+
* mode: "Rolling",
|
|
116
|
+
* rollingUpgradePolicy: {
|
|
117
|
+
* maxBatchInstancePercent: 20,
|
|
118
|
+
* maxUnhealthyInstancePercent: 20,
|
|
119
|
+
* maxUnhealthyUpgradedInstancePercent: 20,
|
|
120
|
+
* pauseTimeBetweenBatches: "PT5S"
|
|
121
|
+
* }
|
|
122
|
+
* },
|
|
123
|
+
* automaticRepairsPolicy: {
|
|
124
|
+
* enabled: true,
|
|
125
|
+
* gracePeriod: "PT30M"
|
|
126
|
+
* }
|
|
127
|
+
* });
|
|
128
|
+
*
|
|
129
|
+
* @stability stable
|
|
130
|
+
*/
|
|
131
|
+
export declare class VirtualMachineScaleSet extends AzapiResource {
|
|
132
|
+
/**
|
|
133
|
+
* Returns a production-ready monitoring configuration for Virtual Machine Scale Sets
|
|
134
|
+
*
|
|
135
|
+
* This static factory method provides a complete MonitoringConfig with sensible defaults
|
|
136
|
+
* for VMSS monitoring including CPU, memory, disk queue alerts, and deletion tracking.
|
|
137
|
+
*
|
|
138
|
+
* VMSS uses a lower CPU threshold (75%) compared to single VMs (80%) to allow headroom
|
|
139
|
+
* for scaling operations before reaching saturation.
|
|
140
|
+
*
|
|
141
|
+
* @param actionGroupId - The resource ID of the action group for alert notifications
|
|
142
|
+
* @param workspaceId - Optional Log Analytics workspace ID for diagnostic settings
|
|
143
|
+
* @param options - Optional configuration to customize thresholds and enable/disable specific alerts
|
|
144
|
+
* @returns A complete MonitoringConfig object ready to use in VirtualMachineScaleSet props
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* // Basic usage with all defaults
|
|
148
|
+
* const vmss = new VirtualMachineScaleSet(this, "vmss", {
|
|
149
|
+
* // ... other properties ...
|
|
150
|
+
* monitoring: VirtualMachineScaleSet.defaultMonitoring(actionGroup.id, workspace.id)
|
|
151
|
+
* });
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* // Custom thresholds and severities
|
|
155
|
+
* const vmss = new VirtualMachineScaleSet(this, "vmss", {
|
|
156
|
+
* // ... other properties ...
|
|
157
|
+
* monitoring: VirtualMachineScaleSet.defaultMonitoring(
|
|
158
|
+
* actionGroup.id,
|
|
159
|
+
* workspace.id,
|
|
160
|
+
* {
|
|
161
|
+
* cpuThreshold: 85,
|
|
162
|
+
* memoryThreshold: 536870912, // 512MB
|
|
163
|
+
* enableDiskQueueAlert: false,
|
|
164
|
+
* cpuAlertSeverity: 1 // Error level
|
|
165
|
+
* }
|
|
166
|
+
* )
|
|
167
|
+
* });
|
|
168
|
+
*
|
|
169
|
+
* @stability stable
|
|
170
|
+
*/
|
|
171
|
+
static defaultMonitoring(actionGroupId: string, workspaceId?: string, options?: VmssMonitoringOptions): MonitoringConfig;
|
|
172
|
+
/**
|
|
173
|
+
* Static initialization flag to ensure schemas are registered only once
|
|
174
|
+
*/
|
|
175
|
+
private static schemasRegistered;
|
|
176
|
+
/**
|
|
177
|
+
* Ensures that VMSS schemas are registered with the ApiVersionManager
|
|
178
|
+
* This is called once during the first VirtualMachineScaleSet instantiation
|
|
179
|
+
*/
|
|
180
|
+
private static ensureSchemasRegistered;
|
|
181
|
+
/**
|
|
182
|
+
* The input properties for this VMSS instance
|
|
183
|
+
*/
|
|
184
|
+
readonly props: VirtualMachineScaleSetProps;
|
|
185
|
+
readonly idOutput: cdktf.TerraformOutput;
|
|
186
|
+
readonly locationOutput: cdktf.TerraformOutput;
|
|
187
|
+
readonly nameOutput: cdktf.TerraformOutput;
|
|
188
|
+
readonly tagsOutput: cdktf.TerraformOutput;
|
|
189
|
+
readonly uniqueIdOutput: cdktf.TerraformOutput;
|
|
190
|
+
readonly id: string;
|
|
191
|
+
readonly tags: {
|
|
192
|
+
[key: string]: string;
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Creates a new Azure Virtual Machine Scale Set using the AzapiResource framework
|
|
196
|
+
*
|
|
197
|
+
* The constructor automatically handles version resolution, schema registration,
|
|
198
|
+
* validation, and resource creation.
|
|
199
|
+
*
|
|
200
|
+
* @param scope - The scope in which to define this construct
|
|
201
|
+
* @param id - The unique identifier for this instance
|
|
202
|
+
* @param props - Configuration properties for the Virtual Machine Scale Set
|
|
203
|
+
*/
|
|
204
|
+
constructor(scope: Construct, id: string, props: VirtualMachineScaleSetProps);
|
|
205
|
+
/**
|
|
206
|
+
* Gets the default API version to use when no explicit version is specified
|
|
207
|
+
* Returns the most recent stable version as the default
|
|
208
|
+
*/
|
|
209
|
+
protected defaultVersion(): string;
|
|
210
|
+
/**
|
|
211
|
+
* Gets the Azure resource type for Virtual Machine Scale Sets
|
|
212
|
+
*/
|
|
213
|
+
protected resourceType(): string;
|
|
214
|
+
/**
|
|
215
|
+
* Gets the API schema for the resolved version
|
|
216
|
+
* Uses the framework's schema resolution to get the appropriate schema
|
|
217
|
+
*/
|
|
218
|
+
protected apiSchema(): ApiSchema;
|
|
219
|
+
/**
|
|
220
|
+
* Creates the resource body for the Azure API call
|
|
221
|
+
* Transforms the input properties into the JSON format expected by Azure REST API
|
|
222
|
+
*/
|
|
223
|
+
protected createResourceBody(props: any): any;
|
|
224
|
+
/**
|
|
225
|
+
* Get the unique ID (unique identifier assigned by Azure)
|
|
226
|
+
*/
|
|
227
|
+
get uniqueId(): string;
|
|
228
|
+
/**
|
|
229
|
+
* Get the provisioning state of the Virtual Machine Scale Set
|
|
230
|
+
*/
|
|
231
|
+
get provisioningState(): string;
|
|
232
|
+
/**
|
|
233
|
+
* Get the SKU configuration
|
|
234
|
+
*/
|
|
235
|
+
get sku(): VirtualMachineScaleSetSku;
|
|
236
|
+
/**
|
|
237
|
+
* Get the capacity (number of VMs)
|
|
238
|
+
*/
|
|
239
|
+
get capacity(): number | undefined;
|
|
240
|
+
/**
|
|
241
|
+
* Get the orchestration mode
|
|
242
|
+
*/
|
|
243
|
+
get orchestrationMode(): OrchestrationMode | undefined;
|
|
244
|
+
/**
|
|
245
|
+
* Add a tag to the Virtual Machine Scale Set
|
|
246
|
+
* Note: This modifies the construct props but requires a new deployment to take effect
|
|
247
|
+
*/
|
|
248
|
+
addTag(key: string, value: string): void;
|
|
249
|
+
/**
|
|
250
|
+
* Remove a tag from the Virtual Machine Scale Set
|
|
251
|
+
* Note: This modifies the construct props but requires a new deployment to take effect
|
|
252
|
+
*/
|
|
253
|
+
removeTag(key: string): void;
|
|
254
|
+
/**
|
|
255
|
+
* Applies ignore changes lifecycle rules if specified in props
|
|
256
|
+
*/
|
|
257
|
+
private _applyIgnoreChanges;
|
|
258
|
+
}
|