@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,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* API schemas for Azure Action Group across all supported versions
|
|
4
|
+
*
|
|
5
|
+
* This file defines the complete API schemas for Microsoft.Insights/actionGroups
|
|
6
|
+
* across all supported API versions. The schemas are used by the AzapiResource
|
|
7
|
+
* framework for validation, transformation, and version management.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.ACTION_GROUP_TYPE = exports.ALL_ACTION_GROUP_VERSIONS = exports.ACTION_GROUP_VERSION_2021_09_01 = exports.ACTION_GROUP_SCHEMA_2021_09_01 = void 0;
|
|
11
|
+
const version_interfaces_1 = require("../../core-azure/lib/version-manager/interfaces/version-interfaces");
|
|
12
|
+
// =============================================================================
|
|
13
|
+
// COMMON PROPERTY DEFINITIONS
|
|
14
|
+
// =============================================================================
|
|
15
|
+
/**
|
|
16
|
+
* Common property definitions shared across all Action Group versions
|
|
17
|
+
*/
|
|
18
|
+
const COMMON_ACTION_GROUP_PROPERTIES = {
|
|
19
|
+
location: {
|
|
20
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
21
|
+
required: true,
|
|
22
|
+
description: "Azure region (global for action groups)",
|
|
23
|
+
defaultValue: "global",
|
|
24
|
+
validation: [
|
|
25
|
+
{
|
|
26
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
27
|
+
message: "Location is required for Action Groups",
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
},
|
|
31
|
+
name: {
|
|
32
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
33
|
+
required: true,
|
|
34
|
+
description: "Name of the action group",
|
|
35
|
+
validation: [
|
|
36
|
+
{
|
|
37
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
38
|
+
message: "Name is required",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
42
|
+
value: "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,258}[a-zA-Z0-9_]$",
|
|
43
|
+
message: "Action group name must be 2-260 characters",
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
groupShortName: {
|
|
48
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
49
|
+
required: true,
|
|
50
|
+
description: "Short name for SMS notifications (max 12 chars)",
|
|
51
|
+
validation: [
|
|
52
|
+
{
|
|
53
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
54
|
+
message: "Short name is required",
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
58
|
+
value: "^[a-zA-Z0-9]{1,12}$",
|
|
59
|
+
message: "Short name must be 1-12 alphanumeric characters",
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
},
|
|
63
|
+
enabled: {
|
|
64
|
+
dataType: version_interfaces_1.PropertyType.BOOLEAN,
|
|
65
|
+
required: false,
|
|
66
|
+
defaultValue: true,
|
|
67
|
+
description: "Enable the action group",
|
|
68
|
+
},
|
|
69
|
+
emailReceivers: {
|
|
70
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
71
|
+
required: false,
|
|
72
|
+
description: "Email notification receivers",
|
|
73
|
+
},
|
|
74
|
+
smsReceivers: {
|
|
75
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
76
|
+
required: false,
|
|
77
|
+
description: "SMS notification receivers",
|
|
78
|
+
},
|
|
79
|
+
webhookReceivers: {
|
|
80
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
81
|
+
required: false,
|
|
82
|
+
description: "Webhook notification receivers",
|
|
83
|
+
},
|
|
84
|
+
azureFunctionReceivers: {
|
|
85
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
86
|
+
required: false,
|
|
87
|
+
description: "Azure Function receivers",
|
|
88
|
+
},
|
|
89
|
+
logicAppReceivers: {
|
|
90
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
91
|
+
required: false,
|
|
92
|
+
description: "Logic App receivers",
|
|
93
|
+
},
|
|
94
|
+
voiceReceivers: {
|
|
95
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
96
|
+
required: false,
|
|
97
|
+
description: "Voice call receivers",
|
|
98
|
+
},
|
|
99
|
+
tags: {
|
|
100
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
101
|
+
required: false,
|
|
102
|
+
defaultValue: {},
|
|
103
|
+
description: "Resource tags",
|
|
104
|
+
validation: [
|
|
105
|
+
{
|
|
106
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
107
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
108
|
+
message: "Tags must be an object with string key-value pairs",
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
// =============================================================================
|
|
114
|
+
// VERSION-SPECIFIC SCHEMAS
|
|
115
|
+
// =============================================================================
|
|
116
|
+
/**
|
|
117
|
+
* API Schema for Action Group version 2021-09-01
|
|
118
|
+
*/
|
|
119
|
+
exports.ACTION_GROUP_SCHEMA_2021_09_01 = {
|
|
120
|
+
resourceType: "Microsoft.Insights/actionGroups",
|
|
121
|
+
version: "2021-09-01",
|
|
122
|
+
properties: {
|
|
123
|
+
...COMMON_ACTION_GROUP_PROPERTIES,
|
|
124
|
+
},
|
|
125
|
+
required: ["location", "name", "groupShortName"],
|
|
126
|
+
optional: [
|
|
127
|
+
"enabled",
|
|
128
|
+
"emailReceivers",
|
|
129
|
+
"smsReceivers",
|
|
130
|
+
"webhookReceivers",
|
|
131
|
+
"azureFunctionReceivers",
|
|
132
|
+
"logicAppReceivers",
|
|
133
|
+
"voiceReceivers",
|
|
134
|
+
"tags",
|
|
135
|
+
],
|
|
136
|
+
deprecated: [],
|
|
137
|
+
transformationRules: {},
|
|
138
|
+
validationRules: [
|
|
139
|
+
{
|
|
140
|
+
property: "location",
|
|
141
|
+
rules: [
|
|
142
|
+
{
|
|
143
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
144
|
+
message: "Location is required for Action Groups",
|
|
145
|
+
},
|
|
146
|
+
],
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
property: "name",
|
|
150
|
+
rules: [
|
|
151
|
+
{
|
|
152
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
153
|
+
message: "Name is required for Action Groups",
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
property: "groupShortName",
|
|
159
|
+
rules: [
|
|
160
|
+
{
|
|
161
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
162
|
+
message: "Short name is required for Action Groups",
|
|
163
|
+
},
|
|
164
|
+
],
|
|
165
|
+
},
|
|
166
|
+
],
|
|
167
|
+
};
|
|
168
|
+
// =============================================================================
|
|
169
|
+
// VERSION CONFIGURATIONS
|
|
170
|
+
// =============================================================================
|
|
171
|
+
/**
|
|
172
|
+
* Version configuration for Action Group 2021-09-01
|
|
173
|
+
*/
|
|
174
|
+
exports.ACTION_GROUP_VERSION_2021_09_01 = {
|
|
175
|
+
version: "2021-09-01",
|
|
176
|
+
schema: exports.ACTION_GROUP_SCHEMA_2021_09_01,
|
|
177
|
+
supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
|
|
178
|
+
releaseDate: "2021-09-01",
|
|
179
|
+
deprecationDate: undefined,
|
|
180
|
+
sunsetDate: undefined,
|
|
181
|
+
breakingChanges: [],
|
|
182
|
+
migrationGuide: "/docs/action-group/migration-2021-09-01",
|
|
183
|
+
changeLog: [
|
|
184
|
+
{
|
|
185
|
+
changeType: "updated",
|
|
186
|
+
description: "Stable API version for Action Groups",
|
|
187
|
+
breaking: false,
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* All supported Action Group versions for registration
|
|
193
|
+
*/
|
|
194
|
+
exports.ALL_ACTION_GROUP_VERSIONS = [
|
|
195
|
+
exports.ACTION_GROUP_VERSION_2021_09_01,
|
|
196
|
+
];
|
|
197
|
+
/**
|
|
198
|
+
* Resource type constant
|
|
199
|
+
*/
|
|
200
|
+
exports.ACTION_GROUP_TYPE = "Microsoft.Insights/actionGroups";
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWdyb3VwLXNjaGVtYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtYWN0aW9uZ3JvdXAvbGliL2FjdGlvbi1ncm91cC1zY2hlbWFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILDJHQU80RTtBQUU1RSxnRkFBZ0Y7QUFDaEYsOEJBQThCO0FBQzlCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQU0sOEJBQThCLEdBQTBDO0lBQzVFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUseUNBQXlDO1FBQ3RELFlBQVksRUFBRSxRQUFRO1FBQ3RCLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUsd0NBQXdDO2FBQ2xEO1NBQ0Y7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUsMEJBQTBCO1FBQ3ZDLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUsa0JBQWtCO2FBQzVCO1lBQ0Q7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLGFBQWE7Z0JBQzFDLEtBQUssRUFBRSxnREFBZ0Q7Z0JBQ3ZELE9BQU8sRUFBRSw0Q0FBNEM7YUFDdEQ7U0FDRjtLQUNGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsSUFBSTtRQUNkLFdBQVcsRUFBRSxpREFBaUQ7UUFDOUQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7Z0JBQ3JDLE9BQU8sRUFBRSx3QkFBd0I7YUFDbEM7WUFDRDtnQkFDRSxRQUFRLEVBQUUsdUNBQWtCLENBQUMsYUFBYTtnQkFDMUMsS0FBSyxFQUFFLHFCQUFxQjtnQkFDNUIsT0FBTyxFQUFFLGlEQUFpRDthQUMzRDtTQUNGO0tBQ0Y7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsaUNBQVksQ0FBQyxPQUFPO1FBQzlCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsWUFBWSxFQUFFLElBQUk7UUFDbEIsV0FBVyxFQUFFLHlCQUF5QjtLQUN2QztJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLEtBQUs7UUFDNUIsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUsOEJBQThCO0tBQzVDO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGlDQUFZLENBQUMsS0FBSztRQUM1QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSw0QkFBNEI7S0FDMUM7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixRQUFRLEVBQUUsaUNBQVksQ0FBQyxLQUFLO1FBQzVCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsV0FBVyxFQUFFLGdDQUFnQztLQUM5QztJQUNELHNCQUFzQixFQUFFO1FBQ3RCLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLEtBQUs7UUFDNUIsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUsMEJBQTBCO0tBQ3hDO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsUUFBUSxFQUFFLGlDQUFZLENBQUMsS0FBSztRQUM1QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxxQkFBcUI7S0FDbkM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsaUNBQVksQ0FBQyxLQUFLO1FBQzVCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsV0FBVyxFQUFFLHNCQUFzQjtLQUNwQztJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLEtBQUs7UUFDZixZQUFZLEVBQUUsRUFBRTtRQUNoQixXQUFXLEVBQUUsZUFBZTtRQUM1QixVQUFVLEVBQUU7WUFDVjtnQkFDRSxRQUFRLEVBQUUsdUNBQWtCLENBQUMsVUFBVTtnQkFDdkMsS0FBSyxFQUFFLGlDQUFZLENBQUMsTUFBTTtnQkFDMUIsT0FBTyxFQUFFLG9EQUFvRDthQUM5RDtTQUNGO0tBQ0Y7Q0FDRixDQUFDO0FBRUYsZ0ZBQWdGO0FBQ2hGLDJCQUEyQjtBQUMzQixnRkFBZ0Y7QUFFaEY7O0dBRUc7QUFDVSxRQUFBLDhCQUE4QixHQUFjO0lBQ3ZELFlBQVksRUFBRSxpQ0FBaUM7SUFDL0MsT0FBTyxFQUFFLFlBQVk7SUFDckIsVUFBVSxFQUFFO1FBQ1YsR0FBRyw4QkFBOEI7S0FDbEM7SUFDRCxRQUFRLEVBQUUsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0lBQ2hELFFBQVEsRUFBRTtRQUNSLFNBQVM7UUFDVCxnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGtCQUFrQjtRQUNsQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLGdCQUFnQjtRQUNoQixNQUFNO0tBQ1A7SUFDRCxVQUFVLEVBQUUsRUFBRTtJQUNkLG1CQUFtQixFQUFFLEVBQUU7SUFDdkIsZUFBZSxFQUFFO1FBQ2Y7WUFDRSxRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7b0JBQ3JDLE9BQU8sRUFBRSx3Q0FBd0M7aUJBQ2xEO2FBQ0Y7U0FDRjtRQUNEO1lBQ0UsUUFBUSxFQUFFLE1BQU07WUFDaEIsS0FBSyxFQUFFO2dCQUNMO29CQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO29CQUNyQyxPQUFPLEVBQUUsb0NBQW9DO2lCQUM5QzthQUNGO1NBQ0Y7UUFDRDtZQUNFLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsS0FBSyxFQUFFO2dCQUNMO29CQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO29CQUNyQyxPQUFPLEVBQUUsMENBQTBDO2lCQUNwRDthQUNGO1NBQ0Y7S0FDRjtDQUNGLENBQUM7QUFFRixnRkFBZ0Y7QUFDaEYseUJBQXlCO0FBQ3pCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNVLFFBQUEsK0JBQStCLEdBQWtCO0lBQzVELE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE1BQU0sRUFBRSxzQ0FBOEI7SUFDdEMsWUFBWSxFQUFFLHdDQUFtQixDQUFDLE1BQU07SUFDeEMsV0FBVyxFQUFFLFlBQVk7SUFDekIsZUFBZSxFQUFFLFNBQVM7SUFDMUIsVUFBVSxFQUFFLFNBQVM7SUFDckIsZUFBZSxFQUFFLEVBQUU7SUFDbkIsY0FBYyxFQUFFLHlDQUF5QztJQUN6RCxTQUFTLEVBQUU7UUFDVDtZQUNFLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLFdBQVcsRUFBRSxzQ0FBc0M7WUFDbkQsUUFBUSxFQUFFLEtBQUs7U0FDaEI7S0FDRjtDQUNGLENBQUM7QUFFRjs7R0FFRztBQUNVLFFBQUEseUJBQXlCLEdBQW9CO0lBQ3hELHVDQUErQjtDQUNoQyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLGlCQUFpQixHQUFHLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBUEkgc2NoZW1hcyBmb3IgQXp1cmUgQWN0aW9uIEdyb3VwIGFjcm9zcyBhbGwgc3VwcG9ydGVkIHZlcnNpb25zXG4gKlxuICogVGhpcyBmaWxlIGRlZmluZXMgdGhlIGNvbXBsZXRlIEFQSSBzY2hlbWFzIGZvciBNaWNyb3NvZnQuSW5zaWdodHMvYWN0aW9uR3JvdXBzXG4gKiBhY3Jvc3MgYWxsIHN1cHBvcnRlZCBBUEkgdmVyc2lvbnMuIFRoZSBzY2hlbWFzIGFyZSB1c2VkIGJ5IHRoZSBBemFwaVJlc291cmNlXG4gKiBmcmFtZXdvcmsgZm9yIHZhbGlkYXRpb24sIHRyYW5zZm9ybWF0aW9uLCBhbmQgdmVyc2lvbiBtYW5hZ2VtZW50LlxuICovXG5cbmltcG9ydCB7XG4gIEFwaVNjaGVtYSxcbiAgUHJvcGVydHlEZWZpbml0aW9uLFxuICBQcm9wZXJ0eVR5cGUsXG4gIFZhbGlkYXRpb25SdWxlVHlwZSxcbiAgVmVyc2lvbkNvbmZpZyxcbiAgVmVyc2lvblN1cHBvcnRMZXZlbCxcbn0gZnJvbSBcIi4uLy4uL2NvcmUtYXp1cmUvbGliL3ZlcnNpb24tbWFuYWdlci9pbnRlcmZhY2VzL3ZlcnNpb24taW50ZXJmYWNlc1wiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ09NTU9OIFBST1BFUlRZIERFRklOSVRJT05TXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIENvbW1vbiBwcm9wZXJ0eSBkZWZpbml0aW9ucyBzaGFyZWQgYWNyb3NzIGFsbCBBY3Rpb24gR3JvdXAgdmVyc2lvbnNcbiAqL1xuY29uc3QgQ09NTU9OX0FDVElPTl9HUk9VUF9QUk9QRVJUSUVTOiB7IFtrZXk6IHN0cmluZ106IFByb3BlcnR5RGVmaW5pdGlvbiB9ID0ge1xuICBsb2NhdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkF6dXJlIHJlZ2lvbiAoZ2xvYmFsIGZvciBhY3Rpb24gZ3JvdXBzKVwiLFxuICAgIGRlZmF1bHRWYWx1ZTogXCJnbG9iYWxcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiTG9jYXRpb24gaXMgcmVxdWlyZWQgZm9yIEFjdGlvbiBHcm91cHNcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgbmFtZToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOiBcIk5hbWUgb2YgdGhlIGFjdGlvbiBncm91cFwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgbWVzc2FnZTogXCJOYW1lIGlzIHJlcXVpcmVkXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlBBVFRFUk5fTUFUQ0gsXG4gICAgICAgIHZhbHVlOiBcIl5bYS16QS1aMC05XVthLXpBLVowLTkuXy1dezAsMjU4fVthLXpBLVowLTlfXSRcIixcbiAgICAgICAgbWVzc2FnZTogXCJBY3Rpb24gZ3JvdXAgbmFtZSBtdXN0IGJlIDItMjYwIGNoYXJhY3RlcnNcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgZ3JvdXBTaG9ydE5hbWU6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBkZXNjcmlwdGlvbjogXCJTaG9ydCBuYW1lIGZvciBTTVMgbm90aWZpY2F0aW9ucyAobWF4IDEyIGNoYXJzKVwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgbWVzc2FnZTogXCJTaG9ydCBuYW1lIGlzIHJlcXVpcmVkXCIsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlBBVFRFUk5fTUFUQ0gsXG4gICAgICAgIHZhbHVlOiBcIl5bYS16QS1aMC05XXsxLDEyfSRcIixcbiAgICAgICAgbWVzc2FnZTogXCJTaG9ydCBuYW1lIG11c3QgYmUgMS0xMiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBlbmFibGVkOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5CT09MRUFOLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gICAgZGVzY3JpcHRpb246IFwiRW5hYmxlIHRoZSBhY3Rpb24gZ3JvdXBcIixcbiAgfSxcbiAgZW1haWxSZWNlaXZlcnM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLkFSUkFZLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJFbWFpbCBub3RpZmljYXRpb24gcmVjZWl2ZXJzXCIsXG4gIH0sXG4gIHNtc1JlY2VpdmVyczoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuQVJSQVksXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIlNNUyBub3RpZmljYXRpb24gcmVjZWl2ZXJzXCIsXG4gIH0sXG4gIHdlYmhvb2tSZWNlaXZlcnM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLkFSUkFZLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJXZWJob29rIG5vdGlmaWNhdGlvbiByZWNlaXZlcnNcIixcbiAgfSxcbiAgYXp1cmVGdW5jdGlvblJlY2VpdmVyczoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuQVJSQVksXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkF6dXJlIEZ1bmN0aW9uIHJlY2VpdmVyc1wiLFxuICB9LFxuICBsb2dpY0FwcFJlY2VpdmVyczoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuQVJSQVksXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkxvZ2ljIEFwcCByZWNlaXZlcnNcIixcbiAgfSxcbiAgdm9pY2VSZWNlaXZlcnM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLkFSUkFZLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJWb2ljZSBjYWxsIHJlY2VpdmVyc1wiLFxuICB9LFxuICB0YWdzOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZToge30sXG4gICAgZGVzY3JpcHRpb246IFwiUmVzb3VyY2UgdGFnc1wiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJUYWdzIG11c3QgYmUgYW4gb2JqZWN0IHdpdGggc3RyaW5nIGtleS12YWx1ZSBwYWlyc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFZFUlNJT04tU1BFQ0lGSUMgU0NIRU1BU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBBUEkgU2NoZW1hIGZvciBBY3Rpb24gR3JvdXAgdmVyc2lvbiAyMDIxLTA5LTAxXG4gKi9cbmV4cG9ydCBjb25zdCBBQ1RJT05fR1JPVVBfU0NIRU1BXzIwMjFfMDlfMDE6IEFwaVNjaGVtYSA9IHtcbiAgcmVzb3VyY2VUeXBlOiBcIk1pY3Jvc29mdC5JbnNpZ2h0cy9hY3Rpb25Hcm91cHNcIixcbiAgdmVyc2lvbjogXCIyMDIxLTA5LTAxXCIsXG4gIHByb3BlcnRpZXM6IHtcbiAgICAuLi5DT01NT05fQUNUSU9OX0dST1VQX1BST1BFUlRJRVMsXG4gIH0sXG4gIHJlcXVpcmVkOiBbXCJsb2NhdGlvblwiLCBcIm5hbWVcIiwgXCJncm91cFNob3J0TmFtZVwiXSxcbiAgb3B0aW9uYWw6IFtcbiAgICBcImVuYWJsZWRcIixcbiAgICBcImVtYWlsUmVjZWl2ZXJzXCIsXG4gICAgXCJzbXNSZWNlaXZlcnNcIixcbiAgICBcIndlYmhvb2tSZWNlaXZlcnNcIixcbiAgICBcImF6dXJlRnVuY3Rpb25SZWNlaXZlcnNcIixcbiAgICBcImxvZ2ljQXBwUmVjZWl2ZXJzXCIsXG4gICAgXCJ2b2ljZVJlY2VpdmVyc1wiLFxuICAgIFwidGFnc1wiLFxuICBdLFxuICBkZXByZWNhdGVkOiBbXSxcbiAgdHJhbnNmb3JtYXRpb25SdWxlczoge30sXG4gIHZhbGlkYXRpb25SdWxlczogW1xuICAgIHtcbiAgICAgIHByb3BlcnR5OiBcImxvY2F0aW9uXCIsXG4gICAgICBydWxlczogW1xuICAgICAgICB7XG4gICAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgICBtZXNzYWdlOiBcIkxvY2F0aW9uIGlzIHJlcXVpcmVkIGZvciBBY3Rpb24gR3JvdXBzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwibmFtZVwiLFxuICAgICAgcnVsZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgICAgbWVzc2FnZTogXCJOYW1lIGlzIHJlcXVpcmVkIGZvciBBY3Rpb24gR3JvdXBzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwiZ3JvdXBTaG9ydE5hbWVcIixcbiAgICAgIHJ1bGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICAgIG1lc3NhZ2U6IFwiU2hvcnQgbmFtZSBpcyByZXF1aXJlZCBmb3IgQWN0aW9uIEdyb3Vwc1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFZFUlNJT04gQ09ORklHVVJBVElPTlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogVmVyc2lvbiBjb25maWd1cmF0aW9uIGZvciBBY3Rpb24gR3JvdXAgMjAyMS0wOS0wMVxuICovXG5leHBvcnQgY29uc3QgQUNUSU9OX0dST1VQX1ZFUlNJT05fMjAyMV8wOV8wMTogVmVyc2lvbkNvbmZpZyA9IHtcbiAgdmVyc2lvbjogXCIyMDIxLTA5LTAxXCIsXG4gIHNjaGVtYTogQUNUSU9OX0dST1VQX1NDSEVNQV8yMDIxXzA5XzAxLFxuICBzdXBwb3J0TGV2ZWw6IFZlcnNpb25TdXBwb3J0TGV2ZWwuQUNUSVZFLFxuICByZWxlYXNlRGF0ZTogXCIyMDIxLTA5LTAxXCIsXG4gIGRlcHJlY2F0aW9uRGF0ZTogdW5kZWZpbmVkLFxuICBzdW5zZXREYXRlOiB1bmRlZmluZWQsXG4gIGJyZWFraW5nQ2hhbmdlczogW10sXG4gIG1pZ3JhdGlvbkd1aWRlOiBcIi9kb2NzL2FjdGlvbi1ncm91cC9taWdyYXRpb24tMjAyMS0wOS0wMVwiLFxuICBjaGFuZ2VMb2c6IFtcbiAgICB7XG4gICAgICBjaGFuZ2VUeXBlOiBcInVwZGF0ZWRcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlN0YWJsZSBBUEkgdmVyc2lvbiBmb3IgQWN0aW9uIEdyb3Vwc1wiLFxuICAgICAgYnJlYWtpbmc6IGZhbHNlLFxuICAgIH0sXG4gIF0sXG59O1xuXG4vKipcbiAqIEFsbCBzdXBwb3J0ZWQgQWN0aW9uIEdyb3VwIHZlcnNpb25zIGZvciByZWdpc3RyYXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IEFMTF9BQ1RJT05fR1JPVVBfVkVSU0lPTlM6IFZlcnNpb25Db25maWdbXSA9IFtcbiAgQUNUSU9OX0dST1VQX1ZFUlNJT05fMjAyMV8wOV8wMSxcbl07XG5cbi8qKlxuICogUmVzb3VyY2UgdHlwZSBjb25zdGFudFxuICovXG5leHBvcnQgY29uc3QgQUNUSU9OX0dST1VQX1RZUEUgPSBcIk1pY3Jvc29mdC5JbnNpZ2h0cy9hY3Rpb25Hcm91cHNcIjtcbiJdfQ==
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Azure Action Group implementation using AzapiResource framework
|
|
3
|
+
*
|
|
4
|
+
* This class provides a version-aware implementation for Azure Action Groups
|
|
5
|
+
* that automatically handles version management, schema validation, and property
|
|
6
|
+
* transformation across all supported API versions.
|
|
7
|
+
*
|
|
8
|
+
* Supported API Versions:
|
|
9
|
+
* - 2021-09-01 (Active, Latest)
|
|
10
|
+
*
|
|
11
|
+
* Features:
|
|
12
|
+
* - Automatic latest version resolution when no version is specified
|
|
13
|
+
* - Explicit version pinning for stability requirements
|
|
14
|
+
* - Schema-driven validation and transformation
|
|
15
|
+
* - Full JSII compliance for multi-language support
|
|
16
|
+
* - Support for multiple receiver types (email, SMS, webhook, etc.)
|
|
17
|
+
*/
|
|
18
|
+
import * as cdktf from "cdktf";
|
|
19
|
+
import { Construct } from "constructs";
|
|
20
|
+
import { AzapiResource, AzapiResourceProps } from "../../core-azure/lib/azapi/azapi-resource";
|
|
21
|
+
import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
22
|
+
/**
|
|
23
|
+
* Email receiver configuration
|
|
24
|
+
*/
|
|
25
|
+
export interface EmailReceiver {
|
|
26
|
+
/**
|
|
27
|
+
* The name of the email receiver
|
|
28
|
+
*/
|
|
29
|
+
readonly name: string;
|
|
30
|
+
/**
|
|
31
|
+
* The email address to send notifications to
|
|
32
|
+
*/
|
|
33
|
+
readonly emailAddress: string;
|
|
34
|
+
/**
|
|
35
|
+
* Whether to use common alert schema
|
|
36
|
+
* @defaultValue false
|
|
37
|
+
*/
|
|
38
|
+
readonly useCommonAlertSchema?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* SMS receiver configuration
|
|
42
|
+
*/
|
|
43
|
+
export interface SmsReceiver {
|
|
44
|
+
/**
|
|
45
|
+
* The name of the SMS receiver
|
|
46
|
+
*/
|
|
47
|
+
readonly name: string;
|
|
48
|
+
/**
|
|
49
|
+
* The country code (e.g., "1" for US)
|
|
50
|
+
*/
|
|
51
|
+
readonly countryCode: string;
|
|
52
|
+
/**
|
|
53
|
+
* The phone number to send SMS to
|
|
54
|
+
*/
|
|
55
|
+
readonly phoneNumber: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Webhook receiver configuration
|
|
59
|
+
*/
|
|
60
|
+
export interface WebhookReceiver {
|
|
61
|
+
/**
|
|
62
|
+
* The name of the webhook receiver
|
|
63
|
+
*/
|
|
64
|
+
readonly name: string;
|
|
65
|
+
/**
|
|
66
|
+
* The service URI to send webhooks to
|
|
67
|
+
*/
|
|
68
|
+
readonly serviceUri: string;
|
|
69
|
+
/**
|
|
70
|
+
* Whether to use common alert schema
|
|
71
|
+
* @defaultValue false
|
|
72
|
+
*/
|
|
73
|
+
readonly useCommonAlertSchema?: boolean;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Azure Function receiver configuration
|
|
77
|
+
*/
|
|
78
|
+
export interface AzureFunctionReceiver {
|
|
79
|
+
/**
|
|
80
|
+
* The name of the Azure Function receiver
|
|
81
|
+
*/
|
|
82
|
+
readonly name: string;
|
|
83
|
+
/**
|
|
84
|
+
* The function app resource ID
|
|
85
|
+
*/
|
|
86
|
+
readonly functionAppResourceId: string;
|
|
87
|
+
/**
|
|
88
|
+
* The function name
|
|
89
|
+
*/
|
|
90
|
+
readonly functionName: string;
|
|
91
|
+
/**
|
|
92
|
+
* The HTTP trigger URL
|
|
93
|
+
*/
|
|
94
|
+
readonly httpTriggerUrl: string;
|
|
95
|
+
/**
|
|
96
|
+
* Whether to use common alert schema
|
|
97
|
+
* @defaultValue false
|
|
98
|
+
*/
|
|
99
|
+
readonly useCommonAlertSchema?: boolean;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Logic App receiver configuration
|
|
103
|
+
*/
|
|
104
|
+
export interface LogicAppReceiver {
|
|
105
|
+
/**
|
|
106
|
+
* The name of the Logic App receiver
|
|
107
|
+
*/
|
|
108
|
+
readonly name: string;
|
|
109
|
+
/**
|
|
110
|
+
* The Logic App resource ID
|
|
111
|
+
*/
|
|
112
|
+
readonly resourceId: string;
|
|
113
|
+
/**
|
|
114
|
+
* The callback URL
|
|
115
|
+
*/
|
|
116
|
+
readonly callbackUrl: string;
|
|
117
|
+
/**
|
|
118
|
+
* Whether to use common alert schema
|
|
119
|
+
* @defaultValue false
|
|
120
|
+
*/
|
|
121
|
+
readonly useCommonAlertSchema?: boolean;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Voice receiver configuration
|
|
125
|
+
*/
|
|
126
|
+
export interface VoiceReceiver {
|
|
127
|
+
/**
|
|
128
|
+
* The name of the voice receiver
|
|
129
|
+
*/
|
|
130
|
+
readonly name: string;
|
|
131
|
+
/**
|
|
132
|
+
* The country code (e.g., "1" for US)
|
|
133
|
+
*/
|
|
134
|
+
readonly countryCode: string;
|
|
135
|
+
/**
|
|
136
|
+
* The phone number to call
|
|
137
|
+
*/
|
|
138
|
+
readonly phoneNumber: string;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Properties for the unified Azure Action Group
|
|
142
|
+
*
|
|
143
|
+
* Extends AzapiResourceProps with Action Group specific properties
|
|
144
|
+
*/
|
|
145
|
+
export interface ActionGroupProps extends AzapiResourceProps {
|
|
146
|
+
/**
|
|
147
|
+
* Short name for SMS notifications (max 12 chars)
|
|
148
|
+
* @example "OpsTeam"
|
|
149
|
+
*/
|
|
150
|
+
readonly groupShortName: string;
|
|
151
|
+
/**
|
|
152
|
+
* Whether the action group is enabled
|
|
153
|
+
* @defaultValue true
|
|
154
|
+
*/
|
|
155
|
+
readonly enabled?: boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Email notification receivers
|
|
158
|
+
*/
|
|
159
|
+
readonly emailReceivers?: EmailReceiver[];
|
|
160
|
+
/**
|
|
161
|
+
* SMS notification receivers
|
|
162
|
+
*/
|
|
163
|
+
readonly smsReceivers?: SmsReceiver[];
|
|
164
|
+
/**
|
|
165
|
+
* Webhook notification receivers
|
|
166
|
+
*/
|
|
167
|
+
readonly webhookReceivers?: WebhookReceiver[];
|
|
168
|
+
/**
|
|
169
|
+
* Azure Function receivers
|
|
170
|
+
*/
|
|
171
|
+
readonly azureFunctionReceivers?: AzureFunctionReceiver[];
|
|
172
|
+
/**
|
|
173
|
+
* Logic App receivers
|
|
174
|
+
*/
|
|
175
|
+
readonly logicAppReceivers?: LogicAppReceiver[];
|
|
176
|
+
/**
|
|
177
|
+
* Voice call receivers
|
|
178
|
+
*/
|
|
179
|
+
readonly voiceReceivers?: VoiceReceiver[];
|
|
180
|
+
/**
|
|
181
|
+
* Resource group ID where the action group will be created
|
|
182
|
+
*/
|
|
183
|
+
readonly resourceGroupId?: string;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Action Group properties for the request body
|
|
187
|
+
*/
|
|
188
|
+
export interface ActionGroupBodyProperties {
|
|
189
|
+
readonly groupShortName: string;
|
|
190
|
+
readonly enabled: boolean;
|
|
191
|
+
readonly emailReceivers?: EmailReceiver[];
|
|
192
|
+
readonly smsReceivers?: SmsReceiver[];
|
|
193
|
+
readonly webhookReceivers?: WebhookReceiver[];
|
|
194
|
+
readonly azureFunctionReceivers?: AzureFunctionReceiver[];
|
|
195
|
+
readonly logicAppReceivers?: LogicAppReceiver[];
|
|
196
|
+
readonly voiceReceivers?: VoiceReceiver[];
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* The resource body interface for Azure Action Group API calls
|
|
200
|
+
*/
|
|
201
|
+
export interface ActionGroupBody {
|
|
202
|
+
readonly location: string;
|
|
203
|
+
readonly tags?: {
|
|
204
|
+
[key: string]: string;
|
|
205
|
+
};
|
|
206
|
+
readonly properties: ActionGroupBodyProperties;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Unified Azure Action Group implementation
|
|
210
|
+
*
|
|
211
|
+
* This class provides a single, version-aware implementation that automatically handles version
|
|
212
|
+
* resolution, schema validation, and property transformation while maintaining full JSII compliance.
|
|
213
|
+
*
|
|
214
|
+
* Action Groups serve as the central notification hub for Azure Monitor alerts, supporting
|
|
215
|
+
* multiple receiver types including email, SMS, webhook, Azure Functions, Logic Apps, and voice calls.
|
|
216
|
+
*
|
|
217
|
+
* @example
|
|
218
|
+
* // Basic action group with email notifications:
|
|
219
|
+
* const actionGroup = new ActionGroup(this, "ops-team", {
|
|
220
|
+
* name: "ops-action-group",
|
|
221
|
+
* groupShortName: "OpsTeam",
|
|
222
|
+
* resourceGroupId: resourceGroup.id,
|
|
223
|
+
* emailReceivers: [{
|
|
224
|
+
* name: "ops-email",
|
|
225
|
+
* emailAddress: "ops@company.com",
|
|
226
|
+
* useCommonAlertSchema: true
|
|
227
|
+
* }]
|
|
228
|
+
* });
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* // Action group with multiple receiver types:
|
|
232
|
+
* const actionGroup = new ActionGroup(this, "critical-alerts", {
|
|
233
|
+
* name: "critical-action-group",
|
|
234
|
+
* groupShortName: "Critical",
|
|
235
|
+
* resourceGroupId: resourceGroup.id,
|
|
236
|
+
* emailReceivers: [{
|
|
237
|
+
* name: "oncall-email",
|
|
238
|
+
* emailAddress: "oncall@company.com",
|
|
239
|
+
* useCommonAlertSchema: true
|
|
240
|
+
* }],
|
|
241
|
+
* smsReceivers: [{
|
|
242
|
+
* name: "oncall-sms",
|
|
243
|
+
* countryCode: "1",
|
|
244
|
+
* phoneNumber: "5551234567"
|
|
245
|
+
* }],
|
|
246
|
+
* webhookReceivers: [{
|
|
247
|
+
* name: "pagerduty-webhook",
|
|
248
|
+
* serviceUri: "https://events.pagerduty.com/...",
|
|
249
|
+
* useCommonAlertSchema: true
|
|
250
|
+
* }]
|
|
251
|
+
* });
|
|
252
|
+
*
|
|
253
|
+
* @stability stable
|
|
254
|
+
*/
|
|
255
|
+
export declare class ActionGroup extends AzapiResource {
|
|
256
|
+
/**
|
|
257
|
+
* Static initialization flag to ensure schemas are registered only once
|
|
258
|
+
*/
|
|
259
|
+
private static schemasRegistered;
|
|
260
|
+
/**
|
|
261
|
+
* Ensures that Action Group schemas are registered with the ApiVersionManager
|
|
262
|
+
* This is called once during the first ActionGroup instantiation
|
|
263
|
+
*/
|
|
264
|
+
private static ensureSchemasRegistered;
|
|
265
|
+
/**
|
|
266
|
+
* The input properties for this Action Group instance
|
|
267
|
+
*/
|
|
268
|
+
readonly props: ActionGroupProps;
|
|
269
|
+
readonly idOutput: cdktf.TerraformOutput;
|
|
270
|
+
readonly nameOutput: cdktf.TerraformOutput;
|
|
271
|
+
readonly id: string;
|
|
272
|
+
/**
|
|
273
|
+
* Creates a new Azure Action Group using the AzapiResource framework
|
|
274
|
+
*
|
|
275
|
+
* The constructor automatically handles version resolution, schema registration,
|
|
276
|
+
* validation, and resource creation.
|
|
277
|
+
*
|
|
278
|
+
* @param scope - The scope in which to define this construct
|
|
279
|
+
* @param id - The unique identifier for this instance
|
|
280
|
+
* @param props - Configuration properties for the Action Group
|
|
281
|
+
*/
|
|
282
|
+
constructor(scope: Construct, id: string, props: ActionGroupProps);
|
|
283
|
+
/**
|
|
284
|
+
* Gets the default API version to use when no explicit version is specified
|
|
285
|
+
* Returns the most recent stable version as the default
|
|
286
|
+
*/
|
|
287
|
+
protected defaultVersion(): string;
|
|
288
|
+
/**
|
|
289
|
+
* Gets the Azure resource type for Action Groups
|
|
290
|
+
*/
|
|
291
|
+
protected resourceType(): string;
|
|
292
|
+
/**
|
|
293
|
+
* Gets the API schema for the resolved version
|
|
294
|
+
* Uses the framework's schema resolution to get the appropriate schema
|
|
295
|
+
*/
|
|
296
|
+
protected apiSchema(): ApiSchema;
|
|
297
|
+
/**
|
|
298
|
+
* Creates the resource body for the Azure API call
|
|
299
|
+
* Transforms the input properties into the JSON format expected by Azure REST API
|
|
300
|
+
*/
|
|
301
|
+
protected createResourceBody(props: any): any;
|
|
302
|
+
/**
|
|
303
|
+
* Add a tag to the Action Group
|
|
304
|
+
* Note: This modifies the construct props but requires a new deployment to take effect
|
|
305
|
+
*/
|
|
306
|
+
addTag(key: string, value: string): void;
|
|
307
|
+
/**
|
|
308
|
+
* Remove a tag from the Action Group
|
|
309
|
+
* Note: This modifies the construct props but requires a new deployment to take effect
|
|
310
|
+
*/
|
|
311
|
+
removeTag(key: string): void;
|
|
312
|
+
}
|