@microsoft/terraform-cdk-constructs 1.8.0 → 1.10.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 +60376 -32133
- package/API.md +72290 -37038
- package/lib/azure-actiongroup/lib/action-group.js +1 -1
- package/lib/azure-activitylogalert/lib/activity-log-alert.js +1 -1
- package/lib/azure-aks/lib/aks-cluster.js +1 -1
- package/lib/azure-applicationinsights/index.d.ts +7 -0
- package/lib/azure-applicationinsights/index.js +24 -0
- package/lib/azure-applicationinsights/lib/application-insights-schemas.d.ts +29 -0
- package/lib/azure-applicationinsights/lib/application-insights-schemas.js +162 -0
- package/lib/azure-applicationinsights/lib/application-insights.d.ts +206 -0
- package/lib/azure-applicationinsights/lib/application-insights.js +209 -0
- package/lib/azure-applicationinsights/lib/index.d.ts +5 -0
- package/lib/azure-applicationinsights/lib/index.js +22 -0
- package/lib/azure-applicationinsights/test/application-insights.integ.d.ts +9 -0
- package/lib/azure-applicationinsights/test/application-insights.integ.js +84 -0
- package/lib/azure-applicationinsights/test/application-insights.spec.d.ts +8 -0
- package/lib/azure-applicationinsights/test/application-insights.spec.js +209 -0
- package/lib/azure-containerapps/index.d.ts +1 -0
- package/lib/azure-containerapps/index.js +18 -0
- package/lib/azure-containerapps/lib/container-app-environment-schemas.d.ts +50 -0
- package/lib/azure-containerapps/lib/container-app-environment-schemas.js +522 -0
- package/lib/azure-containerapps/lib/container-app-environment.d.ts +374 -0
- package/lib/azure-containerapps/lib/container-app-environment.js +310 -0
- package/lib/azure-containerapps/lib/container-app-schemas.d.ts +48 -0
- package/lib/azure-containerapps/lib/container-app-schemas.js +466 -0
- package/lib/azure-containerapps/lib/container-app.d.ts +925 -0
- package/lib/azure-containerapps/lib/container-app.js +320 -0
- package/lib/azure-containerapps/lib/index.d.ts +4 -0
- package/lib/azure-containerapps/lib/index.js +21 -0
- package/lib/azure-containerapps/test/container-app-environment.integ.d.ts +10 -0
- package/lib/azure-containerapps/test/container-app-environment.integ.js +82 -0
- package/lib/azure-containerapps/test/container-app-environment.spec.d.ts +9 -0
- package/lib/azure-containerapps/test/container-app-environment.spec.js +412 -0
- package/lib/azure-containerapps/test/container-app.integ.d.ts +10 -0
- package/lib/azure-containerapps/test/container-app.integ.js +119 -0
- package/lib/azure-containerapps/test/container-app.spec.d.ts +9 -0
- package/lib/azure-containerapps/test/container-app.spec.js +839 -0
- package/lib/azure-containerregistry/index.d.ts +1 -0
- package/lib/azure-containerregistry/index.js +18 -0
- package/lib/azure-containerregistry/lib/container-registry-schemas.d.ts +32 -0
- package/lib/azure-containerregistry/lib/container-registry-schemas.js +316 -0
- package/lib/azure-containerregistry/lib/container-registry.d.ts +330 -0
- package/lib/azure-containerregistry/lib/container-registry.js +217 -0
- package/lib/azure-containerregistry/lib/index.d.ts +2 -0
- package/lib/azure-containerregistry/lib/index.js +19 -0
- package/lib/azure-containerregistry/test/container-registry.integ.d.ts +9 -0
- package/lib/azure-containerregistry/test/container-registry.integ.js +101 -0
- package/lib/azure-containerregistry/test/container-registry.spec.d.ts +4 -0
- package/lib/azure-containerregistry/test/container-registry.spec.js +425 -0
- package/lib/azure-cosmosdb/index.d.ts +1 -0
- package/lib/azure-cosmosdb/index.js +18 -0
- package/lib/azure-cosmosdb/lib/cosmos-db-schemas.d.ts +40 -0
- package/lib/azure-cosmosdb/lib/cosmos-db-schemas.js +330 -0
- package/lib/azure-cosmosdb/lib/cosmos-db.d.ts +290 -0
- package/lib/azure-cosmosdb/lib/cosmos-db.js +222 -0
- package/lib/azure-cosmosdb/lib/index.d.ts +2 -0
- package/lib/azure-cosmosdb/lib/index.js +19 -0
- package/lib/azure-cosmosdb/test/cosmos-db.integ.d.ts +9 -0
- package/lib/azure-cosmosdb/test/cosmos-db.integ.js +98 -0
- package/lib/azure-cosmosdb/test/cosmos-db.spec.d.ts +4 -0
- package/lib/azure-cosmosdb/test/cosmos-db.spec.js +339 -0
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings.js +1 -1
- package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset.js +1 -1
- package/lib/azure-dnsforwardingruleset/lib/forwarding-rule.js +1 -1
- package/lib/azure-dnsforwardingruleset/lib/virtual-network-link.js +1 -1
- package/lib/azure-dnsresolver/lib/dns-resolver.js +1 -1
- package/lib/azure-dnsresolver/lib/inbound-endpoint.js +1 -1
- package/lib/azure-dnsresolver/lib/outbound-endpoint.js +1 -1
- package/lib/azure-dnszone/lib/dns-zone.js +1 -1
- package/lib/azure-dnszone/lib/records/dns-records.js +10 -10
- package/lib/azure-functionapp/index.d.ts +1 -0
- package/lib/azure-functionapp/index.js +18 -0
- package/lib/azure-functionapp/lib/function-app-schemas.d.ts +32 -0
- package/lib/azure-functionapp/lib/function-app-schemas.js +303 -0
- package/lib/azure-functionapp/lib/function-app.d.ts +367 -0
- package/lib/azure-functionapp/lib/function-app.js +223 -0
- package/lib/azure-functionapp/lib/index.d.ts +2 -0
- package/lib/azure-functionapp/lib/index.js +19 -0
- package/lib/azure-functionapp/test/function-app.integ.d.ts +12 -0
- package/lib/azure-functionapp/test/function-app.integ.js +134 -0
- package/lib/azure-functionapp/test/function-app.spec.d.ts +4 -0
- package/lib/azure-functionapp/test/function-app.spec.js +566 -0
- package/lib/azure-keyvault/index.d.ts +1 -0
- package/lib/azure-keyvault/index.js +18 -0
- package/lib/azure-keyvault/lib/index.d.ts +2 -0
- package/lib/azure-keyvault/lib/index.js +19 -0
- package/lib/azure-keyvault/lib/key-vault-schemas.d.ts +40 -0
- package/lib/azure-keyvault/lib/key-vault-schemas.js +312 -0
- package/lib/azure-keyvault/lib/key-vault.d.ts +344 -0
- package/lib/azure-keyvault/lib/key-vault.js +243 -0
- package/lib/azure-keyvault/test/key-vault.integ.d.ts +9 -0
- package/lib/azure-keyvault/test/key-vault.integ.js +108 -0
- package/lib/azure-keyvault/test/key-vault.spec.d.ts +4 -0
- package/lib/azure-keyvault/test/key-vault.spec.js +264 -0
- package/lib/azure-loganalyticsworkspace/index.d.ts +6 -0
- package/lib/azure-loganalyticsworkspace/index.js +23 -0
- package/lib/azure-loganalyticsworkspace/lib/index.d.ts +5 -0
- package/lib/azure-loganalyticsworkspace/lib/index.js +22 -0
- package/lib/azure-loganalyticsworkspace/lib/log-analytics-workspace-schemas.d.ts +51 -0
- package/lib/azure-loganalyticsworkspace/lib/log-analytics-workspace-schemas.js +255 -0
- package/lib/azure-loganalyticsworkspace/lib/log-analytics-workspace.d.ts +301 -0
- package/lib/azure-loganalyticsworkspace/lib/log-analytics-workspace.js +213 -0
- package/lib/azure-loganalyticsworkspace/test/log-analytics-workspace.integ.d.ts +9 -0
- package/lib/azure-loganalyticsworkspace/test/log-analytics-workspace.integ.js +71 -0
- package/lib/azure-loganalyticsworkspace/test/log-analytics-workspace.spec.d.ts +8 -0
- package/lib/azure-loganalyticsworkspace/test/log-analytics-workspace.spec.js +504 -0
- package/lib/azure-metricalert/lib/metric-alert.js +1 -1
- package/lib/azure-networkinterface/lib/network-interface.js +1 -1
- package/lib/azure-networksecuritygroup/lib/network-security-group.js +1 -1
- package/lib/azure-networkwatcher/index.d.ts +14 -0
- package/lib/azure-networkwatcher/index.js +31 -0
- package/lib/azure-networkwatcher/lib/index.d.ts +5 -0
- package/lib/azure-networkwatcher/lib/index.js +22 -0
- package/lib/azure-networkwatcher/lib/network-watcher-schemas.d.ts +47 -0
- package/lib/azure-networkwatcher/lib/network-watcher-schemas.js +167 -0
- package/lib/azure-networkwatcher/lib/network-watcher.d.ts +181 -0
- package/lib/azure-networkwatcher/lib/network-watcher.js +187 -0
- package/lib/azure-networkwatcher/test/network-watcher.integ.d.ts +12 -0
- package/lib/azure-networkwatcher/test/network-watcher.integ.js +84 -0
- package/lib/azure-networkwatcher/test/network-watcher.spec.d.ts +8 -0
- package/lib/azure-networkwatcher/test/network-watcher.spec.js +312 -0
- package/lib/azure-policyassignment/lib/policy-assignment.js +1 -1
- package/lib/azure-policydefinition/lib/policy-definition.js +1 -1
- package/lib/azure-policysetdefinition/index.d.ts +10 -0
- package/lib/azure-policysetdefinition/index.js +27 -0
- package/lib/azure-policysetdefinition/lib/index.d.ts +5 -0
- package/lib/azure-policysetdefinition/lib/index.js +22 -0
- package/lib/azure-policysetdefinition/lib/policy-set-definition-schemas.d.ts +50 -0
- package/lib/azure-policysetdefinition/lib/policy-set-definition-schemas.js +255 -0
- package/lib/azure-policysetdefinition/lib/policy-set-definition.d.ts +426 -0
- package/lib/azure-policysetdefinition/lib/policy-set-definition.js +255 -0
- package/lib/azure-policysetdefinition/test/policy-set-definition.integ.d.ts +9 -0
- package/lib/azure-policysetdefinition/test/policy-set-definition.integ.js +56 -0
- package/lib/azure-policysetdefinition/test/policy-set-definition.spec.d.ts +8 -0
- package/lib/azure-policysetdefinition/test/policy-set-definition.spec.js +745 -0
- package/lib/azure-privatednszone/lib/private-dns-zone.js +1 -1
- package/lib/azure-privatednszone/lib/records/private-dns-records.js +8 -8
- package/lib/azure-privatednszonelink/lib/private-dns-zone-link.js +1 -1
- package/lib/azure-publicipaddress/lib/public-ip-address.js +1 -1
- package/lib/azure-resourcegroup/lib/resource-group.js +1 -1
- package/lib/azure-roleassignment/lib/role-assignment.js +1 -1
- package/lib/azure-roledefinition/lib/role-definition.js +1 -1
- package/lib/azure-sreagent/index.d.ts +1 -0
- package/lib/azure-sreagent/index.js +18 -0
- package/lib/azure-sreagent/lib/index.d.ts +2 -0
- package/lib/azure-sreagent/lib/index.js +19 -0
- package/lib/azure-sreagent/lib/sre-agent-schemas.d.ts +29 -0
- package/lib/azure-sreagent/lib/sre-agent-schemas.js +296 -0
- package/lib/azure-sreagent/lib/sre-agent.d.ts +208 -0
- package/lib/azure-sreagent/lib/sre-agent.js +217 -0
- package/lib/azure-sreagent/test/sre-agent.integ.d.ts +9 -0
- package/lib/azure-sreagent/test/sre-agent.integ.js +78 -0
- package/lib/azure-sreagent/test/sre-agent.spec.d.ts +4 -0
- package/lib/azure-sreagent/test/sre-agent.spec.js +216 -0
- package/lib/azure-staticwebapp/index.d.ts +1 -0
- package/lib/azure-staticwebapp/index.js +18 -0
- package/lib/azure-staticwebapp/lib/index.d.ts +2 -0
- package/lib/azure-staticwebapp/lib/index.js +19 -0
- package/lib/azure-staticwebapp/lib/static-web-app-schemas.d.ts +40 -0
- package/lib/azure-staticwebapp/lib/static-web-app-schemas.js +236 -0
- package/lib/azure-staticwebapp/lib/static-web-app.d.ts +242 -0
- package/lib/azure-staticwebapp/lib/static-web-app.js +232 -0
- package/lib/azure-staticwebapp/test/static-web-app.integ.d.ts +9 -0
- package/lib/azure-staticwebapp/test/static-web-app.integ.js +76 -0
- package/lib/azure-staticwebapp/test/static-web-app.spec.d.ts +15 -0
- package/lib/azure-staticwebapp/test/static-web-app.spec.js +293 -0
- package/lib/azure-storageaccount/lib/storage-account.js +1 -1
- package/lib/azure-subnet/lib/subnet.js +1 -1
- package/lib/azure-virtualmachine/lib/virtual-machine.js +1 -1
- package/lib/azure-virtualnetwork/lib/virtual-network.js +1 -1
- package/lib/azure-virtualnetworkgateway/lib/virtual-network-gateway-schemas.js +2 -2
- package/lib/azure-virtualnetworkgateway/lib/virtual-network-gateway.d.ts +4 -2
- package/lib/azure-virtualnetworkgateway/lib/virtual-network-gateway.js +8 -5
- package/lib/azure-virtualnetworkgateway/test/virtual-network-gateway.spec.js +109 -1
- package/lib/azure-virtualnetworkgatewayconnection/lib/virtual-network-gateway-connection.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/ipam-pool-static-cidr.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/ipam-pool.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/network-group-static-member.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/network-group.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule.js +1 -1
- package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager.js +1 -1
- package/lib/azure-vmss/lib/virtual-machine-scale-set.js +1 -1
- package/lib/core-azure/lib/azapi/azapi-resource.js +2 -2
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.js +2 -2
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.js +5 -5
- package/lib/core-azure/lib/azapi/providers-azapi/provider/index.js +1 -1
- package/lib/core-azure/lib/azapi/providers-azapi/resource/index.js +5 -5
- package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.js +3 -3
- package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.js +3 -3
- package/lib/core-azure/lib/azapi/schema-mapper/schema-mapper.js +1 -1
- 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 +25 -0
- package/lib/index.js +27 -2
- package/lib/testing/index.js +2 -2
- package/lib/testing/lib/cleanup.js +1 -1
- package/lib/testing/lib/metadata.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./lib";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./lib"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp1cmUtY29udGFpbmVycmVnaXN0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2xpYlwiO1xuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API schemas for Azure Container Registry across all supported versions
|
|
3
|
+
*
|
|
4
|
+
* This file defines the complete API schemas for Microsoft.ContainerRegistry/registries
|
|
5
|
+
* across all supported API versions. The schemas are used by the VersionedAzapiResource
|
|
6
|
+
* framework for validation, transformation, and version management.
|
|
7
|
+
*/
|
|
8
|
+
import { ApiSchema, VersionConfig } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
9
|
+
/**
|
|
10
|
+
* API Schema for Container Registry version 2023-07-01
|
|
11
|
+
*/
|
|
12
|
+
export declare const CONTAINER_REGISTRY_SCHEMA_2023_07_01: ApiSchema;
|
|
13
|
+
/**
|
|
14
|
+
* API Schema for Container Registry version 2025-04-01
|
|
15
|
+
*/
|
|
16
|
+
export declare const CONTAINER_REGISTRY_SCHEMA_2025_04_01: ApiSchema;
|
|
17
|
+
/**
|
|
18
|
+
* Version configuration for Container Registry 2023-07-01
|
|
19
|
+
*/
|
|
20
|
+
export declare const CONTAINER_REGISTRY_VERSION_2023_07_01: VersionConfig;
|
|
21
|
+
/**
|
|
22
|
+
* Version configuration for Container Registry 2025-04-01
|
|
23
|
+
*/
|
|
24
|
+
export declare const CONTAINER_REGISTRY_VERSION_2025_04_01: VersionConfig;
|
|
25
|
+
/**
|
|
26
|
+
* All supported Container Registry versions for registration
|
|
27
|
+
*/
|
|
28
|
+
export declare const ALL_CONTAINER_REGISTRY_VERSIONS: VersionConfig[];
|
|
29
|
+
/**
|
|
30
|
+
* Resource type constant
|
|
31
|
+
*/
|
|
32
|
+
export declare const CONTAINER_REGISTRY_TYPE = "Microsoft.ContainerRegistry/registries";
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* API schemas for Azure Container Registry across all supported versions
|
|
4
|
+
*
|
|
5
|
+
* This file defines the complete API schemas for Microsoft.ContainerRegistry/registries
|
|
6
|
+
* across all supported API versions. The schemas are used by the VersionedAzapiResource
|
|
7
|
+
* framework for validation, transformation, and version management.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.CONTAINER_REGISTRY_TYPE = exports.ALL_CONTAINER_REGISTRY_VERSIONS = exports.CONTAINER_REGISTRY_VERSION_2025_04_01 = exports.CONTAINER_REGISTRY_VERSION_2023_07_01 = exports.CONTAINER_REGISTRY_SCHEMA_2025_04_01 = exports.CONTAINER_REGISTRY_SCHEMA_2023_07_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 Container Registry versions
|
|
17
|
+
*/
|
|
18
|
+
const COMMON_PROPERTIES = {
|
|
19
|
+
location: {
|
|
20
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
21
|
+
required: true,
|
|
22
|
+
description: "The Azure region where the Container Registry will be created",
|
|
23
|
+
validation: [
|
|
24
|
+
{
|
|
25
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
26
|
+
message: "Location is required for Container Registries",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
30
|
+
value: "^[a-z0-9]+$",
|
|
31
|
+
message: "Location must contain only lowercase letters and numbers",
|
|
32
|
+
},
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
tags: {
|
|
36
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
37
|
+
required: false,
|
|
38
|
+
defaultValue: {},
|
|
39
|
+
description: "A dictionary of tags to apply to the Container Registry",
|
|
40
|
+
validation: [
|
|
41
|
+
{
|
|
42
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
43
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
44
|
+
message: "Tags must be an object with string key-value pairs",
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
},
|
|
48
|
+
name: {
|
|
49
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
50
|
+
required: true,
|
|
51
|
+
description: "The name of the Container Registry. Must be globally unique, 5-50 alphanumeric characters",
|
|
52
|
+
validation: [
|
|
53
|
+
{
|
|
54
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
55
|
+
message: "Container Registry name is required",
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
59
|
+
value: "^[a-zA-Z0-9]{5,50}$",
|
|
60
|
+
message: "Container Registry name must be 5-50 alphanumeric characters only",
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
sku: {
|
|
65
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
66
|
+
required: true,
|
|
67
|
+
description: "The SKU (pricing tier) for the Container Registry (Basic, Standard, Premium)",
|
|
68
|
+
validation: [
|
|
69
|
+
{
|
|
70
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
71
|
+
message: "SKU is required for Container Registries",
|
|
72
|
+
},
|
|
73
|
+
],
|
|
74
|
+
},
|
|
75
|
+
adminUserEnabled: {
|
|
76
|
+
dataType: version_interfaces_1.PropertyType.BOOLEAN,
|
|
77
|
+
required: false,
|
|
78
|
+
defaultValue: false,
|
|
79
|
+
description: "Whether the admin user is enabled for the registry",
|
|
80
|
+
},
|
|
81
|
+
publicNetworkAccess: {
|
|
82
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
83
|
+
required: false,
|
|
84
|
+
defaultValue: "Enabled",
|
|
85
|
+
description: "Whether public network access is enabled (Enabled or Disabled)",
|
|
86
|
+
validation: [
|
|
87
|
+
{
|
|
88
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
89
|
+
value: "^(Enabled|Disabled)$",
|
|
90
|
+
message: "Public network access must be either 'Enabled' or 'Disabled'",
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
},
|
|
94
|
+
networkRuleSet: {
|
|
95
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
96
|
+
required: false,
|
|
97
|
+
description: "Network rule set configuration for the Container Registry (Premium SKU only)",
|
|
98
|
+
},
|
|
99
|
+
encryption: {
|
|
100
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
101
|
+
required: false,
|
|
102
|
+
description: "Encryption settings with customer-managed keys (Premium SKU only)",
|
|
103
|
+
},
|
|
104
|
+
policies: {
|
|
105
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
106
|
+
required: false,
|
|
107
|
+
description: "Policy configuration including retention, trust, export, quarantine, and soft delete policies",
|
|
108
|
+
},
|
|
109
|
+
identity: {
|
|
110
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
111
|
+
required: false,
|
|
112
|
+
description: "Managed identity configuration for the Container Registry",
|
|
113
|
+
},
|
|
114
|
+
zoneRedundancy: {
|
|
115
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
116
|
+
required: false,
|
|
117
|
+
defaultValue: "Disabled",
|
|
118
|
+
description: "Whether zone redundancy is enabled (Enabled or Disabled, Premium SKU only)",
|
|
119
|
+
validation: [
|
|
120
|
+
{
|
|
121
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
122
|
+
value: "^(Enabled|Disabled)$",
|
|
123
|
+
message: "Zone redundancy must be either 'Enabled' or 'Disabled'",
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
},
|
|
127
|
+
dataEndpointEnabled: {
|
|
128
|
+
dataType: version_interfaces_1.PropertyType.BOOLEAN,
|
|
129
|
+
required: false,
|
|
130
|
+
defaultValue: false,
|
|
131
|
+
description: "Whether to enable a dedicated data endpoint (Premium SKU only)",
|
|
132
|
+
},
|
|
133
|
+
anonymousPullEnabled: {
|
|
134
|
+
dataType: version_interfaces_1.PropertyType.BOOLEAN,
|
|
135
|
+
required: false,
|
|
136
|
+
defaultValue: false,
|
|
137
|
+
description: "Whether anonymous pull is enabled for unauthenticated access (Standard or Premium SKU)",
|
|
138
|
+
},
|
|
139
|
+
networkRuleBypassOptions: {
|
|
140
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
141
|
+
required: false,
|
|
142
|
+
defaultValue: "AzureServices",
|
|
143
|
+
description: "Whether to allow trusted Azure Services to access a network restricted registry",
|
|
144
|
+
validation: [
|
|
145
|
+
{
|
|
146
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
147
|
+
value: "^(AzureServices|None)$",
|
|
148
|
+
message: "Network rule bypass options must be either 'AzureServices' or 'None'",
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
},
|
|
152
|
+
ignoreChanges: {
|
|
153
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
154
|
+
required: false,
|
|
155
|
+
description: "Array of property names to ignore during updates",
|
|
156
|
+
validation: [
|
|
157
|
+
{
|
|
158
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
159
|
+
value: version_interfaces_1.PropertyType.ARRAY,
|
|
160
|
+
message: "IgnoreChanges must be an array of strings",
|
|
161
|
+
},
|
|
162
|
+
],
|
|
163
|
+
},
|
|
164
|
+
};
|
|
165
|
+
// =============================================================================
|
|
166
|
+
// VERSION-SPECIFIC SCHEMAS
|
|
167
|
+
// =============================================================================
|
|
168
|
+
/**
|
|
169
|
+
* API Schema for Container Registry version 2023-07-01
|
|
170
|
+
*/
|
|
171
|
+
exports.CONTAINER_REGISTRY_SCHEMA_2023_07_01 = {
|
|
172
|
+
resourceType: "Microsoft.ContainerRegistry/registries",
|
|
173
|
+
version: "2023-07-01",
|
|
174
|
+
properties: {
|
|
175
|
+
...COMMON_PROPERTIES,
|
|
176
|
+
},
|
|
177
|
+
required: ["location", "name", "sku"],
|
|
178
|
+
optional: [
|
|
179
|
+
"tags",
|
|
180
|
+
"adminUserEnabled",
|
|
181
|
+
"publicNetworkAccess",
|
|
182
|
+
"networkRuleSet",
|
|
183
|
+
"encryption",
|
|
184
|
+
"policies",
|
|
185
|
+
"identity",
|
|
186
|
+
"zoneRedundancy",
|
|
187
|
+
"dataEndpointEnabled",
|
|
188
|
+
"anonymousPullEnabled",
|
|
189
|
+
"networkRuleBypassOptions",
|
|
190
|
+
"ignoreChanges",
|
|
191
|
+
],
|
|
192
|
+
deprecated: [],
|
|
193
|
+
transformationRules: {},
|
|
194
|
+
validationRules: [
|
|
195
|
+
{
|
|
196
|
+
property: "location",
|
|
197
|
+
rules: [
|
|
198
|
+
{
|
|
199
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
200
|
+
message: "Location is required for Container Registries",
|
|
201
|
+
},
|
|
202
|
+
],
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
property: "name",
|
|
206
|
+
rules: [
|
|
207
|
+
{
|
|
208
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
209
|
+
message: "Name is required for Container Registries",
|
|
210
|
+
},
|
|
211
|
+
],
|
|
212
|
+
},
|
|
213
|
+
],
|
|
214
|
+
};
|
|
215
|
+
/**
|
|
216
|
+
* API Schema for Container Registry version 2025-04-01
|
|
217
|
+
*/
|
|
218
|
+
exports.CONTAINER_REGISTRY_SCHEMA_2025_04_01 = {
|
|
219
|
+
resourceType: "Microsoft.ContainerRegistry/registries",
|
|
220
|
+
version: "2025-04-01",
|
|
221
|
+
properties: {
|
|
222
|
+
...COMMON_PROPERTIES,
|
|
223
|
+
},
|
|
224
|
+
required: ["location", "name", "sku"],
|
|
225
|
+
optional: [
|
|
226
|
+
"tags",
|
|
227
|
+
"adminUserEnabled",
|
|
228
|
+
"publicNetworkAccess",
|
|
229
|
+
"networkRuleSet",
|
|
230
|
+
"encryption",
|
|
231
|
+
"policies",
|
|
232
|
+
"identity",
|
|
233
|
+
"zoneRedundancy",
|
|
234
|
+
"dataEndpointEnabled",
|
|
235
|
+
"anonymousPullEnabled",
|
|
236
|
+
"networkRuleBypassOptions",
|
|
237
|
+
"ignoreChanges",
|
|
238
|
+
],
|
|
239
|
+
deprecated: [],
|
|
240
|
+
transformationRules: {},
|
|
241
|
+
validationRules: [
|
|
242
|
+
{
|
|
243
|
+
property: "location",
|
|
244
|
+
rules: [
|
|
245
|
+
{
|
|
246
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
247
|
+
message: "Location is required for Container Registries",
|
|
248
|
+
},
|
|
249
|
+
],
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
property: "name",
|
|
253
|
+
rules: [
|
|
254
|
+
{
|
|
255
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
256
|
+
message: "Name is required for Container Registries",
|
|
257
|
+
},
|
|
258
|
+
],
|
|
259
|
+
},
|
|
260
|
+
],
|
|
261
|
+
};
|
|
262
|
+
// =============================================================================
|
|
263
|
+
// VERSION CONFIGURATIONS
|
|
264
|
+
// =============================================================================
|
|
265
|
+
/**
|
|
266
|
+
* Version configuration for Container Registry 2023-07-01
|
|
267
|
+
*/
|
|
268
|
+
exports.CONTAINER_REGISTRY_VERSION_2023_07_01 = {
|
|
269
|
+
version: "2023-07-01",
|
|
270
|
+
schema: exports.CONTAINER_REGISTRY_SCHEMA_2023_07_01,
|
|
271
|
+
supportLevel: version_interfaces_1.VersionSupportLevel.MAINTENANCE,
|
|
272
|
+
releaseDate: "2023-07-01",
|
|
273
|
+
deprecationDate: undefined,
|
|
274
|
+
sunsetDate: undefined,
|
|
275
|
+
breakingChanges: [],
|
|
276
|
+
migrationGuide: "/docs/container-registry/migration-2023-07-01",
|
|
277
|
+
changeLog: [
|
|
278
|
+
{
|
|
279
|
+
changeType: "updated",
|
|
280
|
+
description: "Stable release with policy and encryption support",
|
|
281
|
+
breaking: false,
|
|
282
|
+
},
|
|
283
|
+
],
|
|
284
|
+
};
|
|
285
|
+
/**
|
|
286
|
+
* Version configuration for Container Registry 2025-04-01
|
|
287
|
+
*/
|
|
288
|
+
exports.CONTAINER_REGISTRY_VERSION_2025_04_01 = {
|
|
289
|
+
version: "2025-04-01",
|
|
290
|
+
schema: exports.CONTAINER_REGISTRY_SCHEMA_2025_04_01,
|
|
291
|
+
supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
|
|
292
|
+
releaseDate: "2025-04-01",
|
|
293
|
+
deprecationDate: undefined,
|
|
294
|
+
sunsetDate: undefined,
|
|
295
|
+
breakingChanges: [],
|
|
296
|
+
migrationGuide: "/docs/container-registry/migration-2025-04-01",
|
|
297
|
+
changeLog: [
|
|
298
|
+
{
|
|
299
|
+
changeType: "updated",
|
|
300
|
+
description: "Latest API version with improved features and performance enhancements",
|
|
301
|
+
breaking: false,
|
|
302
|
+
},
|
|
303
|
+
],
|
|
304
|
+
};
|
|
305
|
+
/**
|
|
306
|
+
* All supported Container Registry versions for registration
|
|
307
|
+
*/
|
|
308
|
+
exports.ALL_CONTAINER_REGISTRY_VERSIONS = [
|
|
309
|
+
exports.CONTAINER_REGISTRY_VERSION_2023_07_01,
|
|
310
|
+
exports.CONTAINER_REGISTRY_VERSION_2025_04_01,
|
|
311
|
+
];
|
|
312
|
+
/**
|
|
313
|
+
* Resource type constant
|
|
314
|
+
*/
|
|
315
|
+
exports.CONTAINER_REGISTRY_TYPE = "Microsoft.ContainerRegistry/registries";
|
|
316
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLXJlZ2lzdHJ5LXNjaGVtYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtY29udGFpbmVycmVnaXN0cnkvbGliL2NvbnRhaW5lci1yZWdpc3RyeS1zY2hlbWFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7OztBQUVILDJHQU80RTtBQUU1RSxnRkFBZ0Y7QUFDaEYsOEJBQThCO0FBQzlCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQU0saUJBQWlCLEdBQTBDO0lBQy9ELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQ1QsK0RBQStEO1FBQ2pFLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUsK0NBQStDO2FBQ3pEO1lBQ0Q7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLGFBQWE7Z0JBQzFDLEtBQUssRUFBRSxhQUFhO2dCQUNwQixPQUFPLEVBQUUsMERBQTBEO2FBQ3BFO1NBQ0Y7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLEtBQUs7UUFDZixZQUFZLEVBQUUsRUFBRTtRQUNoQixXQUFXLEVBQUUseURBQXlEO1FBQ3RFLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxVQUFVO2dCQUN2QyxLQUFLLEVBQUUsaUNBQVksQ0FBQyxNQUFNO2dCQUMxQixPQUFPLEVBQUUsb0RBQW9EO2FBQzlEO1NBQ0Y7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQ1QsMkZBQTJGO1FBQzdGLFVBQVUsRUFBRTtZQUNW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RTtRQUNUO1lBQ0UsVUFBVSxFQUFFLFNBQVM7WUFDckIsV0FBVyxFQUFFLG1EQUFtRDtZQUNoRSxRQUFRLEVBQUUsS0FBSztTQUNoQjtLQUNGO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSxxQ0FBcUMsR0FBa0I7SUFDbEUsT0FBTyxFQUFFLFlBQVk7SUFDckIsTUFBTSxFQUFFLDRDQUFvQztJQUM1QyxZQUFZLEVBQUUsd0NBQW1CLENBQUMsTUFBTTtJQUN4QyxXQUFXLEVBQUUsWUFBWTtJQUN6QixlQUFlLEVBQUUsU0FBUztJQUMxQixVQUFVLEVBQUUsU0FBUztJQUNyQixlQUFlLEVBQUUsRUFBRTtJQUNuQixjQUFjLEVBQUUsK0NBQStDO0lBQy9ELFNBQVMsRUFBRTtRQUNUO1lBQ0UsVUFBVSxFQUFFLFNBQVM7WUFDckIsV0FBVyxFQUNULHdFQUF3RTtZQUMxRSxRQUFRLEVBQUUsS0FBSztTQUNoQjtLQUNGO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBQ1UsUUFBQSwrQkFBK0IsR0FBb0I7SUFDOUQsNkNBQXFDO0lBQ3JDLDZDQUFxQztDQUN0QyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLHVCQUF1QixHQUFHLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBUEkgc2NoZW1hcyBmb3IgQXp1cmUgQ29udGFpbmVyIFJlZ2lzdHJ5IGFjcm9zcyBhbGwgc3VwcG9ydGVkIHZlcnNpb25zXG4gKlxuICogVGhpcyBmaWxlIGRlZmluZXMgdGhlIGNvbXBsZXRlIEFQSSBzY2hlbWFzIGZvciBNaWNyb3NvZnQuQ29udGFpbmVyUmVnaXN0cnkvcmVnaXN0cmllc1xuICogYWNyb3NzIGFsbCBzdXBwb3J0ZWQgQVBJIHZlcnNpb25zLiBUaGUgc2NoZW1hcyBhcmUgdXNlZCBieSB0aGUgVmVyc2lvbmVkQXphcGlSZXNvdXJjZVxuICogZnJhbWV3b3JrIGZvciB2YWxpZGF0aW9uLCB0cmFuc2Zvcm1hdGlvbiwgYW5kIHZlcnNpb24gbWFuYWdlbWVudC5cbiAqL1xuXG5pbXBvcnQge1xuICBBcGlTY2hlbWEsXG4gIFByb3BlcnR5RGVmaW5pdGlvbixcbiAgUHJvcGVydHlUeXBlLFxuICBWYWxpZGF0aW9uUnVsZVR5cGUsXG4gIFZlcnNpb25Db25maWcsXG4gIFZlcnNpb25TdXBwb3J0TGV2ZWwsXG59IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlL2xpYi92ZXJzaW9uLW1hbmFnZXIvaW50ZXJmYWNlcy92ZXJzaW9uLWludGVyZmFjZXNcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENPTU1PTiBQUk9QRVJUWSBERUZJTklUSU9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBDb21tb24gcHJvcGVydHkgZGVmaW5pdGlvbnMgc2hhcmVkIGFjcm9zcyBhbGwgQ29udGFpbmVyIFJlZ2lzdHJ5IHZlcnNpb25zXG4gKi9cbmNvbnN0IENPTU1PTl9QUk9QRVJUSUVTOiB7IFtrZXk6IHN0cmluZ106IFByb3BlcnR5RGVmaW5pdGlvbiB9ID0ge1xuICBsb2NhdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJUaGUgQXp1cmUgcmVnaW9uIHdoZXJlIHRoZSBDb250YWluZXIgUmVnaXN0cnkgd2lsbCBiZSBjcmVhdGVkXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICBtZXNzYWdlOiBcIkxvY2F0aW9uIGlzIHJlcXVpcmVkIGZvciBDb250YWluZXIgUmVnaXN0cmllc1wiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5QQVRURVJOX01BVENILFxuICAgICAgICB2YWx1ZTogXCJeW2EtejAtOV0rJFwiLFxuICAgICAgICBtZXNzYWdlOiBcIkxvY2F0aW9uIG11c3QgY29udGFpbiBvbmx5IGxvd2VyY2FzZSBsZXR0ZXJzIGFuZCBudW1iZXJzXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHRhZ3M6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiB7fSxcbiAgICBkZXNjcmlwdGlvbjogXCJBIGRpY3Rpb25hcnkgb2YgdGFncyB0byBhcHBseSB0byB0aGUgQ29udGFpbmVyIFJlZ2lzdHJ5XCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlRZUEVfQ0hFQ0ssXG4gICAgICAgIHZhbHVlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgICAgICBtZXNzYWdlOiBcIlRhZ3MgbXVzdCBiZSBhbiBvYmplY3Qgd2l0aCBzdHJpbmcga2V5LXZhbHVlIHBhaXJzXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIG5hbWU6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiVGhlIG5hbWUgb2YgdGhlIENvbnRhaW5lciBSZWdpc3RyeS4gTXVzdCBiZSBnbG9iYWxseSB1bmlxdWUsIDUtNTAgYWxwaGFudW1lcmljIGNoYXJhY3RlcnNcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiQ29udGFpbmVyIFJlZ2lzdHJ5IG5hbWUgaXMgcmVxdWlyZWRcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUEFUVEVSTl9NQVRDSCxcbiAgICAgICAgdmFsdWU6IFwiXlthLXpBLVowLTldezUsNTB9JFwiLFxuICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgIFwiQ29udGFpbmVyIFJlZ2lzdHJ5IG5hbWUgbXVzdCBiZSA1LTUwIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIG9ubHlcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgc2t1OiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIlRoZSBTS1UgKHByaWNpbmcgdGllcikgZm9yIHRoZSBDb250YWluZXIgUmVnaXN0cnkgKEJhc2ljLCBTdGFuZGFyZCwgUHJlbWl1bSlcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgIG1lc3NhZ2U6IFwiU0tVIGlzIHJlcXVpcmVkIGZvciBDb250YWluZXIgUmVnaXN0cmllc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBhZG1pblVzZXJFbmFibGVkOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5CT09MRUFOLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIldoZXRoZXIgdGhlIGFkbWluIHVzZXIgaXMgZW5hYmxlZCBmb3IgdGhlIHJlZ2lzdHJ5XCIsXG4gIH0sXG4gIHB1YmxpY05ldHdvcmtBY2Nlc3M6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBcIkVuYWJsZWRcIixcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiV2hldGhlciBwdWJsaWMgbmV0d29yayBhY2Nlc3MgaXMgZW5hYmxlZCAoRW5hYmxlZCBvciBEaXNhYmxlZClcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUEFUVEVSTl9NQVRDSCxcbiAgICAgICAgdmFsdWU6IFwiXihFbmFibGVkfERpc2FibGVkKSRcIixcbiAgICAgICAgbWVzc2FnZTogXCJQdWJsaWMgbmV0d29yayBhY2Nlc3MgbXVzdCBiZSBlaXRoZXIgJ0VuYWJsZWQnIG9yICdEaXNhYmxlZCdcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgbmV0d29ya1J1bGVTZXQ6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIk5ldHdvcmsgcnVsZSBzZXQgY29uZmlndXJhdGlvbiBmb3IgdGhlIENvbnRhaW5lciBSZWdpc3RyeSAoUHJlbWl1bSBTS1Ugb25seSlcIixcbiAgfSxcbiAgZW5jcnlwdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiRW5jcnlwdGlvbiBzZXR0aW5ncyB3aXRoIGN1c3RvbWVyLW1hbmFnZWQga2V5cyAoUHJlbWl1bSBTS1Ugb25seSlcIixcbiAgfSxcbiAgcG9saWNpZXM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIlBvbGljeSBjb25maWd1cmF0aW9uIGluY2x1ZGluZyByZXRlbnRpb24sIHRydXN0LCBleHBvcnQsIHF1YXJhbnRpbmUsIGFuZCBzb2Z0IGRlbGV0ZSBwb2xpY2llc1wiLFxuICB9LFxuICBpZGVudGl0eToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJNYW5hZ2VkIGlkZW50aXR5IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBDb250YWluZXIgUmVnaXN0cnlcIixcbiAgfSxcbiAgem9uZVJlZHVuZGFuY3k6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBcIkRpc2FibGVkXCIsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIldoZXRoZXIgem9uZSByZWR1bmRhbmN5IGlzIGVuYWJsZWQgKEVuYWJsZWQgb3IgRGlzYWJsZWQsIFByZW1pdW0gU0tVIG9ubHkpXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlBBVFRFUk5fTUFUQ0gsXG4gICAgICAgIHZhbHVlOiBcIl4oRW5hYmxlZHxEaXNhYmxlZCkkXCIsXG4gICAgICAgIG1lc3NhZ2U6IFwiWm9uZSByZWR1bmRhbmN5IG11c3QgYmUgZWl0aGVyICdFbmFibGVkJyBvciAnRGlzYWJsZWQnXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIGRhdGFFbmRwb2ludEVuYWJsZWQ6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLkJPT0xFQU4sXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIldoZXRoZXIgdG8gZW5hYmxlIGEgZGVkaWNhdGVkIGRhdGEgZW5kcG9pbnQgKFByZW1pdW0gU0tVIG9ubHkpXCIsXG4gIH0sXG4gIGFub255bW91c1B1bGxFbmFibGVkOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5CT09MRUFOLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJXaGV0aGVyIGFub255bW91cyBwdWxsIGlzIGVuYWJsZWQgZm9yIHVuYXV0aGVudGljYXRlZCBhY2Nlc3MgKFN0YW5kYXJkIG9yIFByZW1pdW0gU0tVKVwiLFxuICB9LFxuICBuZXR3b3JrUnVsZUJ5cGFzc09wdGlvbnM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVmYXVsdFZhbHVlOiBcIkF6dXJlU2VydmljZXNcIixcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiV2hldGhlciB0byBhbGxvdyB0cnVzdGVkIEF6dXJlIFNlcnZpY2VzIHRvIGFjY2VzcyBhIG5ldHdvcmsgcmVzdHJpY3RlZCByZWdpc3RyeVwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5QQVRURVJOX01BVENILFxuICAgICAgICB2YWx1ZTogXCJeKEF6dXJlU2VydmljZXN8Tm9uZSkkXCIsXG4gICAgICAgIG1lc3NhZ2U6XG4gICAgICAgICAgXCJOZXR3b3JrIHJ1bGUgYnlwYXNzIG9wdGlvbnMgbXVzdCBiZSBlaXRoZXIgJ0F6dXJlU2VydmljZXMnIG9yICdOb25lJ1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBpZ25vcmVDaGFuZ2VzOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5BUlJBWSxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiQXJyYXkgb2YgcHJvcGVydHkgbmFtZXMgdG8gaWdub3JlIGR1cmluZyB1cGRhdGVzXCIsXG4gICAgdmFsaWRhdGlvbjogW1xuICAgICAge1xuICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlRZUEVfQ0hFQ0ssXG4gICAgICAgIHZhbHVlOiBQcm9wZXJ0eVR5cGUuQVJSQVksXG4gICAgICAgIG1lc3NhZ2U6IFwiSWdub3JlQ2hhbmdlcyBtdXN0IGJlIGFuIGFycmF5IG9mIHN0cmluZ3NcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbn07XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBWRVJTSU9OLVNQRUNJRklDIFNDSEVNQVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogQVBJIFNjaGVtYSBmb3IgQ29udGFpbmVyIFJlZ2lzdHJ5IHZlcnNpb24gMjAyMy0wNy0wMVxuICovXG5leHBvcnQgY29uc3QgQ09OVEFJTkVSX1JFR0lTVFJZX1NDSEVNQV8yMDIzXzA3XzAxOiBBcGlTY2hlbWEgPSB7XG4gIHJlc291cmNlVHlwZTogXCJNaWNyb3NvZnQuQ29udGFpbmVyUmVnaXN0cnkvcmVnaXN0cmllc1wiLFxuICB2ZXJzaW9uOiBcIjIwMjMtMDctMDFcIixcbiAgcHJvcGVydGllczoge1xuICAgIC4uLkNPTU1PTl9QUk9QRVJUSUVTLFxuICB9LFxuICByZXF1aXJlZDogW1wibG9jYXRpb25cIiwgXCJuYW1lXCIsIFwic2t1XCJdLFxuICBvcHRpb25hbDogW1xuICAgIFwidGFnc1wiLFxuICAgIFwiYWRtaW5Vc2VyRW5hYmxlZFwiLFxuICAgIFwicHVibGljTmV0d29ya0FjY2Vzc1wiLFxuICAgIFwibmV0d29ya1J1bGVTZXRcIixcbiAgICBcImVuY3J5cHRpb25cIixcbiAgICBcInBvbGljaWVzXCIsXG4gICAgXCJpZGVudGl0eVwiLFxuICAgIFwiem9uZVJlZHVuZGFuY3lcIixcbiAgICBcImRhdGFFbmRwb2ludEVuYWJsZWRcIixcbiAgICBcImFub255bW91c1B1bGxFbmFibGVkXCIsXG4gICAgXCJuZXR3b3JrUnVsZUJ5cGFzc09wdGlvbnNcIixcbiAgICBcImlnbm9yZUNoYW5nZXNcIixcbiAgXSxcbiAgZGVwcmVjYXRlZDogW10sXG4gIHRyYW5zZm9ybWF0aW9uUnVsZXM6IHt9LFxuICB2YWxpZGF0aW9uUnVsZXM6IFtcbiAgICB7XG4gICAgICBwcm9wZXJ0eTogXCJsb2NhdGlvblwiLFxuICAgICAgcnVsZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgICAgbWVzc2FnZTogXCJMb2NhdGlvbiBpcyByZXF1aXJlZCBmb3IgQ29udGFpbmVyIFJlZ2lzdHJpZXNcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm9wZXJ0eTogXCJuYW1lXCIsXG4gICAgICBydWxlczogW1xuICAgICAgICB7XG4gICAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgICBtZXNzYWdlOiBcIk5hbWUgaXMgcmVxdWlyZWQgZm9yIENvbnRhaW5lciBSZWdpc3RyaWVzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gIF0sXG59O1xuXG4vKipcbiAqIEFQSSBTY2hlbWEgZm9yIENvbnRhaW5lciBSZWdpc3RyeSB2ZXJzaW9uIDIwMjUtMDQtMDFcbiAqL1xuZXhwb3J0IGNvbnN0IENPTlRBSU5FUl9SRUdJU1RSWV9TQ0hFTUFfMjAyNV8wNF8wMTogQXBpU2NoZW1hID0ge1xuICByZXNvdXJjZVR5cGU6IFwiTWljcm9zb2Z0LkNvbnRhaW5lclJlZ2lzdHJ5L3JlZ2lzdHJpZXNcIixcbiAgdmVyc2lvbjogXCIyMDI1LTA0LTAxXCIsXG4gIHByb3BlcnRpZXM6IHtcbiAgICAuLi5DT01NT05fUFJPUEVSVElFUyxcbiAgfSxcbiAgcmVxdWlyZWQ6IFtcImxvY2F0aW9uXCIsIFwibmFtZVwiLCBcInNrdVwiXSxcbiAgb3B0aW9uYWw6IFtcbiAgICBcInRhZ3NcIixcbiAgICBcImFkbWluVXNlckVuYWJsZWRcIixcbiAgICBcInB1YmxpY05ldHdvcmtBY2Nlc3NcIixcbiAgICBcIm5ldHdvcmtSdWxlU2V0XCIsXG4gICAgXCJlbmNyeXB0aW9uXCIsXG4gICAgXCJwb2xpY2llc1wiLFxuICAgIFwiaWRlbnRpdHlcIixcbiAgICBcInpvbmVSZWR1bmRhbmN5XCIsXG4gICAgXCJkYXRhRW5kcG9pbnRFbmFibGVkXCIsXG4gICAgXCJhbm9ueW1vdXNQdWxsRW5hYmxlZFwiLFxuICAgIFwibmV0d29ya1J1bGVCeXBhc3NPcHRpb25zXCIsXG4gICAgXCJpZ25vcmVDaGFuZ2VzXCIsXG4gIF0sXG4gIGRlcHJlY2F0ZWQ6IFtdLFxuICB0cmFuc2Zvcm1hdGlvblJ1bGVzOiB7fSxcbiAgdmFsaWRhdGlvblJ1bGVzOiBbXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwibG9jYXRpb25cIixcbiAgICAgIHJ1bGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICAgIG1lc3NhZ2U6IFwiTG9jYXRpb24gaXMgcmVxdWlyZWQgZm9yIENvbnRhaW5lciBSZWdpc3RyaWVzXCIsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvcGVydHk6IFwibmFtZVwiLFxuICAgICAgcnVsZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgICAgbWVzc2FnZTogXCJOYW1lIGlzIHJlcXVpcmVkIGZvciBDb250YWluZXIgUmVnaXN0cmllc1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFZFUlNJT04gQ09ORklHVVJBVElPTlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogVmVyc2lvbiBjb25maWd1cmF0aW9uIGZvciBDb250YWluZXIgUmVnaXN0cnkgMjAyMy0wNy0wMVxuICovXG5leHBvcnQgY29uc3QgQ09OVEFJTkVSX1JFR0lTVFJZX1ZFUlNJT05fMjAyM18wN18wMTogVmVyc2lvbkNvbmZpZyA9IHtcbiAgdmVyc2lvbjogXCIyMDIzLTA3LTAxXCIsXG4gIHNjaGVtYTogQ09OVEFJTkVSX1JFR0lTVFJZX1NDSEVNQV8yMDIzXzA3XzAxLFxuICBzdXBwb3J0TGV2ZWw6IFZlcnNpb25TdXBwb3J0TGV2ZWwuTUFJTlRFTkFOQ0UsXG4gIHJlbGVhc2VEYXRlOiBcIjIwMjMtMDctMDFcIixcbiAgZGVwcmVjYXRpb25EYXRlOiB1bmRlZmluZWQsXG4gIHN1bnNldERhdGU6IHVuZGVmaW5lZCxcbiAgYnJlYWtpbmdDaGFuZ2VzOiBbXSxcbiAgbWlncmF0aW9uR3VpZGU6IFwiL2RvY3MvY29udGFpbmVyLXJlZ2lzdHJ5L21pZ3JhdGlvbi0yMDIzLTA3LTAxXCIsXG4gIGNoYW5nZUxvZzogW1xuICAgIHtcbiAgICAgIGNoYW5nZVR5cGU6IFwidXBkYXRlZFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiU3RhYmxlIHJlbGVhc2Ugd2l0aCBwb2xpY3kgYW5kIGVuY3J5cHRpb24gc3VwcG9ydFwiLFxuICAgICAgYnJlYWtpbmc6IGZhbHNlLFxuICAgIH0sXG4gIF0sXG59O1xuXG4vKipcbiAqIFZlcnNpb24gY29uZmlndXJhdGlvbiBmb3IgQ29udGFpbmVyIFJlZ2lzdHJ5IDIwMjUtMDQtMDFcbiAqL1xuZXhwb3J0IGNvbnN0IENPTlRBSU5FUl9SRUdJU1RSWV9WRVJTSU9OXzIwMjVfMDRfMDE6IFZlcnNpb25Db25maWcgPSB7XG4gIHZlcnNpb246IFwiMjAyNS0wNC0wMVwiLFxuICBzY2hlbWE6IENPTlRBSU5FUl9SRUdJU1RSWV9TQ0hFTUFfMjAyNV8wNF8wMSxcbiAgc3VwcG9ydExldmVsOiBWZXJzaW9uU3VwcG9ydExldmVsLkFDVElWRSxcbiAgcmVsZWFzZURhdGU6IFwiMjAyNS0wNC0wMVwiLFxuICBkZXByZWNhdGlvbkRhdGU6IHVuZGVmaW5lZCxcbiAgc3Vuc2V0RGF0ZTogdW5kZWZpbmVkLFxuICBicmVha2luZ0NoYW5nZXM6IFtdLFxuICBtaWdyYXRpb25HdWlkZTogXCIvZG9jcy9jb250YWluZXItcmVnaXN0cnkvbWlncmF0aW9uLTIwMjUtMDQtMDFcIixcbiAgY2hhbmdlTG9nOiBbXG4gICAge1xuICAgICAgY2hhbmdlVHlwZTogXCJ1cGRhdGVkXCIsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgXCJMYXRlc3QgQVBJIHZlcnNpb24gd2l0aCBpbXByb3ZlZCBmZWF0dXJlcyBhbmQgcGVyZm9ybWFuY2UgZW5oYW5jZW1lbnRzXCIsXG4gICAgICBicmVha2luZzogZmFsc2UsXG4gICAgfSxcbiAgXSxcbn07XG5cbi8qKlxuICogQWxsIHN1cHBvcnRlZCBDb250YWluZXIgUmVnaXN0cnkgdmVyc2lvbnMgZm9yIHJlZ2lzdHJhdGlvblxuICovXG5leHBvcnQgY29uc3QgQUxMX0NPTlRBSU5FUl9SRUdJU1RSWV9WRVJTSU9OUzogVmVyc2lvbkNvbmZpZ1tdID0gW1xuICBDT05UQUlORVJfUkVHSVNUUllfVkVSU0lPTl8yMDIzXzA3XzAxLFxuICBDT05UQUlORVJfUkVHSVNUUllfVkVSU0lPTl8yMDI1XzA0XzAxLFxuXTtcblxuLyoqXG4gKiBSZXNvdXJjZSB0eXBlIGNvbnN0YW50XG4gKi9cbmV4cG9ydCBjb25zdCBDT05UQUlORVJfUkVHSVNUUllfVFlQRSA9IFwiTWljcm9zb2Z0LkNvbnRhaW5lclJlZ2lzdHJ5L3JlZ2lzdHJpZXNcIjtcbiJdfQ==
|