@microsoft/terraform-cdk-constructs 1.9.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 +55122 -31830
- package/API.md +74039 -46109
- 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/lib/log-analytics-workspace.js +1 -1
- 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/lib/network-watcher.js +1 -1
- package/lib/azure-policyassignment/lib/policy-assignment.js +1 -1
- package/lib/azure-policydefinition/lib/policy-definition.js +1 -1
- package/lib/azure-policysetdefinition/lib/policy-set-definition.js +1 -1
- 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.js +1 -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 +16 -0
- package/lib/index.js +18 -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
|
@@ -262,7 +262,7 @@ class RoleAssignment extends azapi_resource_1.AzapiResource {
|
|
|
262
262
|
}
|
|
263
263
|
exports.RoleAssignment = RoleAssignment;
|
|
264
264
|
_a = JSII_RTTI_SYMBOL_1;
|
|
265
|
-
RoleAssignment[_a] = { fqn: "@microsoft/terraform-cdk-constructs.RoleAssignment", version: "1.
|
|
265
|
+
RoleAssignment[_a] = { fqn: "@microsoft/terraform-cdk-constructs.RoleAssignment", version: "1.10.0" };
|
|
266
266
|
(() => {
|
|
267
267
|
azapi_resource_1.AzapiResource.registerSchemas(role_assignment_schemas_1.ROLE_ASSIGNMENT_TYPE, role_assignment_schemas_1.ALL_ROLE_ASSIGNMENT_VERSIONS);
|
|
268
268
|
})();
|
|
@@ -185,7 +185,7 @@ class RoleDefinition extends azapi_resource_1.AzapiResource {
|
|
|
185
185
|
}
|
|
186
186
|
exports.RoleDefinition = RoleDefinition;
|
|
187
187
|
_a = JSII_RTTI_SYMBOL_1;
|
|
188
|
-
RoleDefinition[_a] = { fqn: "@microsoft/terraform-cdk-constructs.RoleDefinition", version: "1.
|
|
188
|
+
RoleDefinition[_a] = { fqn: "@microsoft/terraform-cdk-constructs.RoleDefinition", version: "1.10.0" };
|
|
189
189
|
(() => {
|
|
190
190
|
azapi_resource_1.AzapiResource.registerSchemas(role_definition_schemas_1.ROLE_DEFINITION_TYPE, role_definition_schemas_1.ALL_ROLE_DEFINITION_VERSIONS);
|
|
191
191
|
})();
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXp1cmUtc3JlYWdlbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2xpYlwiO1xuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
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("./sre-agent-schemas"), exports);
|
|
18
|
+
__exportStar(require("./sre-agent"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtc3JlYWdlbnQvbGliL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzREFBb0M7QUFDcEMsOENBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3JlLWFnZW50LXNjaGVtYXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NyZS1hZ2VudFwiO1xuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API schemas for Azure SRE Agent across all supported versions
|
|
3
|
+
*
|
|
4
|
+
* This file defines the API schemas for Microsoft.App/agents (Azure SRE Agent)
|
|
5
|
+
* across all supported API versions. The schemas are used by the
|
|
6
|
+
* VersionedAzapiResource framework for validation, transformation, and version
|
|
7
|
+
* management.
|
|
8
|
+
*
|
|
9
|
+
* Reference: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/app/resource-manager/Microsoft.App/SreAgent
|
|
10
|
+
*/
|
|
11
|
+
import { ApiSchema, VersionConfig } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
12
|
+
/**
|
|
13
|
+
* API Schema for SRE Agent version 2026-01-01 (stable)
|
|
14
|
+
*
|
|
15
|
+
* Reference: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/app/resource-manager/Microsoft.App/SreAgent/stable/2026-01-01
|
|
16
|
+
*/
|
|
17
|
+
export declare const SRE_AGENT_SCHEMA_2026_01_01: ApiSchema;
|
|
18
|
+
/**
|
|
19
|
+
* Version configuration for SRE Agent 2026-01-01
|
|
20
|
+
*/
|
|
21
|
+
export declare const SRE_AGENT_VERSION_2026_01_01: VersionConfig;
|
|
22
|
+
/**
|
|
23
|
+
* All supported SRE Agent versions for registration
|
|
24
|
+
*/
|
|
25
|
+
export declare const ALL_SRE_AGENT_VERSIONS: VersionConfig[];
|
|
26
|
+
/**
|
|
27
|
+
* Resource type constant
|
|
28
|
+
*/
|
|
29
|
+
export declare const SRE_AGENT_TYPE = "Microsoft.App/agents";
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* API schemas for Azure SRE Agent across all supported versions
|
|
4
|
+
*
|
|
5
|
+
* This file defines the API schemas for Microsoft.App/agents (Azure SRE Agent)
|
|
6
|
+
* across all supported API versions. The schemas are used by the
|
|
7
|
+
* VersionedAzapiResource framework for validation, transformation, and version
|
|
8
|
+
* management.
|
|
9
|
+
*
|
|
10
|
+
* Reference: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/app/resource-manager/Microsoft.App/SreAgent
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.SRE_AGENT_TYPE = exports.ALL_SRE_AGENT_VERSIONS = exports.SRE_AGENT_VERSION_2026_01_01 = exports.SRE_AGENT_SCHEMA_2026_01_01 = void 0;
|
|
14
|
+
const version_interfaces_1 = require("../../core-azure/lib/version-manager/interfaces/version-interfaces");
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// COMMON PROPERTY DEFINITIONS
|
|
17
|
+
// =============================================================================
|
|
18
|
+
/**
|
|
19
|
+
* Common property definitions shared across all SRE Agent versions
|
|
20
|
+
*/
|
|
21
|
+
const COMMON_PROPERTIES = {
|
|
22
|
+
location: {
|
|
23
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
24
|
+
required: true,
|
|
25
|
+
description: "The Azure region where the SRE Agent will be created. Agents are regional tracked resources.",
|
|
26
|
+
validation: [
|
|
27
|
+
{
|
|
28
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
29
|
+
message: "Location is required for SRE Agents",
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
},
|
|
33
|
+
tags: {
|
|
34
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
35
|
+
required: false,
|
|
36
|
+
defaultValue: {},
|
|
37
|
+
description: "A dictionary of tags to apply to the SRE Agent for organizational, billing, or other purposes",
|
|
38
|
+
validation: [
|
|
39
|
+
{
|
|
40
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
41
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
42
|
+
message: "Tags must be an object with string key-value pairs",
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
name: {
|
|
47
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
48
|
+
required: true,
|
|
49
|
+
description: "The name of the SRE Agent. Must start with a letter and contain only alphanumeric characters and hyphens.",
|
|
50
|
+
validation: [
|
|
51
|
+
{
|
|
52
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
53
|
+
message: "SRE Agent name is required",
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
ruleType: version_interfaces_1.ValidationRuleType.PATTERN_MATCH,
|
|
57
|
+
value: "^[A-Za-z]([-A-Za-z0-9]*[A-Za-z0-9])?$",
|
|
58
|
+
message: "SRE Agent name must start with a letter and end with an alphanumeric character; only letters, numbers, and hyphens are allowed",
|
|
59
|
+
},
|
|
60
|
+
],
|
|
61
|
+
},
|
|
62
|
+
agentSpaceId: {
|
|
63
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
64
|
+
required: false,
|
|
65
|
+
description: "The ARM resource ID of the Agent Space referenced by this Agent",
|
|
66
|
+
validation: [
|
|
67
|
+
{
|
|
68
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
69
|
+
value: version_interfaces_1.PropertyType.STRING,
|
|
70
|
+
message: "agentSpaceId must be a string Azure resource ID",
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
},
|
|
74
|
+
identity: {
|
|
75
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
76
|
+
required: false,
|
|
77
|
+
description: "The managed service identity assigned to the SRE Agent (SystemAssigned, UserAssigned, or both)",
|
|
78
|
+
validation: [
|
|
79
|
+
{
|
|
80
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
81
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
82
|
+
message: "identity must be a managed service identity object",
|
|
83
|
+
},
|
|
84
|
+
],
|
|
85
|
+
},
|
|
86
|
+
agentIdentity: {
|
|
87
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
88
|
+
required: false,
|
|
89
|
+
description: "Agent identity configuration for accessing resources. Requires initialSponsorGroupId.",
|
|
90
|
+
validation: [
|
|
91
|
+
{
|
|
92
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
93
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
94
|
+
message: "agentIdentity must be an object",
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
defaultModel: {
|
|
99
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
100
|
+
required: false,
|
|
101
|
+
description: "Default AI model configuration for the SRE Agent",
|
|
102
|
+
validation: [
|
|
103
|
+
{
|
|
104
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
105
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
106
|
+
message: "defaultModel must be an object",
|
|
107
|
+
},
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
knowledgeGraphConfiguration: {
|
|
111
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
112
|
+
required: false,
|
|
113
|
+
description: "Knowledge graph configuration for the SRE Agent",
|
|
114
|
+
validation: [
|
|
115
|
+
{
|
|
116
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
117
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
118
|
+
message: "knowledgeGraphConfiguration must be an object",
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
actionConfiguration: {
|
|
123
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
124
|
+
required: false,
|
|
125
|
+
description: "Action configuration for the SRE Agent",
|
|
126
|
+
validation: [
|
|
127
|
+
{
|
|
128
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
129
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
130
|
+
message: "actionConfiguration must be an object",
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
logConfiguration: {
|
|
135
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
136
|
+
required: false,
|
|
137
|
+
description: "Log configuration for the SRE Agent",
|
|
138
|
+
validation: [
|
|
139
|
+
{
|
|
140
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
141
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
142
|
+
message: "logConfiguration must be an object",
|
|
143
|
+
},
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
incidentManagementConfiguration: {
|
|
147
|
+
dataType: version_interfaces_1.PropertyType.OBJECT,
|
|
148
|
+
required: false,
|
|
149
|
+
description: "Incident management configuration for the SRE Agent",
|
|
150
|
+
validation: [
|
|
151
|
+
{
|
|
152
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
153
|
+
value: version_interfaces_1.PropertyType.OBJECT,
|
|
154
|
+
message: "incidentManagementConfiguration must be an object",
|
|
155
|
+
},
|
|
156
|
+
],
|
|
157
|
+
},
|
|
158
|
+
upgradeChannel: {
|
|
159
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
160
|
+
required: false,
|
|
161
|
+
description: "The upgrade channel of the SRE Agent",
|
|
162
|
+
validation: [
|
|
163
|
+
{
|
|
164
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
165
|
+
value: version_interfaces_1.PropertyType.STRING,
|
|
166
|
+
message: "upgradeChannel must be a string",
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
},
|
|
170
|
+
ignoreChanges: {
|
|
171
|
+
dataType: version_interfaces_1.PropertyType.ARRAY,
|
|
172
|
+
required: false,
|
|
173
|
+
description: "Array of property names to ignore during updates",
|
|
174
|
+
validation: [
|
|
175
|
+
{
|
|
176
|
+
ruleType: version_interfaces_1.ValidationRuleType.TYPE_CHECK,
|
|
177
|
+
value: version_interfaces_1.PropertyType.ARRAY,
|
|
178
|
+
message: "ignoreChanges must be an array of strings",
|
|
179
|
+
},
|
|
180
|
+
],
|
|
181
|
+
},
|
|
182
|
+
};
|
|
183
|
+
// =============================================================================
|
|
184
|
+
// READ-ONLY PROPERTY DEFINITIONS
|
|
185
|
+
// =============================================================================
|
|
186
|
+
/**
|
|
187
|
+
* Read-only properties populated by Azure after creation
|
|
188
|
+
*/
|
|
189
|
+
const READ_ONLY_PROPERTIES = {
|
|
190
|
+
provisioningState: {
|
|
191
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
192
|
+
required: false,
|
|
193
|
+
description: "Provisioning state of the SRE Agent (read-only)",
|
|
194
|
+
},
|
|
195
|
+
agentEndpoint: {
|
|
196
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
197
|
+
required: false,
|
|
198
|
+
description: "The data plane endpoint of the SRE Agent (read-only)",
|
|
199
|
+
},
|
|
200
|
+
runningState: {
|
|
201
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
202
|
+
required: false,
|
|
203
|
+
description: "The running state of the SRE Agent (read-only)",
|
|
204
|
+
},
|
|
205
|
+
powerState: {
|
|
206
|
+
dataType: version_interfaces_1.PropertyType.STRING,
|
|
207
|
+
required: false,
|
|
208
|
+
description: "The power state of the SRE Agent (Running or Stopped, read-only)",
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
// =============================================================================
|
|
212
|
+
// VERSION-SPECIFIC SCHEMAS
|
|
213
|
+
// =============================================================================
|
|
214
|
+
/**
|
|
215
|
+
* API Schema for SRE Agent version 2026-01-01 (stable)
|
|
216
|
+
*
|
|
217
|
+
* Reference: https://github.com/Azure/azure-rest-api-specs/tree/main/specification/app/resource-manager/Microsoft.App/SreAgent/stable/2026-01-01
|
|
218
|
+
*/
|
|
219
|
+
exports.SRE_AGENT_SCHEMA_2026_01_01 = {
|
|
220
|
+
resourceType: "Microsoft.App/agents",
|
|
221
|
+
version: "2026-01-01",
|
|
222
|
+
properties: {
|
|
223
|
+
...COMMON_PROPERTIES,
|
|
224
|
+
...READ_ONLY_PROPERTIES,
|
|
225
|
+
},
|
|
226
|
+
required: ["location", "name"],
|
|
227
|
+
optional: [
|
|
228
|
+
"tags",
|
|
229
|
+
"identity",
|
|
230
|
+
"agentSpaceId",
|
|
231
|
+
"agentIdentity",
|
|
232
|
+
"defaultModel",
|
|
233
|
+
"knowledgeGraphConfiguration",
|
|
234
|
+
"actionConfiguration",
|
|
235
|
+
"logConfiguration",
|
|
236
|
+
"incidentManagementConfiguration",
|
|
237
|
+
"upgradeChannel",
|
|
238
|
+
"ignoreChanges",
|
|
239
|
+
],
|
|
240
|
+
deprecated: [],
|
|
241
|
+
transformationRules: {},
|
|
242
|
+
validationRules: [
|
|
243
|
+
{
|
|
244
|
+
property: "location",
|
|
245
|
+
rules: [
|
|
246
|
+
{
|
|
247
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
248
|
+
message: "Location is required for SRE Agents",
|
|
249
|
+
},
|
|
250
|
+
],
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
property: "name",
|
|
254
|
+
rules: [
|
|
255
|
+
{
|
|
256
|
+
ruleType: version_interfaces_1.ValidationRuleType.REQUIRED,
|
|
257
|
+
message: "Name is required for SRE Agents",
|
|
258
|
+
},
|
|
259
|
+
],
|
|
260
|
+
},
|
|
261
|
+
],
|
|
262
|
+
};
|
|
263
|
+
// =============================================================================
|
|
264
|
+
// VERSION CONFIGURATIONS
|
|
265
|
+
// =============================================================================
|
|
266
|
+
/**
|
|
267
|
+
* Version configuration for SRE Agent 2026-01-01
|
|
268
|
+
*/
|
|
269
|
+
exports.SRE_AGENT_VERSION_2026_01_01 = {
|
|
270
|
+
version: "2026-01-01",
|
|
271
|
+
schema: exports.SRE_AGENT_SCHEMA_2026_01_01,
|
|
272
|
+
supportLevel: version_interfaces_1.VersionSupportLevel.ACTIVE,
|
|
273
|
+
releaseDate: "2026-01-01",
|
|
274
|
+
deprecationDate: undefined,
|
|
275
|
+
sunsetDate: undefined,
|
|
276
|
+
breakingChanges: [],
|
|
277
|
+
migrationGuide: "/docs/sre-agent/migration-2026-01-01",
|
|
278
|
+
changeLog: [
|
|
279
|
+
{
|
|
280
|
+
changeType: "added",
|
|
281
|
+
description: "Stable release of Microsoft.App/agents (Azure SRE Agent) API with support for agent spaces, knowledge graphs, action configuration, and managed identity.",
|
|
282
|
+
breaking: false,
|
|
283
|
+
},
|
|
284
|
+
],
|
|
285
|
+
};
|
|
286
|
+
/**
|
|
287
|
+
* All supported SRE Agent versions for registration
|
|
288
|
+
*/
|
|
289
|
+
exports.ALL_SRE_AGENT_VERSIONS = [
|
|
290
|
+
exports.SRE_AGENT_VERSION_2026_01_01,
|
|
291
|
+
];
|
|
292
|
+
/**
|
|
293
|
+
* Resource type constant
|
|
294
|
+
*/
|
|
295
|
+
exports.SRE_AGENT_TYPE = "Microsoft.App/agents";
|
|
296
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JlLWFnZW50LXNjaGVtYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtc3JlYWdlbnQvbGliL3NyZS1hZ2VudC1zY2hlbWFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7O0dBU0c7OztBQUVILDJHQU80RTtBQUU1RSxnRkFBZ0Y7QUFDaEYsOEJBQThCO0FBQzlCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNILE1BQU0saUJBQWlCLEdBQTBDO0lBQy9ELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQ1QsOEZBQThGO1FBQ2hHLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUscUNBQXFDO2FBQy9DO1NBQ0Y7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLEtBQUs7UUFDZixZQUFZLEVBQUUsRUFBRTtRQUNoQixXQUFXLEVBQ1QsK0ZBQStGO1FBQ2pHLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxVQUFVO2dCQUN2QyxLQUFLLEVBQUUsaUNBQVksQ0FBQyxNQUFNO2dCQUMxQixPQUFPLEVBQUUsb0RBQW9EO2FBQzlEO1NBQ0Y7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQ1QsMkdBQTJHO1FBQzdHLFVBQVUsRUFBRTtZQUNWO2dCQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO2dCQUNyQyxPQUFPLEVBQUUsNEJBQTRCO2FBQ3RDO1lBQ0Q7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLGFBQWE7Z0JBQzFDLEtBQUssRUFBRSx1Q0FBdUM7Z0JBQzlDLE9BQU8sRUFDTCxnSUFBZ0k7YUFDbkk7U0FDRjtLQUNGO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFDVCxpRUFBaUU7UUFDbkUsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxpREFBaUQ7YUFDM0Q7U0FDRjtLQUNGO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFDVCxnR0FBZ0c7UUFDbEcsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxvREFBb0Q7YUFDOUQ7U0FDRjtLQUNGO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFDVCx1RkFBdUY7UUFDekYsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxpQ0FBaUM7YUFDM0M7U0FDRjtLQUNGO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxrREFBa0Q7UUFDL0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxnQ0FBZ0M7YUFDMUM7U0FDRjtLQUNGO0lBQ0QsMkJBQTJCLEVBQUU7UUFDM0IsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxpREFBaUQ7UUFDOUQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSwrQ0FBK0M7YUFDekQ7U0FDRjtLQUNGO0lBQ0QsbUJBQW1CLEVBQUU7UUFDbkIsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSx3Q0FBd0M7UUFDckQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSx1Q0FBdUM7YUFDakQ7U0FDRjtLQUNGO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxxQ0FBcUM7UUFDbEQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxvQ0FBb0M7YUFDOUM7U0FDRjtLQUNGO0lBQ0QsK0JBQStCLEVBQUU7UUFDL0IsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxxREFBcUQ7UUFDbEUsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxtREFBbUQ7YUFDN0Q7U0FDRjtLQUNGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxzQ0FBc0M7UUFDbkQsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLE1BQU07Z0JBQzFCLE9BQU8sRUFBRSxpQ0FBaUM7YUFDM0M7U0FDRjtLQUNGO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGlDQUFZLENBQUMsS0FBSztRQUM1QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxrREFBa0Q7UUFDL0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFVBQVU7Z0JBQ3ZDLEtBQUssRUFBRSxpQ0FBWSxDQUFDLEtBQUs7Z0JBQ3pCLE9BQU8sRUFBRSwyQ0FBMkM7YUFDckQ7U0FDRjtLQUNGO0NBQ0YsQ0FBQztBQUVGLGdGQUFnRjtBQUNoRixpQ0FBaUM7QUFDakMsZ0ZBQWdGO0FBRWhGOztHQUVHO0FBQ0gsTUFBTSxvQkFBb0IsR0FBMEM7SUFDbEUsaUJBQWlCLEVBQUU7UUFDakIsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxpREFBaUQ7S0FDL0Q7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsaUNBQVksQ0FBQyxNQUFNO1FBQzdCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsV0FBVyxFQUFFLHNEQUFzRDtLQUNwRTtJQUNELFlBQVksRUFBRTtRQUNaLFFBQVEsRUFBRSxpQ0FBWSxDQUFDLE1BQU07UUFDN0IsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUsZ0RBQWdEO0tBQzlEO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLGlDQUFZLENBQUMsTUFBTTtRQUM3QixRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFDVCxrRUFBa0U7S0FDckU7Q0FDRixDQUFDO0FBRUYsZ0ZBQWdGO0FBQ2hGLDJCQUEyQjtBQUMzQixnRkFBZ0Y7QUFFaEY7Ozs7R0FJRztBQUNVLFFBQUEsMkJBQTJCLEdBQWM7SUFDcEQsWUFBWSxFQUFFLHNCQUFzQjtJQUNwQyxPQUFPLEVBQUUsWUFBWTtJQUNyQixVQUFVLEVBQUU7UUFDVixHQUFHLGlCQUFpQjtRQUNwQixHQUFHLG9CQUFvQjtLQUN4QjtJQUNELFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUM7SUFDOUIsUUFBUSxFQUFFO1FBQ1IsTUFBTTtRQUNOLFVBQVU7UUFDVixjQUFjO1FBQ2QsZUFBZTtRQUNmLGNBQWM7UUFDZCw2QkFBNkI7UUFDN0IscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixpQ0FBaUM7UUFDakMsZ0JBQWdCO1FBQ2hCLGVBQWU7S0FDaEI7SUFDRCxVQUFVLEVBQUUsRUFBRTtJQUNkLG1CQUFtQixFQUFFLEVBQUU7SUFDdkIsZUFBZSxFQUFFO1FBQ2Y7WUFDRSxRQUFRLEVBQUUsVUFBVTtZQUNwQixLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsUUFBUSxFQUFFLHVDQUFrQixDQUFDLFFBQVE7b0JBQ3JDLE9BQU8sRUFBRSxxQ0FBcUM7aUJBQy9DO2FBQ0Y7U0FDRjtRQUNEO1lBQ0UsUUFBUSxFQUFFLE1BQU07WUFDaEIsS0FBSyxFQUFFO2dCQUNMO29CQUNFLFFBQVEsRUFBRSx1Q0FBa0IsQ0FBQyxRQUFRO29CQUNyQyxPQUFPLEVBQUUsaUNBQWlDO2lCQUMzQzthQUNGO1NBQ0Y7S0FDRjtDQUNGLENBQUM7QUFFRixnRkFBZ0Y7QUFDaEYseUJBQXlCO0FBQ3pCLGdGQUFnRjtBQUVoRjs7R0FFRztBQUNVLFFBQUEsNEJBQTRCLEdBQWtCO0lBQ3pELE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE1BQU0sRUFBRSxtQ0FBMkI7SUFDbkMsWUFBWSxFQUFFLHdDQUFtQixDQUFDLE1BQU07SUFDeEMsV0FBVyxFQUFFLFlBQVk7SUFDekIsZUFBZSxFQUFFLFNBQVM7SUFDMUIsVUFBVSxFQUFFLFNBQVM7SUFDckIsZUFBZSxFQUFFLEVBQUU7SUFDbkIsY0FBYyxFQUFFLHNDQUFzQztJQUN0RCxTQUFTLEVBQUU7UUFDVDtZQUNFLFVBQVUsRUFBRSxPQUFPO1lBQ25CLFdBQVcsRUFDVCwySkFBMko7WUFDN0osUUFBUSxFQUFFLEtBQUs7U0FDaEI7S0FDRjtDQUNGLENBQUM7QUFFRjs7R0FFRztBQUNVLFFBQUEsc0JBQXNCLEdBQW9CO0lBQ3JELG9DQUE0QjtDQUM3QixDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLGNBQWMsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQVBJIHNjaGVtYXMgZm9yIEF6dXJlIFNSRSBBZ2VudCBhY3Jvc3MgYWxsIHN1cHBvcnRlZCB2ZXJzaW9uc1xuICpcbiAqIFRoaXMgZmlsZSBkZWZpbmVzIHRoZSBBUEkgc2NoZW1hcyBmb3IgTWljcm9zb2Z0LkFwcC9hZ2VudHMgKEF6dXJlIFNSRSBBZ2VudClcbiAqIGFjcm9zcyBhbGwgc3VwcG9ydGVkIEFQSSB2ZXJzaW9ucy4gVGhlIHNjaGVtYXMgYXJlIHVzZWQgYnkgdGhlXG4gKiBWZXJzaW9uZWRBemFwaVJlc291cmNlIGZyYW1ld29yayBmb3IgdmFsaWRhdGlvbiwgdHJhbnNmb3JtYXRpb24sIGFuZCB2ZXJzaW9uXG4gKiBtYW5hZ2VtZW50LlxuICpcbiAqIFJlZmVyZW5jZTogaHR0cHM6Ly9naXRodWIuY29tL0F6dXJlL2F6dXJlLXJlc3QtYXBpLXNwZWNzL3RyZWUvbWFpbi9zcGVjaWZpY2F0aW9uL2FwcC9yZXNvdXJjZS1tYW5hZ2VyL01pY3Jvc29mdC5BcHAvU3JlQWdlbnRcbiAqL1xuXG5pbXBvcnQge1xuICBBcGlTY2hlbWEsXG4gIFByb3BlcnR5RGVmaW5pdGlvbixcbiAgUHJvcGVydHlUeXBlLFxuICBWYWxpZGF0aW9uUnVsZVR5cGUsXG4gIFZlcnNpb25Db25maWcsXG4gIFZlcnNpb25TdXBwb3J0TGV2ZWwsXG59IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlL2xpYi92ZXJzaW9uLW1hbmFnZXIvaW50ZXJmYWNlcy92ZXJzaW9uLWludGVyZmFjZXNcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENPTU1PTiBQUk9QRVJUWSBERUZJTklUSU9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBDb21tb24gcHJvcGVydHkgZGVmaW5pdGlvbnMgc2hhcmVkIGFjcm9zcyBhbGwgU1JFIEFnZW50IHZlcnNpb25zXG4gKi9cbmNvbnN0IENPTU1PTl9QUk9QRVJUSUVTOiB7IFtrZXk6IHN0cmluZ106IFByb3BlcnR5RGVmaW5pdGlvbiB9ID0ge1xuICBsb2NhdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuU1RSSU5HLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJUaGUgQXp1cmUgcmVnaW9uIHdoZXJlIHRoZSBTUkUgQWdlbnQgd2lsbCBiZSBjcmVhdGVkLiBBZ2VudHMgYXJlIHJlZ2lvbmFsIHRyYWNrZWQgcmVzb3VyY2VzLlwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgbWVzc2FnZTogXCJMb2NhdGlvbiBpcyByZXF1aXJlZCBmb3IgU1JFIEFnZW50c1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICB0YWdzOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlZmF1bHRWYWx1ZToge30sXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIkEgZGljdGlvbmFyeSBvZiB0YWdzIHRvIGFwcGx5IHRvIHRoZSBTUkUgQWdlbnQgZm9yIG9yZ2FuaXphdGlvbmFsLCBiaWxsaW5nLCBvciBvdGhlciBwdXJwb3Nlc1wiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJUYWdzIG11c3QgYmUgYW4gb2JqZWN0IHdpdGggc3RyaW5nIGtleS12YWx1ZSBwYWlyc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBuYW1lOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIlRoZSBuYW1lIG9mIHRoZSBTUkUgQWdlbnQuIE11c3Qgc3RhcnQgd2l0aCBhIGxldHRlciBhbmQgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBoeXBoZW5zLlwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5SRVFVSVJFRCxcbiAgICAgICAgbWVzc2FnZTogXCJTUkUgQWdlbnQgbmFtZSBpcyByZXF1aXJlZFwiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5QQVRURVJOX01BVENILFxuICAgICAgICB2YWx1ZTogXCJeW0EtWmEtel0oWy1BLVphLXowLTldKltBLVphLXowLTldKT8kXCIsXG4gICAgICAgIG1lc3NhZ2U6XG4gICAgICAgICAgXCJTUkUgQWdlbnQgbmFtZSBtdXN0IHN0YXJ0IHdpdGggYSBsZXR0ZXIgYW5kIGVuZCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXI7IG9ubHkgbGV0dGVycywgbnVtYmVycywgYW5kIGh5cGhlbnMgYXJlIGFsbG93ZWRcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgYWdlbnRTcGFjZUlkOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJUaGUgQVJNIHJlc291cmNlIElEIG9mIHRoZSBBZ2VudCBTcGFjZSByZWZlcmVuY2VkIGJ5IHRoaXMgQWdlbnRcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgICAgIG1lc3NhZ2U6IFwiYWdlbnRTcGFjZUlkIG11c3QgYmUgYSBzdHJpbmcgQXp1cmUgcmVzb3VyY2UgSURcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgaWRlbnRpdHk6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246XG4gICAgICBcIlRoZSBtYW5hZ2VkIHNlcnZpY2UgaWRlbnRpdHkgYXNzaWduZWQgdG8gdGhlIFNSRSBBZ2VudCAoU3lzdGVtQXNzaWduZWQsIFVzZXJBc3NpZ25lZCwgb3IgYm90aClcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgICAgIG1lc3NhZ2U6IFwiaWRlbnRpdHkgbXVzdCBiZSBhIG1hbmFnZWQgc2VydmljZSBpZGVudGl0eSBvYmplY3RcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgYWdlbnRJZGVudGl0eToge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjpcbiAgICAgIFwiQWdlbnQgaWRlbnRpdHkgY29uZmlndXJhdGlvbiBmb3IgYWNjZXNzaW5nIHJlc291cmNlcy4gUmVxdWlyZXMgaW5pdGlhbFNwb25zb3JHcm91cElkLlwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJhZ2VudElkZW50aXR5IG11c3QgYmUgYW4gb2JqZWN0XCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIGRlZmF1bHRNb2RlbDoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJEZWZhdWx0IEFJIG1vZGVsIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBTUkUgQWdlbnRcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgICAgIG1lc3NhZ2U6IFwiZGVmYXVsdE1vZGVsIG11c3QgYmUgYW4gb2JqZWN0XCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIGtub3dsZWRnZUdyYXBoQ29uZmlndXJhdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJLbm93bGVkZ2UgZ3JhcGggY29uZmlndXJhdGlvbiBmb3IgdGhlIFNSRSBBZ2VudFwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJrbm93bGVkZ2VHcmFwaENvbmZpZ3VyYXRpb24gbXVzdCBiZSBhbiBvYmplY3RcIixcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgYWN0aW9uQ29uZmlndXJhdGlvbjoge1xuICAgIGRhdGFUeXBlOiBQcm9wZXJ0eVR5cGUuT0JKRUNULFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJBY3Rpb24gY29uZmlndXJhdGlvbiBmb3IgdGhlIFNSRSBBZ2VudFwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJhY3Rpb25Db25maWd1cmF0aW9uIG11c3QgYmUgYW4gb2JqZWN0XCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIGxvZ0NvbmZpZ3VyYXRpb246IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiTG9nIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBTUkUgQWdlbnRcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgICAgIG1lc3NhZ2U6IFwibG9nQ29uZmlndXJhdGlvbiBtdXN0IGJlIGFuIG9iamVjdFwiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICBpbmNpZGVudE1hbmFnZW1lbnRDb25maWd1cmF0aW9uOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5PQkpFQ1QsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIkluY2lkZW50IG1hbmFnZW1lbnQgY29uZmlndXJhdGlvbiBmb3IgdGhlIFNSRSBBZ2VudFwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLk9CSkVDVCxcbiAgICAgICAgbWVzc2FnZTogXCJpbmNpZGVudE1hbmFnZW1lbnRDb25maWd1cmF0aW9uIG11c3QgYmUgYW4gb2JqZWN0XCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHVwZ3JhZGVDaGFubmVsOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIlRoZSB1cGdyYWRlIGNoYW5uZWwgb2YgdGhlIFNSRSBBZ2VudFwiLFxuICAgIHZhbGlkYXRpb246IFtcbiAgICAgIHtcbiAgICAgICAgcnVsZVR5cGU6IFZhbGlkYXRpb25SdWxlVHlwZS5UWVBFX0NIRUNLLFxuICAgICAgICB2YWx1ZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICAgICAgbWVzc2FnZTogXCJ1cGdyYWRlQ2hhbm5lbCBtdXN0IGJlIGEgc3RyaW5nXCIsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIGlnbm9yZUNoYW5nZXM6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLkFSUkFZLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICBkZXNjcmlwdGlvbjogXCJBcnJheSBvZiBwcm9wZXJ0eSBuYW1lcyB0byBpZ25vcmUgZHVyaW5nIHVwZGF0ZXNcIixcbiAgICB2YWxpZGF0aW9uOiBbXG4gICAgICB7XG4gICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuVFlQRV9DSEVDSyxcbiAgICAgICAgdmFsdWU6IFByb3BlcnR5VHlwZS5BUlJBWSxcbiAgICAgICAgbWVzc2FnZTogXCJpZ25vcmVDaGFuZ2VzIG11c3QgYmUgYW4gYXJyYXkgb2Ygc3RyaW5nc1wiLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFQUQtT05MWSBQUk9QRVJUWSBERUZJTklUSU9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBSZWFkLW9ubHkgcHJvcGVydGllcyBwb3B1bGF0ZWQgYnkgQXp1cmUgYWZ0ZXIgY3JlYXRpb25cbiAqL1xuY29uc3QgUkVBRF9PTkxZX1BST1BFUlRJRVM6IHsgW2tleTogc3RyaW5nXTogUHJvcGVydHlEZWZpbml0aW9uIH0gPSB7XG4gIHByb3Zpc2lvbmluZ1N0YXRlOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOiBcIlByb3Zpc2lvbmluZyBzdGF0ZSBvZiB0aGUgU1JFIEFnZW50IChyZWFkLW9ubHkpXCIsXG4gIH0sXG4gIGFnZW50RW5kcG9pbnQ6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiVGhlIGRhdGEgcGxhbmUgZW5kcG9pbnQgb2YgdGhlIFNSRSBBZ2VudCAocmVhZC1vbmx5KVwiLFxuICB9LFxuICBydW5uaW5nU3RhdGU6IHtcbiAgICBkYXRhVHlwZTogUHJvcGVydHlUeXBlLlNUUklORyxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgZGVzY3JpcHRpb246IFwiVGhlIHJ1bm5pbmcgc3RhdGUgb2YgdGhlIFNSRSBBZ2VudCAocmVhZC1vbmx5KVwiLFxuICB9LFxuICBwb3dlclN0YXRlOiB7XG4gICAgZGF0YVR5cGU6IFByb3BlcnR5VHlwZS5TVFJJTkcsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIGRlc2NyaXB0aW9uOlxuICAgICAgXCJUaGUgcG93ZXIgc3RhdGUgb2YgdGhlIFNSRSBBZ2VudCAoUnVubmluZyBvciBTdG9wcGVkLCByZWFkLW9ubHkpXCIsXG4gIH0sXG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVkVSU0lPTi1TUEVDSUZJQyBTQ0hFTUFTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEFQSSBTY2hlbWEgZm9yIFNSRSBBZ2VudCB2ZXJzaW9uIDIwMjYtMDEtMDEgKHN0YWJsZSlcbiAqXG4gKiBSZWZlcmVuY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9BenVyZS9henVyZS1yZXN0LWFwaS1zcGVjcy90cmVlL21haW4vc3BlY2lmaWNhdGlvbi9hcHAvcmVzb3VyY2UtbWFuYWdlci9NaWNyb3NvZnQuQXBwL1NyZUFnZW50L3N0YWJsZS8yMDI2LTAxLTAxXG4gKi9cbmV4cG9ydCBjb25zdCBTUkVfQUdFTlRfU0NIRU1BXzIwMjZfMDFfMDE6IEFwaVNjaGVtYSA9IHtcbiAgcmVzb3VyY2VUeXBlOiBcIk1pY3Jvc29mdC5BcHAvYWdlbnRzXCIsXG4gIHZlcnNpb246IFwiMjAyNi0wMS0wMVwiLFxuICBwcm9wZXJ0aWVzOiB7XG4gICAgLi4uQ09NTU9OX1BST1BFUlRJRVMsXG4gICAgLi4uUkVBRF9PTkxZX1BST1BFUlRJRVMsXG4gIH0sXG4gIHJlcXVpcmVkOiBbXCJsb2NhdGlvblwiLCBcIm5hbWVcIl0sXG4gIG9wdGlvbmFsOiBbXG4gICAgXCJ0YWdzXCIsXG4gICAgXCJpZGVudGl0eVwiLFxuICAgIFwiYWdlbnRTcGFjZUlkXCIsXG4gICAgXCJhZ2VudElkZW50aXR5XCIsXG4gICAgXCJkZWZhdWx0TW9kZWxcIixcbiAgICBcImtub3dsZWRnZUdyYXBoQ29uZmlndXJhdGlvblwiLFxuICAgIFwiYWN0aW9uQ29uZmlndXJhdGlvblwiLFxuICAgIFwibG9nQ29uZmlndXJhdGlvblwiLFxuICAgIFwiaW5jaWRlbnRNYW5hZ2VtZW50Q29uZmlndXJhdGlvblwiLFxuICAgIFwidXBncmFkZUNoYW5uZWxcIixcbiAgICBcImlnbm9yZUNoYW5nZXNcIixcbiAgXSxcbiAgZGVwcmVjYXRlZDogW10sXG4gIHRyYW5zZm9ybWF0aW9uUnVsZXM6IHt9LFxuICB2YWxpZGF0aW9uUnVsZXM6IFtcbiAgICB7XG4gICAgICBwcm9wZXJ0eTogXCJsb2NhdGlvblwiLFxuICAgICAgcnVsZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHJ1bGVUeXBlOiBWYWxpZGF0aW9uUnVsZVR5cGUuUkVRVUlSRUQsXG4gICAgICAgICAgbWVzc2FnZTogXCJMb2NhdGlvbiBpcyByZXF1aXJlZCBmb3IgU1JFIEFnZW50c1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3BlcnR5OiBcIm5hbWVcIixcbiAgICAgIHJ1bGVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBydWxlVHlwZTogVmFsaWRhdGlvblJ1bGVUeXBlLlJFUVVJUkVELFxuICAgICAgICAgIG1lc3NhZ2U6IFwiTmFtZSBpcyByZXF1aXJlZCBmb3IgU1JFIEFnZW50c1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFZFUlNJT04gQ09ORklHVVJBVElPTlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogVmVyc2lvbiBjb25maWd1cmF0aW9uIGZvciBTUkUgQWdlbnQgMjAyNi0wMS0wMVxuICovXG5leHBvcnQgY29uc3QgU1JFX0FHRU5UX1ZFUlNJT05fMjAyNl8wMV8wMTogVmVyc2lvbkNvbmZpZyA9IHtcbiAgdmVyc2lvbjogXCIyMDI2LTAxLTAxXCIsXG4gIHNjaGVtYTogU1JFX0FHRU5UX1NDSEVNQV8yMDI2XzAxXzAxLFxuICBzdXBwb3J0TGV2ZWw6IFZlcnNpb25TdXBwb3J0TGV2ZWwuQUNUSVZFLFxuICByZWxlYXNlRGF0ZTogXCIyMDI2LTAxLTAxXCIsXG4gIGRlcHJlY2F0aW9uRGF0ZTogdW5kZWZpbmVkLFxuICBzdW5zZXREYXRlOiB1bmRlZmluZWQsXG4gIGJyZWFraW5nQ2hhbmdlczogW10sXG4gIG1pZ3JhdGlvbkd1aWRlOiBcIi9kb2NzL3NyZS1hZ2VudC9taWdyYXRpb24tMjAyNi0wMS0wMVwiLFxuICBjaGFuZ2VMb2c6IFtcbiAgICB7XG4gICAgICBjaGFuZ2VUeXBlOiBcImFkZGVkXCIsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgXCJTdGFibGUgcmVsZWFzZSBvZiBNaWNyb3NvZnQuQXBwL2FnZW50cyAoQXp1cmUgU1JFIEFnZW50KSBBUEkgd2l0aCBzdXBwb3J0IGZvciBhZ2VudCBzcGFjZXMsIGtub3dsZWRnZSBncmFwaHMsIGFjdGlvbiBjb25maWd1cmF0aW9uLCBhbmQgbWFuYWdlZCBpZGVudGl0eS5cIixcbiAgICAgIGJyZWFraW5nOiBmYWxzZSxcbiAgICB9LFxuICBdLFxufTtcblxuLyoqXG4gKiBBbGwgc3VwcG9ydGVkIFNSRSBBZ2VudCB2ZXJzaW9ucyBmb3IgcmVnaXN0cmF0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBBTExfU1JFX0FHRU5UX1ZFUlNJT05TOiBWZXJzaW9uQ29uZmlnW10gPSBbXG4gIFNSRV9BR0VOVF9WRVJTSU9OXzIwMjZfMDFfMDEsXG5dO1xuXG4vKipcbiAqIFJlc291cmNlIHR5cGUgY29uc3RhbnRcbiAqL1xuZXhwb3J0IGNvbnN0IFNSRV9BR0VOVF9UWVBFID0gXCJNaWNyb3NvZnQuQXBwL2FnZW50c1wiO1xuIl19
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Azure SRE Agent (Microsoft.App/agents) construct using the
|
|
3
|
+
* VersionedAzapiResource framework.
|
|
4
|
+
*
|
|
5
|
+
* Azure SRE Agent provides AI-powered Site Reliability Engineering agents
|
|
6
|
+
* that can be configured with knowledge graphs, actions, incident
|
|
7
|
+
* management integration and a default AI model.
|
|
8
|
+
*
|
|
9
|
+
* Supported API Versions:
|
|
10
|
+
* - 2026-01-01 (Active, Latest, Stable)
|
|
11
|
+
*
|
|
12
|
+
* Reference:
|
|
13
|
+
* https://github.com/Azure/azure-rest-api-specs/tree/main/specification/app/resource-manager/Microsoft.App/SreAgent
|
|
14
|
+
*/
|
|
15
|
+
import * as cdktf from "cdktf";
|
|
16
|
+
import { Construct } from "constructs";
|
|
17
|
+
import { AzapiResource, AzapiResourceProps } from "../../core-azure/lib/azapi/azapi-resource";
|
|
18
|
+
import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
19
|
+
/**
|
|
20
|
+
* Managed Service Identity configuration for the SRE Agent.
|
|
21
|
+
*
|
|
22
|
+
* Mirrors the ManagedServiceIdentity shape used by Azure ARM resources.
|
|
23
|
+
*/
|
|
24
|
+
export interface SreAgentManagedIdentity {
|
|
25
|
+
/**
|
|
26
|
+
* The type of managed service identity.
|
|
27
|
+
*
|
|
28
|
+
* Allowed values: "None", "SystemAssigned", "UserAssigned",
|
|
29
|
+
* "SystemAssigned,UserAssigned".
|
|
30
|
+
*/
|
|
31
|
+
readonly type: string;
|
|
32
|
+
/**
|
|
33
|
+
* Set of user assigned identities, keyed by their ARM resource IDs.
|
|
34
|
+
*/
|
|
35
|
+
readonly userAssignedIdentities?: {
|
|
36
|
+
[key: string]: any;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Agent identity configuration.
|
|
41
|
+
*
|
|
42
|
+
* Used by the SRE Agent runtime to obtain credentials for accessing
|
|
43
|
+
* external systems on behalf of the agent.
|
|
44
|
+
*/
|
|
45
|
+
export interface SreAgentIdentity {
|
|
46
|
+
/**
|
|
47
|
+
* Initial sponsor group ID (required by the Azure API)
|
|
48
|
+
*/
|
|
49
|
+
readonly initialSponsorGroupId: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Properties for the Azure SRE Agent construct
|
|
53
|
+
*/
|
|
54
|
+
export interface SreAgentProps extends AzapiResourceProps {
|
|
55
|
+
/**
|
|
56
|
+
* The ARM resource ID of the parent resource group.
|
|
57
|
+
*
|
|
58
|
+
* If omitted, the resource will be scoped to the subscription, which
|
|
59
|
+
* is typically not valid for tracked resources.
|
|
60
|
+
*/
|
|
61
|
+
readonly resourceGroupId?: string;
|
|
62
|
+
/**
|
|
63
|
+
* The ARM resource ID of the Agent Space (Microsoft.App/agentSpaces)
|
|
64
|
+
* that this Agent belongs to. Optional.
|
|
65
|
+
*/
|
|
66
|
+
readonly agentSpaceId?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Managed service identity configuration assigned to the SRE Agent.
|
|
69
|
+
*/
|
|
70
|
+
readonly identity?: SreAgentManagedIdentity;
|
|
71
|
+
/**
|
|
72
|
+
* Agent identity configuration used by the SRE Agent runtime to
|
|
73
|
+
* access external systems.
|
|
74
|
+
*/
|
|
75
|
+
readonly agentIdentity?: SreAgentIdentity;
|
|
76
|
+
/**
|
|
77
|
+
* Default AI model configuration for the SRE Agent.
|
|
78
|
+
*
|
|
79
|
+
* Free-form object passed directly to the Azure REST API. Fields vary
|
|
80
|
+
* depending on the chosen model provider (e.g. model name, deployment
|
|
81
|
+
* name, endpoint).
|
|
82
|
+
*/
|
|
83
|
+
readonly defaultModel?: {
|
|
84
|
+
[key: string]: any;
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* Knowledge graph configuration.
|
|
88
|
+
*/
|
|
89
|
+
readonly knowledgeGraphConfiguration?: {
|
|
90
|
+
[key: string]: any;
|
|
91
|
+
};
|
|
92
|
+
/**
|
|
93
|
+
* Action configuration.
|
|
94
|
+
*/
|
|
95
|
+
readonly actionConfiguration?: {
|
|
96
|
+
[key: string]: any;
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* Log configuration.
|
|
100
|
+
*/
|
|
101
|
+
readonly logConfiguration?: {
|
|
102
|
+
[key: string]: any;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Incident management configuration.
|
|
106
|
+
*/
|
|
107
|
+
readonly incidentManagementConfiguration?: {
|
|
108
|
+
[key: string]: any;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Upgrade channel for the SRE Agent.
|
|
112
|
+
*/
|
|
113
|
+
readonly upgradeChannel?: string;
|
|
114
|
+
/**
|
|
115
|
+
* Lifecycle ignore_changes rules.
|
|
116
|
+
*
|
|
117
|
+
* @example ["tags"]
|
|
118
|
+
*/
|
|
119
|
+
readonly ignoreChanges?: string[];
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Resource body for Azure SRE Agent API calls.
|
|
123
|
+
*
|
|
124
|
+
* Matches the Microsoft.App/agents Azure REST API schema.
|
|
125
|
+
*/
|
|
126
|
+
export interface SreAgentBody {
|
|
127
|
+
readonly location: string;
|
|
128
|
+
readonly tags?: {
|
|
129
|
+
[key: string]: string;
|
|
130
|
+
};
|
|
131
|
+
readonly identity?: SreAgentManagedIdentity;
|
|
132
|
+
readonly properties?: {
|
|
133
|
+
[key: string]: any;
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Azure SRE Agent (Microsoft.App/agents) construct.
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* // Basic SRE Agent
|
|
141
|
+
* const agent = new SreAgent(this, "sre-agent", {
|
|
142
|
+
* name: "my-sre-agent",
|
|
143
|
+
* location: "eastus",
|
|
144
|
+
* resourceGroupId: resourceGroup.id,
|
|
145
|
+
* identity: { type: "SystemAssigned" },
|
|
146
|
+
* agentIdentity: {
|
|
147
|
+
* initialSponsorGroupId: "00000000-0000-0000-0000-000000000000",
|
|
148
|
+
* },
|
|
149
|
+
* });
|
|
150
|
+
*
|
|
151
|
+
* @stability stable
|
|
152
|
+
*/
|
|
153
|
+
export declare class SreAgent extends AzapiResource {
|
|
154
|
+
/**
|
|
155
|
+
* Input properties for this SRE Agent instance.
|
|
156
|
+
*/
|
|
157
|
+
readonly props: SreAgentProps;
|
|
158
|
+
readonly idOutput: cdktf.TerraformOutput;
|
|
159
|
+
readonly locationOutput: cdktf.TerraformOutput;
|
|
160
|
+
readonly nameOutput: cdktf.TerraformOutput;
|
|
161
|
+
readonly tagsOutput: cdktf.TerraformOutput;
|
|
162
|
+
readonly agentEndpointOutput: cdktf.TerraformOutput;
|
|
163
|
+
readonly provisioningStateOutput: cdktf.TerraformOutput;
|
|
164
|
+
readonly powerStateOutput: cdktf.TerraformOutput;
|
|
165
|
+
constructor(scope: Construct, id: string, props: SreAgentProps);
|
|
166
|
+
protected defaultVersion(): string;
|
|
167
|
+
protected resourceType(): string;
|
|
168
|
+
protected apiSchema(): ApiSchema;
|
|
169
|
+
protected requiresLocation(): boolean;
|
|
170
|
+
/**
|
|
171
|
+
* Disable AZAPI provider schema validation for this resource.
|
|
172
|
+
*
|
|
173
|
+
* The Azure SRE Agent resource type (`Microsoft.App/agents`) was introduced
|
|
174
|
+
* after the AZAPI provider version currently pinned by this repository and
|
|
175
|
+
* is therefore not yet present in the provider's embedded schema. Disabling
|
|
176
|
+
* schema validation lets the resource be applied against the live Azure API
|
|
177
|
+
* (which is the source of truth) without requiring a provider upgrade.
|
|
178
|
+
*
|
|
179
|
+
* `ignoreMissingProperty` is also enabled because the API returns a number
|
|
180
|
+
* of computed/read-only fields that aren't part of the request body.
|
|
181
|
+
*/
|
|
182
|
+
protected customizeResourceConfig(config: any): any;
|
|
183
|
+
/**
|
|
184
|
+
* Build the resource body for the Microsoft.App/agents Azure REST API.
|
|
185
|
+
*/
|
|
186
|
+
protected createResourceBody(props: any): any;
|
|
187
|
+
/**
|
|
188
|
+
* The data plane endpoint of the SRE Agent (populated after creation).
|
|
189
|
+
*/
|
|
190
|
+
get agentEndpoint(): string;
|
|
191
|
+
/**
|
|
192
|
+
* The provisioning state of the SRE Agent (populated after creation).
|
|
193
|
+
*/
|
|
194
|
+
get provisioningState(): string;
|
|
195
|
+
/**
|
|
196
|
+
* The power state of the SRE Agent (populated after creation).
|
|
197
|
+
*/
|
|
198
|
+
get powerState(): string;
|
|
199
|
+
/**
|
|
200
|
+
* Add a tag to the SRE Agent.
|
|
201
|
+
*/
|
|
202
|
+
addSreAgentTag(key: string, value: string): void;
|
|
203
|
+
/**
|
|
204
|
+
* Remove a tag from the SRE Agent.
|
|
205
|
+
*/
|
|
206
|
+
removeSreAgentTag(key: string): void;
|
|
207
|
+
private _applyIgnoreChanges;
|
|
208
|
+
}
|