@robhan-cdk-lib/aws_grafana 0.0.24 → 0.0.25
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 +1723 -461
- package/API.md +1528 -363
- package/lib/index.d.ts +2 -1
- package/lib/index.js +17 -10
- package/lib/workspace-base.d.ts +499 -0
- package/lib/workspace-base.js +150 -0
- package/lib/workspace.d.ts +89 -255
- package/lib/workspace.js +52 -138
- package/package.json +1 -1
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.WorkspaceBase = exports.Status = exports.SamlConfigurationStatuses = exports.PermissionTypes = exports.NotificationDestinations = exports.AuthenticationProviders = exports.AccountAccessType = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
7
|
+
/**
|
|
8
|
+
* Specifies whether the workspace can access AWS resources in this AWS account only, or whether it
|
|
9
|
+
* can also access AWS resources in other accounts in the same organization. If this is
|
|
10
|
+
* ORGANIZATION, the OrganizationalUnits parameter specifies which organizational units the
|
|
11
|
+
* workspace can access.
|
|
12
|
+
*/
|
|
13
|
+
var AccountAccessType;
|
|
14
|
+
(function (AccountAccessType) {
|
|
15
|
+
/**
|
|
16
|
+
* Access is limited to the current AWS account only.
|
|
17
|
+
*/
|
|
18
|
+
AccountAccessType["CURRENT_ACCOUNT"] = "CURRENT_ACCOUNT";
|
|
19
|
+
/**
|
|
20
|
+
* Access is extended to the entire AWS organization.
|
|
21
|
+
*/
|
|
22
|
+
AccountAccessType["ORGANIZATION"] = "ORGANIZATION";
|
|
23
|
+
})(AccountAccessType || (exports.AccountAccessType = AccountAccessType = {}));
|
|
24
|
+
/**
|
|
25
|
+
* Specifies whether this workspace uses SAML 2.0, AWS IAM Identity Center, or both to authenticate
|
|
26
|
+
* users for using the Grafana console within a workspace.
|
|
27
|
+
*
|
|
28
|
+
* @see https://docs.aws.amazon.com/grafana/latest/APIReference/API_CreateWorkspace.html
|
|
29
|
+
*/
|
|
30
|
+
var AuthenticationProviders;
|
|
31
|
+
(function (AuthenticationProviders) {
|
|
32
|
+
/**
|
|
33
|
+
* AWS Single Sign-On authentication provider.
|
|
34
|
+
*/
|
|
35
|
+
AuthenticationProviders["AWS_SSO"] = "AWS_SSO";
|
|
36
|
+
/**
|
|
37
|
+
* Security Assertion Markup Language (SAML) authentication provider.
|
|
38
|
+
*/
|
|
39
|
+
AuthenticationProviders["SAML"] = "SAML";
|
|
40
|
+
})(AuthenticationProviders || (exports.AuthenticationProviders = AuthenticationProviders = {}));
|
|
41
|
+
/**
|
|
42
|
+
* The AWS notification channels that Amazon Managed Grafana can automatically create IAM roles and
|
|
43
|
+
* permissions for, to allow Amazon Managed Grafana to use these channels.
|
|
44
|
+
*/
|
|
45
|
+
var NotificationDestinations;
|
|
46
|
+
(function (NotificationDestinations) {
|
|
47
|
+
/**
|
|
48
|
+
* Amazon Simple Notification Service (SNS) as notification destination.
|
|
49
|
+
*/
|
|
50
|
+
NotificationDestinations["SNS"] = "SNS";
|
|
51
|
+
})(NotificationDestinations || (exports.NotificationDestinations = NotificationDestinations = {}));
|
|
52
|
+
/**
|
|
53
|
+
* If this is SERVICE_MANAGED, and the workplace was created through the Amazon Managed Grafana
|
|
54
|
+
* console, then Amazon Managed Grafana automatically creates the IAM roles and provisions the
|
|
55
|
+
* permissions that the workspace needs to use AWS data sources and notification channels.
|
|
56
|
+
*
|
|
57
|
+
* If this is CUSTOMER_MANAGED, you must manage those roles and permissions yourself.
|
|
58
|
+
|
|
59
|
+
* If you are working with a workspace in a member account of an organization and that account is
|
|
60
|
+
* not a delegated administrator account, and you want the workspace to access data sources in
|
|
61
|
+
* other AWS accounts in the organization, this parameter must be set to CUSTOMER_MANAGED.
|
|
62
|
+
*/
|
|
63
|
+
var PermissionTypes;
|
|
64
|
+
(function (PermissionTypes) {
|
|
65
|
+
/**
|
|
66
|
+
* Customer-managed permissions where you manage user access to Grafana.
|
|
67
|
+
*/
|
|
68
|
+
PermissionTypes["CUSTOMER_MANAGED"] = "CUSTOMER_MANAGED";
|
|
69
|
+
/**
|
|
70
|
+
* Service-managed permissions where AWS manages user access to Grafana.
|
|
71
|
+
*/
|
|
72
|
+
PermissionTypes["SERVICE_MANAGED"] = "SERVICE_MANAGED";
|
|
73
|
+
})(PermissionTypes || (exports.PermissionTypes = PermissionTypes = {}));
|
|
74
|
+
/**
|
|
75
|
+
* Status of SAML configuration for a Grafana workspace.
|
|
76
|
+
*/
|
|
77
|
+
var SamlConfigurationStatuses;
|
|
78
|
+
(function (SamlConfigurationStatuses) {
|
|
79
|
+
/**
|
|
80
|
+
* SAML is configured for the workspace.
|
|
81
|
+
*/
|
|
82
|
+
SamlConfigurationStatuses["CONFIGURED"] = "CONFIGURED";
|
|
83
|
+
/**
|
|
84
|
+
* SAML is not configured for the workspace.
|
|
85
|
+
*/
|
|
86
|
+
SamlConfigurationStatuses["NOT_CONFIGURED"] = "NOT_CONFIGURED";
|
|
87
|
+
})(SamlConfigurationStatuses || (exports.SamlConfigurationStatuses = SamlConfigurationStatuses = {}));
|
|
88
|
+
/**
|
|
89
|
+
* Status of a Grafana workspace.
|
|
90
|
+
*/
|
|
91
|
+
var Status;
|
|
92
|
+
(function (Status) {
|
|
93
|
+
/**
|
|
94
|
+
* Workspace is active and ready to use.
|
|
95
|
+
*/
|
|
96
|
+
Status["ACTIVE"] = "ACTIVE";
|
|
97
|
+
/**
|
|
98
|
+
* Workspace is being created.
|
|
99
|
+
*/
|
|
100
|
+
Status["CREATING"] = "CREATING";
|
|
101
|
+
/**
|
|
102
|
+
* Workspace is being deleted.
|
|
103
|
+
*/
|
|
104
|
+
Status["DELETING"] = "DELETING";
|
|
105
|
+
/**
|
|
106
|
+
* Workspace operation has failed.
|
|
107
|
+
*/
|
|
108
|
+
Status["FAILED"] = "FAILED";
|
|
109
|
+
/**
|
|
110
|
+
* Workspace is being updated.
|
|
111
|
+
*/
|
|
112
|
+
Status["UPDATING"] = "UPDATING";
|
|
113
|
+
/**
|
|
114
|
+
* Workspace is being upgraded.
|
|
115
|
+
*/
|
|
116
|
+
Status["UPGRADING"] = "UPGRADING";
|
|
117
|
+
/**
|
|
118
|
+
* Workspace deletion has failed.
|
|
119
|
+
*/
|
|
120
|
+
Status["DELETION_FAILED"] = "DELETION_FAILED";
|
|
121
|
+
/**
|
|
122
|
+
* Workspace creation has failed.
|
|
123
|
+
*/
|
|
124
|
+
Status["CREATION_FAILED"] = "CREATION_FAILED";
|
|
125
|
+
/**
|
|
126
|
+
* Workspace update has failed.
|
|
127
|
+
*/
|
|
128
|
+
Status["UPDATE_FAILED"] = "UPDATE_FAILED";
|
|
129
|
+
/**
|
|
130
|
+
* Workspace upgrade has failed.
|
|
131
|
+
*/
|
|
132
|
+
Status["UPGRADE_FAILED"] = "UPGRADE_FAILED";
|
|
133
|
+
/**
|
|
134
|
+
* License removal has failed.
|
|
135
|
+
*/
|
|
136
|
+
Status["LICENSE_REMOVAL_FAILED"] = "LICENSE_REMOVAL_FAILED";
|
|
137
|
+
})(Status || (exports.Status = Status = {}));
|
|
138
|
+
class WorkspaceBase extends aws_cdk_lib_1.Resource {
|
|
139
|
+
getWorkspaceArn(workspaceId) {
|
|
140
|
+
const stack = this.stack;
|
|
141
|
+
return `arn:${stack.partition}:grafana:${stack.region}:${stack.account}:/workspaces/${workspaceId}`;
|
|
142
|
+
}
|
|
143
|
+
getWorkspaceId(workspaceArn) {
|
|
144
|
+
return workspaceArn.substring(workspaceArn.lastIndexOf('/') + 1);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
exports.WorkspaceBase = WorkspaceBase;
|
|
148
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
149
|
+
WorkspaceBase[_a] = { fqn: "@robhan-cdk-lib/aws_grafana.WorkspaceBase", version: "0.0.25" };
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvd29ya3NwYWNlLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBa0Q7QUFJbEQ7Ozs7O0dBS0c7QUFDSCxJQUFZLGlCQVVYO0FBVkQsV0FBWSxpQkFBaUI7SUFDM0I7O09BRUc7SUFDSCx3REFBbUMsQ0FBQTtJQUVuQzs7T0FFRztJQUNILGtEQUE2QixDQUFBO0FBQy9CLENBQUMsRUFWVyxpQkFBaUIsaUNBQWpCLGlCQUFpQixRQVU1QjtBQUVEOzs7OztHQUtHO0FBQ0gsSUFBWSx1QkFVWDtBQVZELFdBQVksdUJBQXVCO0lBQ2pDOztPQUVHO0lBQ0gsOENBQW1CLENBQUE7SUFFbkI7O09BRUc7SUFDSCx3Q0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQVZXLHVCQUF1Qix1Q0FBdkIsdUJBQXVCLFFBVWxDO0FBMkJEOzs7R0FHRztBQUNILElBQVksd0JBS1g7QUFMRCxXQUFZLHdCQUF3QjtJQUNsQzs7T0FFRztJQUNILHVDQUFXLENBQUE7QUFDYixDQUFDLEVBTFcsd0JBQXdCLHdDQUF4Qix3QkFBd0IsUUFLbkM7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsSUFBWSxlQVVYO0FBVkQsV0FBWSxlQUFlO0lBQ3pCOztPQUVHO0lBQ0gsd0RBQXFDLENBQUE7SUFFckM7O09BRUc7SUFDSCxzREFBbUMsQ0FBQTtBQUNyQyxDQUFDLEVBVlcsZUFBZSwrQkFBZixlQUFlLFFBVTFCO0FBNEpEOztHQUVHO0FBQ0gsSUFBWSx5QkFVWDtBQVZELFdBQVkseUJBQXlCO0lBQ25DOztPQUVHO0lBQ0gsc0RBQXlCLENBQUE7SUFFekI7O09BRUc7SUFDSCw4REFBaUMsQ0FBQTtBQUNuQyxDQUFDLEVBVlcseUJBQXlCLHlDQUF6Qix5QkFBeUIsUUFVcEM7QUFFRDs7R0FFRztBQUNILElBQVksTUF1RFg7QUF2REQsV0FBWSxNQUFNO0lBQ2hCOztPQUVHO0lBQ0gsMkJBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCwrQkFBcUIsQ0FBQTtJQUVyQjs7T0FFRztJQUNILCtCQUFxQixDQUFBO0lBRXJCOztPQUVHO0lBQ0gsMkJBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCwrQkFBcUIsQ0FBQTtJQUVyQjs7T0FFRztJQUNILGlDQUF1QixDQUFBO0lBRXZCOztPQUVHO0lBQ0gsNkNBQW1DLENBQUE7SUFFbkM7O09BRUc7SUFDSCw2Q0FBbUMsQ0FBQTtJQUVuQzs7T0FFRztJQUNILHlDQUErQixDQUFBO0lBRS9COztPQUVHO0lBQ0gsMkNBQWlDLENBQUE7SUFFakM7O09BRUc7SUFDSCwyREFBaUQsQ0FBQTtBQUNuRCxDQUFDLEVBdkRXLE1BQU0sc0JBQU4sTUFBTSxRQXVEakI7QUE4SUQsTUFBc0IsYUFBYyxTQUFRLHNCQUFRO0lBcUd4QyxlQUFlLENBQUMsV0FBbUI7UUFDM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN6QixPQUFPLE9BQU8sS0FBSyxDQUFDLFNBQVMsWUFBWSxLQUFLLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLGdCQUFnQixXQUFXLEVBQUUsQ0FBQztJQUN0RyxDQUFDO0lBRVMsY0FBYyxDQUFDLFlBQW9CO1FBQzNDLE9BQU8sWUFBWSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7O0FBNUdILHNDQTZHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSZXNvdXJjZSwgUmVzb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJUHJlZml4TGlzdCwgSVNlY3VyaXR5R3JvdXAsIElTdWJuZXQsIElWcGNFbmRwb2ludCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHsgSVJvbGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcblxuLyoqXG4gKiBTcGVjaWZpZXMgd2hldGhlciB0aGUgd29ya3NwYWNlIGNhbiBhY2Nlc3MgQVdTIHJlc291cmNlcyBpbiB0aGlzIEFXUyBhY2NvdW50IG9ubHksIG9yIHdoZXRoZXIgaXRcbiAqIGNhbiBhbHNvIGFjY2VzcyBBV1MgcmVzb3VyY2VzIGluIG90aGVyIGFjY291bnRzIGluIHRoZSBzYW1lIG9yZ2FuaXphdGlvbi4gSWYgdGhpcyBpc1xuICogT1JHQU5JWkFUSU9OLCB0aGUgT3JnYW5pemF0aW9uYWxVbml0cyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdoaWNoIG9yZ2FuaXphdGlvbmFsIHVuaXRzIHRoZVxuICogd29ya3NwYWNlIGNhbiBhY2Nlc3MuXG4gKi9cbmV4cG9ydCBlbnVtIEFjY291bnRBY2Nlc3NUeXBlIHtcbiAgLyoqXG4gICAqIEFjY2VzcyBpcyBsaW1pdGVkIHRvIHRoZSBjdXJyZW50IEFXUyBhY2NvdW50IG9ubHkuXG4gICAqL1xuICBDVVJSRU5UX0FDQ09VTlQgPSAnQ1VSUkVOVF9BQ0NPVU5UJyxcblxuICAvKipcbiAgICogQWNjZXNzIGlzIGV4dGVuZGVkIHRvIHRoZSBlbnRpcmUgQVdTIG9yZ2FuaXphdGlvbi5cbiAgICovXG4gIE9SR0FOSVpBVElPTiA9ICdPUkdBTklaQVRJT04nLFxufVxuXG4vKipcbiAqIFNwZWNpZmllcyB3aGV0aGVyIHRoaXMgd29ya3NwYWNlIHVzZXMgU0FNTCAyLjAsIEFXUyBJQU0gSWRlbnRpdHkgQ2VudGVyLCBvciBib3RoIHRvIGF1dGhlbnRpY2F0ZVxuICogdXNlcnMgZm9yIHVzaW5nIHRoZSBHcmFmYW5hIGNvbnNvbGUgd2l0aGluIGEgd29ya3NwYWNlLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dyYWZhbmEvbGF0ZXN0L0FQSVJlZmVyZW5jZS9BUElfQ3JlYXRlV29ya3NwYWNlLmh0bWxcbiAqL1xuZXhwb3J0IGVudW0gQXV0aGVudGljYXRpb25Qcm92aWRlcnMge1xuICAvKipcbiAgICogQVdTIFNpbmdsZSBTaWduLU9uIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVyLlxuICAgKi9cbiAgQVdTX1NTTyA9ICdBV1NfU1NPJyxcblxuICAvKipcbiAgICogU2VjdXJpdHkgQXNzZXJ0aW9uIE1hcmt1cCBMYW5ndWFnZSAoU0FNTCkgYXV0aGVudGljYXRpb24gcHJvdmlkZXIuXG4gICAqL1xuICBTQU1MID0gJ1NBTUwnLFxufVxuXG4vKipcbiAqIFRoZSBjb25maWd1cmF0aW9uIHNldHRpbmdzIGZvciBuZXR3b3JrIGFjY2VzcyB0byB5b3VyIHdvcmtzcGFjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXR3b3JrQWNjZXNzQ29udHJvbCB7XG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBwcmVmaXggbGlzdCBJRHMuIEEgcHJlZml4IGxpc3QgaXMgYSBsaXN0IG9mIENJRFIgcmFuZ2VzIG9mIElQIGFkZHJlc3Nlcy4gVGhlIElQXG4gICAqIGFkZHJlc3NlcyBzcGVjaWZpZWQgYXJlIGFsbG93ZWQgdG8gYWNjZXNzIHlvdXIgd29ya3NwYWNlLiBJZiB0aGUgbGlzdCBpcyBub3QgaW5jbHVkZWQgaW4gdGhlXG4gICAqIGNvbmZpZ3VyYXRpb24gKHBhc3NlZCBhbiBlbXB0eSBhcnJheSkgdGhlbiBubyBJUCBhZGRyZXNzZXMgYXJlIGFsbG93ZWQgdG8gYWNjZXNzIHRoZVxuICAgKiB3b3Jrc3BhY2UuXG4gICAqXG4gICAqIE1heGltdW0gb2YgNSBwcmVmaXggbGlzdHMgYWxsb3dlZC5cbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeExpc3RzPzogSVByZWZpeExpc3RbXTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgQW1hem9uIFZQQyBlbmRwb2ludCBJRHMgZm9yIHRoZSB3b3Jrc3BhY2UuIFlvdSBjYW4gY3JlYXRlIFZQQyBlbmRwb2ludHMgdG8geW91clxuICAgKiBBbWF6b24gTWFuYWdlZCBHcmFmYW5hIHdvcmtzcGFjZSBmb3IgYWNjZXNzIGZyb20gd2l0aGluIGEgVlBDLiBJZiBhIE5ldHdvcmtBY2Nlc3NDb25maWd1cmF0aW9uXG4gICAqIGlzIHNwZWNpZmllZCB0aGVuIG9ubHkgVlBDIGVuZHBvaW50cyBzcGVjaWZpZWQgaGVyZSBhcmUgYWxsb3dlZCB0byBhY2Nlc3MgdGhlIHdvcmtzcGFjZS4gSWZcbiAgICogeW91IHBhc3MgaW4gYW4gZW1wdHkgYXJyYXkgb2Ygc3RyaW5ncywgdGhlbiBubyBWUENzIGFyZSBhbGxvd2VkIHRvIGFjY2VzcyB0aGUgd29ya3NwYWNlLlxuICAgKlxuICAgKiBNYXhpbXVtIG9mIDUgVlBDIGVuZHBvaW50cyBhbGxvd2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjRW5kcG9pbnRzPzogSVZwY0VuZHBvaW50W107XG59XG5cbi8qKlxuICogVGhlIEFXUyBub3RpZmljYXRpb24gY2hhbm5lbHMgdGhhdCBBbWF6b24gTWFuYWdlZCBHcmFmYW5hIGNhbiBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBJQU0gcm9sZXMgYW5kXG4gKiBwZXJtaXNzaW9ucyBmb3IsIHRvIGFsbG93IEFtYXpvbiBNYW5hZ2VkIEdyYWZhbmEgdG8gdXNlIHRoZXNlIGNoYW5uZWxzLlxuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25EZXN0aW5hdGlvbnMge1xuICAvKipcbiAgICogQW1hem9uIFNpbXBsZSBOb3RpZmljYXRpb24gU2VydmljZSAoU05TKSBhcyBub3RpZmljYXRpb24gZGVzdGluYXRpb24uXG4gICAqL1xuICBTTlMgPSAnU05TJyxcbn1cblxuLyoqXG4gKiBJZiB0aGlzIGlzIFNFUlZJQ0VfTUFOQUdFRCwgYW5kIHRoZSB3b3JrcGxhY2Ugd2FzIGNyZWF0ZWQgdGhyb3VnaCB0aGUgQW1hem9uIE1hbmFnZWQgR3JhZmFuYVxuICogY29uc29sZSwgdGhlbiBBbWF6b24gTWFuYWdlZCBHcmFmYW5hIGF1dG9tYXRpY2FsbHkgY3JlYXRlcyB0aGUgSUFNIHJvbGVzIGFuZCBwcm92aXNpb25zIHRoZVxuICogcGVybWlzc2lvbnMgdGhhdCB0aGUgd29ya3NwYWNlIG5lZWRzIHRvIHVzZSBBV1MgZGF0YSBzb3VyY2VzIGFuZCBub3RpZmljYXRpb24gY2hhbm5lbHMuXG4gKlxuICogSWYgdGhpcyBpcyBDVVNUT01FUl9NQU5BR0VELCB5b3UgbXVzdCBtYW5hZ2UgdGhvc2Ugcm9sZXMgYW5kIHBlcm1pc3Npb25zIHlvdXJzZWxmLlxuXG4gKiBJZiB5b3UgYXJlIHdvcmtpbmcgd2l0aCBhIHdvcmtzcGFjZSBpbiBhIG1lbWJlciBhY2NvdW50IG9mIGFuIG9yZ2FuaXphdGlvbiBhbmQgdGhhdCBhY2NvdW50IGlzXG4gKiBub3QgYSBkZWxlZ2F0ZWQgYWRtaW5pc3RyYXRvciBhY2NvdW50LCBhbmQgeW91IHdhbnQgdGhlIHdvcmtzcGFjZSB0byBhY2Nlc3MgZGF0YSBzb3VyY2VzIGluXG4gKiBvdGhlciBBV1MgYWNjb3VudHMgaW4gdGhlIG9yZ2FuaXphdGlvbiwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBiZSBzZXQgdG8gQ1VTVE9NRVJfTUFOQUdFRC5cbiAqL1xuZXhwb3J0IGVudW0gUGVybWlzc2lvblR5cGVzIHtcbiAgLyoqXG4gICAqIEN1c3RvbWVyLW1hbmFnZWQgcGVybWlzc2lvbnMgd2hlcmUgeW91IG1hbmFnZSB1c2VyIGFjY2VzcyB0byBHcmFmYW5hLlxuICAgKi9cbiAgQ1VTVE9NRVJfTUFOQUdFRCA9ICdDVVNUT01FUl9NQU5BR0VEJyxcblxuICAvKipcbiAgICogU2VydmljZS1tYW5hZ2VkIHBlcm1pc3Npb25zIHdoZXJlIEFXUyBtYW5hZ2VzIHVzZXIgYWNjZXNzIHRvIEdyYWZhbmEuXG4gICAqL1xuICBTRVJWSUNFX01BTkFHRUQgPSAnU0VSVklDRV9NQU5BR0VEJyxcbn1cblxuLyoqXG4gKiBBIHN0cnVjdHVyZSB0aGF0IGRlZmluZXMgd2hpY2ggYXR0cmlidXRlcyBpbiB0aGUgSWRQIGFzc2VydGlvbiBhcmUgdG8gYmUgdXNlZCB0byBkZWZpbmVcbiAqIGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VycyBhdXRoZW50aWNhdGVkIGJ5IHRoZSBJZFAgdG8gdXNlIHRoZSB3b3Jrc3BhY2UuXG4gKlxuICogRWFjaCBhdHRyaWJ1dGUgbXVzdCBiZSBhIHN0cmluZyB3aXRoIGxlbmd0aCBiZXR3ZWVuIDEgYW5kIDI1NiBjaGFyYWN0ZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNhbWxBc3NlcnRpb25BdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBhdHRyaWJ1dGUgd2l0aGluIHRoZSBTQU1MIGFzc2VydGlvbiB0byB1c2UgYXMgdGhlIGVtYWlsIG5hbWVzIGZvciBTQU1MIHVzZXJzLlxuICAgKlxuICAgKiBNdXN0IGJlIGJldHdlZW4gMSBhbmQgMjU2IGNoYXJhY3RlcnMgbG9uZy5cbiAgICovXG4gIHJlYWRvbmx5IGVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGF0dHJpYnV0ZSB3aXRoaW4gdGhlIFNBTUwgYXNzZXJ0aW9uIHRvIHVzZSBhcyB0aGUgdXNlciBmdWxsIFwiZnJpZW5kbHlcIiBuYW1lc1xuICAgKiBmb3IgdXNlciBncm91cHMuXG4gICAqXG4gICAqIE11c3QgYmUgYmV0d2VlbiAxIGFuZCAyNTYgY2hhcmFjdGVycyBsb25nLlxuICAgKi9cbiAgcmVhZG9ubHkgZ3JvdXBzPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGF0dHJpYnV0ZSB3aXRoaW4gdGhlIFNBTUwgYXNzZXJ0aW9uIHRvIHVzZSBhcyB0aGUgbG9naW4gbmFtZXMgZm9yIFNBTUwgdXNlcnMuXG4gICAqXG4gICAqIE11c3QgYmUgYmV0d2VlbiAxIGFuZCAyNTYgY2hhcmFjdGVycyBsb25nLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9naW4/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlIHdpdGhpbiB0aGUgU0FNTCBhc3NlcnRpb24gdG8gdXNlIGFzIHRoZSB1c2VyIGZ1bGwgXCJmcmllbmRseVwiIG5hbWVzXG4gICAqIGZvciBTQU1MIHVzZXJzLlxuICAgKlxuICAgKiBNdXN0IGJlIGJldHdlZW4gMSBhbmQgMjU2IGNoYXJhY3RlcnMgbG9uZy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlIHdpdGhpbiB0aGUgU0FNTCBhc3NlcnRpb24gdG8gdXNlIGFzIHRoZSB1c2VyIGZ1bGwgXCJmcmllbmRseVwiIG5hbWVzXG4gICAqIGZvciB0aGUgdXNlcnMnIG9yZ2FuaXphdGlvbnMuXG4gICAqXG4gICAqIE11c3QgYmUgYmV0d2VlbiAxIGFuZCAyNTYgY2hhcmFjdGVycyBsb25nLlxuICAgKi9cbiAgcmVhZG9ubHkgb3JnPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGF0dHJpYnV0ZSB3aXRoaW4gdGhlIFNBTUwgYXNzZXJ0aW9uIHRvIHVzZSBhcyB0aGUgdXNlciByb2xlcy5cbiAgICpcbiAgICogTXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDI1NiBjaGFyYWN0ZXJzIGxvbmcuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgc3RydWN0dXJlIGNvbnRhaW5pbmcgdGhlIGlkZW50aXR5IHByb3ZpZGVyIChJZFApIG1ldGFkYXRhIHVzZWQgdG8gaW50ZWdyYXRlIHRoZSBpZGVudGl0eVxuICogcHJvdmlkZXIgd2l0aCB0aGlzIHdvcmtzcGFjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTYW1sSWRwTWV0YWRhdGEge1xuICAvKipcbiAgICogVGhlIFVSTCBvZiB0aGUgbG9jYXRpb24gY29udGFpbmluZyB0aGUgSWRQIG1ldGFkYXRhLlxuICAgKlxuICAgKiBNdXN0IGJlIGEgc3RyaW5nIHdpdGggbGVuZ3RoIGJldHdlZW4gMSBhbmQgMjA0OCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBJZFAgbWV0YWRhdGEsIGluIFhNTCBmb3JtYXQuXG4gICAqL1xuICByZWFkb25seSB4bWw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBzdHJ1Y3R1cmUgY29udGFpbmluZyBhcnJheXMgdGhhdCBtYXAgZ3JvdXAgbmFtZXMgaW4gdGhlIFNBTUwgYXNzZXJ0aW9uIHRvIHRoZSBHcmFmYW5hIEFkbWluXG4gKiBhbmQgRWRpdG9yIHJvbGVzIGluIHRoZSB3b3Jrc3BhY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2FtbFJvbGVWYWx1ZXMge1xuICAvKipcbiAgICogQSBsaXN0IG9mIGdyb3VwcyBmcm9tIHRoZSBTQU1MIGFzc2VydGlvbiBhdHRyaWJ1dGUgdG8gZ3JhbnQgdGhlIEdyYWZhbmEgQWRtaW4gcm9sZSB0by5cbiAgICpcbiAgICogTWF4aW11bSBvZiAyNTYgZWxlbWVudHMuXG4gICAqL1xuICByZWFkb25seSBhZG1pbj86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgZ3JvdXBzIGZyb20gdGhlIFNBTUwgYXNzZXJ0aW9uIGF0dHJpYnV0ZSB0byBncmFudCB0aGUgR3JhZmFuYSBFZGl0b3Igcm9sZSB0by5cbiAgICpcbiAgICogTWF4aW11bSBvZiAyNTYgZWxlbWVudHMuXG4gICAqL1xuICByZWFkb25seSBlZGl0b3I/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBJZiB0aGUgd29ya3NwYWNlIHVzZXMgU0FNTCwgdXNlIHRoaXMgc3RydWN0dXJlIHRvIG1hcCBTQU1MIGFzc2VydGlvbiBhdHRyaWJ1dGVzIHRvIHdvcmtzcGFjZVxuICogdXNlciBpbmZvcm1hdGlvbiBhbmQgZGVmaW5lIHdoaWNoIGdyb3VwcyBpbiB0aGUgYXNzZXJ0aW9uIGF0dHJpYnV0ZSBhcmUgdG8gaGF2ZSB0aGUgQWRtaW4gYW5kXG4gKiBFZGl0b3Igcm9sZXMgaW4gdGhlIHdvcmtzcGFjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTYW1sQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBMaXN0cyB3aGljaCBvcmdhbml6YXRpb25zIGRlZmluZWQgaW4gdGhlIFNBTUwgYXNzZXJ0aW9uIGFyZSBhbGxvd2VkIHRvIHVzZSB0aGUgQW1hem9uIE1hbmFnZWRcbiAgICogR3JhZmFuYSB3b3Jrc3BhY2UuIElmIHRoaXMgaXMgZW1wdHksIGFsbCBvcmdhbml6YXRpb25zIGluIHRoZSBhc3NlcnRpb24gYXR0cmlidXRlIGhhdmUgYWNjZXNzLlxuICAgKlxuICAgKiBNdXN0IGhhdmUgYmV0d2VlbiAxIGFuZCAyNTYgZWxlbWVudHMuXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkT3JnYW5pemF0aW9ucz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBIHN0cnVjdHVyZSB0aGF0IGRlZmluZXMgd2hpY2ggYXR0cmlidXRlcyBpbiB0aGUgU0FNTCBhc3NlcnRpb24gYXJlIHRvIGJlIHVzZWQgdG8gZGVmaW5lXG4gICAqIGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VycyBhdXRoZW50aWNhdGVkIGJ5IHRoYXQgSWRQIHRvIHVzZSB0aGUgd29ya3NwYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgYXNzZXJ0aW9uQXRycmlidXRlcz86IFNhbWxBc3NlcnRpb25BdHRyaWJ1dGVzO1xuXG4gIC8qKlxuICAgKiBBIHN0cnVjdHVyZSBjb250YWluaW5nIHRoZSBpZGVudGl0eSBwcm92aWRlciAoSWRQKSBtZXRhZGF0YSB1c2VkIHRvIGludGVncmF0ZSB0aGUgaWRlbnRpdHlcbiAgICogcHJvdmlkZXIgd2l0aCB0aGlzIHdvcmtzcGFjZS5cbiAgICpcbiAgICogUmVxdWlyZWQgZmllbGQgZm9yIFNBTUwgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGlkcE1ldGFkYXRhOiBTYW1sSWRwTWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEhvdyBsb25nIGEgc2lnbi1vbiBzZXNzaW9uIGJ5IGEgU0FNTCB1c2VyIGlzIHZhbGlkLCBiZWZvcmUgdGhlIHVzZXIgaGFzIHRvIHNpZ24gb24gYWdhaW4uXG4gICAqXG4gICAqIE11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIuXG4gICAqL1xuICByZWFkb25seSBsb2dpblZhbGlkaXR5RHVyYXRpb24/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEEgc3RydWN0dXJlIGNvbnRhaW5pbmcgYXJyYXlzIHRoYXQgbWFwIGdyb3VwIG5hbWVzIGluIHRoZSBTQU1MIGFzc2VydGlvbiB0byB0aGUgR3JhZmFuYSBBZG1pblxuICAgKiBhbmQgRWRpdG9yIHJvbGVzIGluIHRoZSB3b3Jrc3BhY2UuXG4gICAqL1xuICByZWFkb25seSByb2xlVmFsdWVzPzogU2FtbFJvbGVWYWx1ZXM7XG59XG5cbi8qKlxuICogVGhlIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIGFuIEFtYXpvbiBWUEMgdGhhdCBjb250YWlucyBkYXRhIHNvdXJjZXMgZm9yIHlvdXIgR3JhZmFuYVxuICogd29ya3NwYWNlIHRvIGNvbm5lY3QgdG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVnBjQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBBbWF6b24gRUMyIHNlY3VyaXR5IGdyb3VwcyBhdHRhY2hlZCB0byB0aGUgQW1hem9uIFZQQyBmb3IgeW91ciBHcmFmYW5hXG4gICAqIHdvcmtzcGFjZSB0byBjb25uZWN0LiBEdXBsaWNhdGVzIG5vdCBhbGxvd2VkLlxuICAgKlxuICAgKiBBcnJheSBNZW1iZXJzOiBNaW5pbXVtIG51bWJlciBvZiAxIGl0ZW1zLiBNYXhpbXVtIG51bWJlciBvZiA1IGl0ZW1zLlxuICAgKlxuICAgKiBSZXF1aXJlZCBmb3IgVlBDIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwczogSVNlY3VyaXR5R3JvdXBbXTtcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2YgQW1hem9uIEVDMiBzdWJuZXRzIGNyZWF0ZWQgaW4gdGhlIEFtYXpvbiBWUEMgZm9yIHlvdXIgR3JhZmFuYSB3b3Jrc3BhY2UgdG9cbiAgICogY29ubmVjdC4gRHVwbGljYXRlcyBub3QgYWxsb3dlZC5cbiAgICpcbiAgICogQXJyYXkgTWVtYmVyczogTWluaW11bSBudW1iZXIgb2YgMiBpdGVtcy4gTWF4aW11bSBudW1iZXIgb2YgNiBpdGVtcy5cbiAgICpcbiAgICogUmVxdWlyZWQgZm9yIFZQQyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0czogSVN1Ym5ldFtdO1xufVxuXG4vKipcbiAqIFN0YXR1cyBvZiBTQU1MIGNvbmZpZ3VyYXRpb24gZm9yIGEgR3JhZmFuYSB3b3Jrc3BhY2UuXG4gKi9cbmV4cG9ydCBlbnVtIFNhbWxDb25maWd1cmF0aW9uU3RhdHVzZXMge1xuICAvKipcbiAgICogU0FNTCBpcyBjb25maWd1cmVkIGZvciB0aGUgd29ya3NwYWNlLlxuICAgKi9cbiAgQ09ORklHVVJFRCA9ICdDT05GSUdVUkVEJyxcblxuICAvKipcbiAgICogU0FNTCBpcyBub3QgY29uZmlndXJlZCBmb3IgdGhlIHdvcmtzcGFjZS5cbiAgICovXG4gIE5PVF9DT05GSUdVUkVEID0gJ05PVF9DT05GSUdVUkVEJyxcbn1cblxuLyoqXG4gKiBTdGF0dXMgb2YgYSBHcmFmYW5hIHdvcmtzcGFjZS5cbiAqL1xuZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgLyoqXG4gICAqIFdvcmtzcGFjZSBpcyBhY3RpdmUgYW5kIHJlYWR5IHRvIHVzZS5cbiAgICovXG4gIEFDVElWRSA9ICdBQ1RJVkUnLFxuXG4gIC8qKlxuICAgKiBXb3Jrc3BhY2UgaXMgYmVpbmcgY3JlYXRlZC5cbiAgICovXG4gIENSRUFUSU5HID0gJ0NSRUFUSU5HJyxcblxuICAvKipcbiAgICogV29ya3NwYWNlIGlzIGJlaW5nIGRlbGV0ZWQuXG4gICAqL1xuICBERUxFVElORyA9ICdERUxFVElORycsXG5cbiAgLyoqXG4gICAqIFdvcmtzcGFjZSBvcGVyYXRpb24gaGFzIGZhaWxlZC5cbiAgICovXG4gIEZBSUxFRCA9ICdGQUlMRUQnLFxuXG4gIC8qKlxuICAgKiBXb3Jrc3BhY2UgaXMgYmVpbmcgdXBkYXRlZC5cbiAgICovXG4gIFVQREFUSU5HID0gJ1VQREFUSU5HJyxcblxuICAvKipcbiAgICogV29ya3NwYWNlIGlzIGJlaW5nIHVwZ3JhZGVkLlxuICAgKi9cbiAgVVBHUkFESU5HID0gJ1VQR1JBRElORycsXG5cbiAgLyoqXG4gICAqIFdvcmtzcGFjZSBkZWxldGlvbiBoYXMgZmFpbGVkLlxuICAgKi9cbiAgREVMRVRJT05fRkFJTEVEID0gJ0RFTEVUSU9OX0ZBSUxFRCcsXG5cbiAgLyoqXG4gICAqIFdvcmtzcGFjZSBjcmVhdGlvbiBoYXMgZmFpbGVkLlxuICAgKi9cbiAgQ1JFQVRJT05fRkFJTEVEID0gJ0NSRUFUSU9OX0ZBSUxFRCcsXG5cbiAgLyoqXG4gICAqIFdvcmtzcGFjZSB1cGRhdGUgaGFzIGZhaWxlZC5cbiAgICovXG4gIFVQREFURV9GQUlMRUQgPSAnVVBEQVRFX0ZBSUxFRCcsXG5cbiAgLyoqXG4gICAqIFdvcmtzcGFjZSB1cGdyYWRlIGhhcyBmYWlsZWQuXG4gICAqL1xuICBVUEdSQURFX0ZBSUxFRCA9ICdVUEdSQURFX0ZBSUxFRCcsXG5cbiAgLyoqXG4gICAqIExpY2Vuc2UgcmVtb3ZhbCBoYXMgZmFpbGVkLlxuICAgKi9cbiAgTElDRU5TRV9SRU1PVkFMX0ZBSUxFRCA9ICdMSUNFTlNFX1JFTU9WQUxfRkFJTEVEJyxcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIEFtYXpvbiBNYW5hZ2VkIFNlcnZpY2UgZm9yIEdyYWZhbmEgd29ya3NwYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVdvcmtzcGFjZSBleHRlbmRzIElSZXNvdXJjZSB7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSB3b3Jrc3BhY2UgY2FuIGFjY2VzcyBBV1MgcmVzb3VyY2VzIGluIHRoaXMgQVdTIGFjY291bnQgb25seSwgb3Igd2hldGhlclxuICAgKiBpdCBjYW4gYWxzbyBhY2Nlc3MgQVdTIHJlc291cmNlcyBpbiBvdGhlciBhY2NvdW50cyBpbiB0aGUgc2FtZSBvcmdhbml6YXRpb24uIElmIHRoaXMgaXNcbiAgICogT1JHQU5JWkFUSU9OLCB0aGUgT3JnYW5pemF0aW9uYWxVbml0cyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdoaWNoIG9yZ2FuaXphdGlvbmFsIHVuaXRzIHRoZVxuICAgKiB3b3Jrc3BhY2UgY2FuIGFjY2Vzcy5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjb3VudEFjY2Vzc1R5cGU6IEFjY291bnRBY2Nlc3NUeXBlO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0aGlzIHdvcmtzcGFjZSB1c2VzIFNBTUwgMi4wLCBBV1MgSUFNIElkZW50aXR5IENlbnRlciwgb3IgYm90aCB0b1xuICAgKiBhdXRoZW50aWNhdGUgdXNlcnMgZm9yIHVzaW5nIHRoZSBHcmFmYW5hIGNvbnNvbGUgd2l0aGluIGEgd29ya3NwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBhdXRoZW50aWNhdGlvblByb3ZpZGVyczogQXV0aGVudGljYXRpb25Qcm92aWRlcnNbXTtcblxuICAvKipcbiAgICogQSB1bmlxdWUsIGNhc2Utc2Vuc2l0aXZlLCB1c2VyLXByb3ZpZGVkIGlkZW50aWZpZXIgdG8gZW5zdXJlIHRoZSBpZGVtcG90ZW5jeSBvZiB0aGUgcmVxdWVzdC5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgY2xpZW50VG9rZW4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgQVdTIGRhdGEgc291cmNlcyB0aGF0IGhhdmUgYmVlbiBjb25maWd1cmVkIHRvIGhhdmUgSUFNIHJvbGVzIGFuZCBwZXJtaXNzaW9uc1xuICAgKiBjcmVhdGVkIHRvIGFsbG93IEFtYXpvbiBNYW5hZ2VkIEdyYWZhbmEgdG8gcmVhZCBkYXRhIGZyb20gdGhlc2Ugc291cmNlcy5cbiAgICpcbiAgICogVGhpcyBsaXN0IGlzIG9ubHkgdXNlZCB3aGVuIHRoZSB3b3Jrc3BhY2Ugd2FzIGNyZWF0ZWQgdGhyb3VnaCB0aGUgQVdTIGNvbnNvbGUsIGFuZCB0aGVcbiAgICogcGVybWlzc2lvblR5cGUgaXMgU0VSVklDRV9NQU5BR0VELlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBkYXRhU291cmNlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlci1kZWZpbmVkIGRlc2NyaXB0aW9uIG9mIHRoZSB3b3Jrc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgd29ya3NwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgbmV0d29yayBhY2Nlc3MgdG8geW91ciB3b3Jrc3BhY2UuXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IG5ldHdvcmtBY2Nlc3NDb250cm9sPzogTmV0d29ya0FjY2Vzc0NvbnRyb2w7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1Mgbm90aWZpY2F0aW9uIGNoYW5uZWxzIHRoYXQgQW1hem9uIE1hbmFnZWQgR3JhZmFuYSBjYW4gYXV0b21hdGljYWxseSBjcmVhdGUgSUFNIHJvbGVzXG4gICAqIGFuZCBwZXJtaXNzaW9ucyBmb3IsIHRvIGFsbG93IEFtYXpvbiBNYW5hZ2VkIEdyYWZhbmEgdG8gdXNlIHRoZXNlIGNoYW5uZWxzLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25EZXN0aW5hdGlvbnM/OiBOb3RpZmljYXRpb25EZXN0aW5hdGlvbnNbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBvcmdhbml6YXRpb25hbCB1bml0cyB0aGF0IHRoaXMgd29ya3NwYWNlIGlzIGFsbG93ZWQgdG8gdXNlIGRhdGEgc291cmNlcyBmcm9tLCBpZlxuICAgKiB0aGlzIHdvcmtzcGFjZSBpcyBpbiBhbiBhY2NvdW50IHRoYXQgaXMgcGFydCBvZiBhbiBvcmdhbml6YXRpb24uXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbmFsVW5pdHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIElBTSByb2xlIHRoYXQgaXMgdXNlZCB0byBhY2Nlc3MgcmVzb3VyY2VzIHRocm91Z2ggT3JnYW5pemF0aW9ucy5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uUm9sZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIHRoaXMgaXMgU0VSVklDRV9NQU5BR0VELCBhbmQgdGhlIHdvcmtwbGFjZSB3YXMgY3JlYXRlZCB0aHJvdWdoIHRoZSBBbWF6b24gTWFuYWdlZCBHcmFmYW5hXG4gICAqIGNvbnNvbGUsIHRoZW4gQW1hem9uIE1hbmFnZWQgR3JhZmFuYSBhdXRvbWF0aWNhbGx5IGNyZWF0ZXMgdGhlIElBTSByb2xlcyBhbmQgcHJvdmlzaW9ucyB0aGVcbiAgICogcGVybWlzc2lvbnMgdGhhdCB0aGUgd29ya3NwYWNlIG5lZWRzIHRvIHVzZSBBV1MgZGF0YSBzb3VyY2VzIGFuZCBub3RpZmljYXRpb24gY2hhbm5lbHMuXG4gICAqXG4gICAqIElmIHRoaXMgaXMgQ1VTVE9NRVJfTUFOQUdFRCwgeW91IG11c3QgbWFuYWdlIHRob3NlIHJvbGVzIGFuZCBwZXJtaXNzaW9ucyB5b3Vyc2VsZi5cbiAgICpcbiAgICogSWYgeW91IGFyZSB3b3JraW5nIHdpdGggYSB3b3Jrc3BhY2UgaW4gYSBtZW1iZXIgYWNjb3VudCBvZiBhbiBvcmdhbml6YXRpb24gYW5kIHRoYXQgYWNjb3VudCBpc1xuICAgKiBub3QgYSBkZWxlZ2F0ZWQgYWRtaW5pc3RyYXRvciBhY2NvdW50LCBhbmQgeW91IHdhbnQgdGhlIHdvcmtzcGFjZSB0byBhY2Nlc3MgZGF0YSBzb3VyY2VzIGluXG4gICAqIG90aGVyIEFXUyBhY2NvdW50cyBpbiB0aGUgb3JnYW5pemF0aW9uLCB0aGlzIHBhcmFtZXRlciBtdXN0IGJlIHNldCB0byBDVVNUT01FUl9NQU5BR0VELlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBwZXJtaXNzaW9uVHlwZTogUGVybWlzc2lvblR5cGVzO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHBsdWdpbiBhZG1pbmlzdHJhdGlvbiBpcyBlbmFibGVkIGluIHRoZSB3b3Jrc3BhY2UuIFNldHRpbmcgdG8gdHJ1ZSBhbGxvd3Mgd29ya3NwYWNlXG4gICAqIGFkbWlucyB0byBpbnN0YWxsLCB1bmluc3RhbGwsIGFuZCB1cGRhdGUgcGx1Z2lucyBmcm9tIHdpdGhpbiB0aGUgR3JhZmFuYSB3b3Jrc3BhY2UuXG4gICAqXG4gICAqIFRoaXMgb3B0aW9uIGlzIG9ubHkgdmFsaWQgZm9yIHdvcmtzcGFjZXMgdGhhdCBzdXBwb3J0IEdyYWZhbmEgdmVyc2lvbiA5IG9yIG5ld2VyLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBwbHVnaW5BZG1pbkVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBncmFudHMgcGVybWlzc2lvbnMgdG8gdGhlIEFXUyByZXNvdXJjZXMgdGhhdCB0aGUgd29ya3NwYWNlIHdpbGwgdmlldyBkYXRhXG4gICAqIGZyb20uXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBJUm9sZTtcblxuICAvKipcbiAgICogSWYgdGhlIHdvcmtzcGFjZSB1c2VzIFNBTUwsIHVzZSB0aGlzIHN0cnVjdHVyZSB0byBtYXAgU0FNTCBhc3NlcnRpb24gYXR0cmlidXRlcyB0byB3b3Jrc3BhY2VcbiAgICogdXNlciBpbmZvcm1hdGlvbiBhbmQgZGVmaW5lIHdoaWNoIGdyb3VwcyBpbiB0aGUgYXNzZXJ0aW9uIGF0dHJpYnV0ZSBhcmUgdG8gaGF2ZSB0aGUgQWRtaW4gYW5kXG4gICAqIEVkaXRvciByb2xlcyBpbiB0aGUgd29ya3NwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBzYW1sQ29uZmlndXJhdGlvbj86IFNhbWxDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgQVdTIENsb3VkRm9ybWF0aW9uIHN0YWNrIHNldCB0aGF0IGlzIHVzZWQgdG8gZ2VuZXJhdGUgSUFNIHJvbGVzIHRvIGJlIHVzZWQgZm9yXG4gICAqIHRoaXMgd29ya3NwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBzdGFja1NldE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9uIHNldHRpbmdzIGZvciBhbiBBbWF6b24gVlBDIHRoYXQgY29udGFpbnMgZGF0YSBzb3VyY2VzIGZvciB5b3VyIEdyYWZhbmFcbiAgICogd29ya3NwYWNlIHRvIGNvbm5lY3QgdG8uXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHZwY0NvbmZpZ3VyYXRpb24/OiBWcGNDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIElEIG9mIHRoaXMgd29ya3NwYWNlLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB3b3Jrc3BhY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoaXMgd29ya3NwYWNlXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtzcGFjZUFybjogc3RyaW5nO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgV29ya3NwYWNlQmFzZSBleHRlbmRzIFJlc291cmNlIGltcGxlbWVudHMgSVdvcmtzcGFjZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBhY2NvdW50IGFjY2VzcyB0eXBlIGZvciB0aGUgd29ya3NwYWNlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGFjY291bnRBY2Nlc3NUeXBlOiBBY2NvdW50QWNjZXNzVHlwZTtcblxuICAvKipcbiAgICogVGhlIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVycyBmb3IgdGhlIHdvcmtzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhdXRoZW50aWNhdGlvblByb3ZpZGVyczogQXV0aGVudGljYXRpb25Qcm92aWRlcnNbXTtcblxuICAvKipcbiAgICogVGhlIGNsaWVudCB0b2tlbiBmb3IgdGhlIHdvcmtzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBjbGllbnRUb2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRhdGEgc291cmNlcyBvZiB0aGlzIHdvcmtzcGFjZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGRhdGFTb3VyY2VzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGlzIHdvcmtzcGFjZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGlzIHdvcmtzcGFjZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9uIHNldHRpbmdzIGZvciBuZXR3b3JrIGFjY2VzcyB0byB5b3VyIHdvcmtzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBuZXR3b3JrQWNjZXNzQ29udHJvbD86IE5ldHdvcmtBY2Nlc3NDb250cm9sO1xuXG4gIC8qKlxuICAgKiBUaGUgbm90aWZpY2F0aW9uIGRlc3RpbmF0aW9ucyBmb3IgdGhlIHdvcmtzcGFjZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBub3RpZmljYXRpb25EZXN0aW5hdGlvbnM/OiBOb3RpZmljYXRpb25EZXN0aW5hdGlvbnNbXTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBvcmdhbml6YXRpb25hbCB1bml0cyB0aGF0IHRoaXMgd29ya3NwYWNlIGlzIGFsbG93ZWQgdG8gdXNlIGRhdGEgc291cmNlcyBmcm9tLCBpZlxuICAgKiB0aGlzIHdvcmtzcGFjZSBpcyBpbiBhbiBhY2NvdW50IHRoYXQgaXMgcGFydCBvZiBhbiBvcmdhbml6YXRpb24uXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgb3JnYW5pemF0aW9uYWxVbml0cz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgSUFNIHJvbGUgdGhhdCBpcyB1c2VkIHRvIGFjY2VzcyByZXNvdXJjZXMgdGhyb3VnaCBPcmdhbml6YXRpb25zLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG9yZ2FuaXphdGlvblJvbGVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGVybWlzc2lvbiB0eXBlIGZvciB0aGUgd29ya3NwYWNlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHBlcm1pc3Npb25UeXBlOiBQZXJtaXNzaW9uVHlwZXM7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgcGx1Z2luIGFkbWluaXN0cmF0aW9uIGlzIGVuYWJsZWQgaW4gdGhlIHdvcmtzcGFjZS4gU2V0dGluZyB0byB0cnVlIGFsbG93cyB3b3Jrc3BhY2VcbiAgICogYWRtaW5zIHRvIGluc3RhbGwsIHVuaW5zdGFsbCwgYW5kIHVwZGF0ZSBwbHVnaW5zIGZyb20gd2l0aGluIHRoZSBHcmFmYW5hIHdvcmtzcGFjZS5cbiAgICpcbiAgICogVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3Igd29ya3NwYWNlcyB0aGF0IHN1cHBvcnQgR3JhZmFuYSB2ZXJzaW9uIDkgb3IgbmV3ZXIuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcGx1Z2luQWRtaW5FbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIHRoYXQgZ3JhbnRzIHBlcm1pc3Npb25zIHRvIHRoZSBBV1MgcmVzb3VyY2VzIHRoYXQgdGhlIHdvcmtzcGFjZSB3aWxsIHZpZXcgZGF0YVxuICAgKiBmcm9tLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHJvbGU/OiBJUm9sZTtcblxuICAvKipcbiAgICogSWYgdGhlIHdvcmtzcGFjZSB1c2VzIFNBTUwsIHVzZSB0aGlzIHN0cnVjdHVyZSB0byBtYXAgU0FNTCBhc3NlcnRpb24gYXR0cmlidXRlcyB0byB3b3Jrc3BhY2VcbiAgICogdXNlciBpbmZvcm1hdGlvbiBhbmQgZGVmaW5lIHdoaWNoIGdyb3VwcyBpbiB0aGUgYXNzZXJ0aW9uIGF0dHJpYnV0ZSBhcmUgdG8gaGF2ZSB0aGUgQWRtaW4gYW5kXG4gICAqIEVkaXRvciByb2xlcyBpbiB0aGUgd29ya3NwYWNlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHNhbWxDb25maWd1cmF0aW9uPzogU2FtbENvbmZpZ3VyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBBV1MgQ2xvdWRGb3JtYXRpb24gc3RhY2sgc2V0IHRoYXQgaXMgdXNlZCB0byBnZW5lcmF0ZSBJQU0gcm9sZXMgdG8gYmUgdXNlZCBmb3JcbiAgICogdGhpcyB3b3Jrc3BhY2UuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc3RhY2tTZXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgYW4gQW1hem9uIFZQQyB0aGF0IGNvbnRhaW5zIGRhdGEgc291cmNlcyBmb3IgeW91ciBHcmFmYW5hXG4gICAqIHdvcmtzcGFjZSB0byBjb25uZWN0IHRvLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHZwY0NvbmZpZ3VyYXRpb24/OiBWcGNDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIElEIG9mIHRoaXMgd29ya3NwYWNlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHdvcmtzcGFjZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhpcyB3b3Jrc3BhY2VcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSB3b3Jrc3BhY2VBcm46IHN0cmluZztcblxuICBwcm90ZWN0ZWQgZ2V0V29ya3NwYWNlQXJuKHdvcmtzcGFjZUlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBzdGFjayA9IHRoaXMuc3RhY2s7XG4gICAgcmV0dXJuIGBhcm46JHtzdGFjay5wYXJ0aXRpb259OmdyYWZhbmE6JHtzdGFjay5yZWdpb259OiR7c3RhY2suYWNjb3VudH06L3dvcmtzcGFjZXMvJHt3b3Jrc3BhY2VJZH1gO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFdvcmtzcGFjZUlkKHdvcmtzcGFjZUFybjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHdvcmtzcGFjZUFybi5zdWJzdHJpbmcod29ya3NwYWNlQXJuLmxhc3RJbmRleE9mKCcvJykgKyAxKTtcbiAgfVxufSJdfQ==
|
package/lib/workspace.d.ts
CHANGED
|
@@ -1,238 +1,126 @@
|
|
|
1
|
-
import { IPrefixList, ISecurityGroup, ISubnet, IVpcEndpoint } from 'aws-cdk-lib/aws-ec2';
|
|
2
1
|
import { IRole } from 'aws-cdk-lib/aws-iam';
|
|
3
2
|
import { Construct } from 'constructs';
|
|
3
|
+
import { AccountAccessType, AuthenticationProviders, IWorkspace, NetworkAccessControl, NotificationDestinations, PermissionTypes, SamlConfiguration, SamlConfigurationStatuses, Status, VpcConfiguration, WorkspaceBase } from './workspace-base';
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
* can also access AWS resources in other accounts in the same organization. If this is
|
|
7
|
-
* ORGANIZATION, the OrganizationalUnits parameter specifies which organizational units the
|
|
8
|
-
* workspace can access.
|
|
9
|
-
*/
|
|
10
|
-
export declare enum AccountAccessType {
|
|
11
|
-
/**
|
|
12
|
-
* Access is limited to the current AWS account only.
|
|
13
|
-
*/
|
|
14
|
-
CURRENT_ACCOUNT = "CURRENT_ACCOUNT",
|
|
15
|
-
/**
|
|
16
|
-
* Access is extended to the entire AWS organization.
|
|
17
|
-
*/
|
|
18
|
-
ORGANIZATION = "ORGANIZATION"
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Specifies whether this workspace uses SAML 2.0, AWS IAM Identity Center, or both to authenticate
|
|
22
|
-
* users for using the Grafana console within a workspace.
|
|
23
|
-
*
|
|
24
|
-
* @see https://docs.aws.amazon.com/grafana/latest/APIReference/API_CreateWorkspace.html
|
|
25
|
-
*/
|
|
26
|
-
export declare enum AuthenticationProviders {
|
|
27
|
-
/**
|
|
28
|
-
* AWS Single Sign-On authentication provider.
|
|
29
|
-
*/
|
|
30
|
-
AWS_SSO = "AWS_SSO",
|
|
31
|
-
/**
|
|
32
|
-
* Security Assertion Markup Language (SAML) authentication provider.
|
|
33
|
-
*/
|
|
34
|
-
SAML = "SAML"
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* The configuration settings for network access to your workspace.
|
|
5
|
+
* Properties for creating an Amazon Managed Grafana workspace.
|
|
38
6
|
*/
|
|
39
|
-
export interface
|
|
7
|
+
export interface WorkspaceProps {
|
|
40
8
|
/**
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* workspace.
|
|
9
|
+
* Specifies whether the workspace can access AWS resources in this AWS account only, or whether
|
|
10
|
+
* it can also access AWS resources in other accounts in the same organization. If this is
|
|
11
|
+
* ORGANIZATION, the OrganizationalUnits parameter specifies which organizational units the
|
|
12
|
+
* workspace can access.
|
|
45
13
|
*
|
|
46
|
-
*
|
|
14
|
+
* Required field.
|
|
47
15
|
*/
|
|
48
|
-
readonly
|
|
16
|
+
readonly accountAccessType: AccountAccessType;
|
|
49
17
|
/**
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* is specified then only VPC endpoints specified here are allowed to access the workspace. If
|
|
53
|
-
* you pass in an empty array of strings, then no VPCs are allowed to access the workspace.
|
|
18
|
+
* Specifies whether this workspace uses SAML 2.0, AWS IAM Identity Center, or both to
|
|
19
|
+
* authenticate users for using the Grafana console within a workspace.
|
|
54
20
|
*
|
|
55
|
-
*
|
|
56
|
-
*/
|
|
57
|
-
readonly vpcEndpoints?: IVpcEndpoint[];
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* The AWS notification channels that Amazon Managed Grafana can automatically create IAM roles and
|
|
61
|
-
* permissions for, to allow Amazon Managed Grafana to use these channels.
|
|
62
|
-
*/
|
|
63
|
-
export declare enum NotificationDestinations {
|
|
64
|
-
/**
|
|
65
|
-
* Amazon Simple Notification Service (SNS) as notification destination.
|
|
66
|
-
*/
|
|
67
|
-
SNS = "SNS"
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* If this is SERVICE_MANAGED, and the workplace was created through the Amazon Managed Grafana
|
|
71
|
-
* console, then Amazon Managed Grafana automatically creates the IAM roles and provisions the
|
|
72
|
-
* permissions that the workspace needs to use AWS data sources and notification channels.
|
|
73
|
-
*
|
|
74
|
-
* If this is CUSTOMER_MANAGED, you must manage those roles and permissions yourself.
|
|
75
|
-
|
|
76
|
-
* If you are working with a workspace in a member account of an organization and that account is
|
|
77
|
-
* not a delegated administrator account, and you want the workspace to access data sources in
|
|
78
|
-
* other AWS accounts in the organization, this parameter must be set to CUSTOMER_MANAGED.
|
|
79
|
-
*/
|
|
80
|
-
export declare enum PermissionTypes {
|
|
81
|
-
/**
|
|
82
|
-
* Customer-managed permissions where you manage user access to Grafana.
|
|
21
|
+
* Required field.
|
|
83
22
|
*/
|
|
84
|
-
|
|
23
|
+
readonly authenticationProviders: AuthenticationProviders[];
|
|
85
24
|
/**
|
|
86
|
-
*
|
|
25
|
+
* A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.
|
|
26
|
+
*
|
|
27
|
+
* Must be 1-64 characters long and contain only printable ASCII characters.
|
|
87
28
|
*/
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* A structure that defines which attributes in the IdP assertion are to be used to define
|
|
92
|
-
* information about the users authenticated by the IdP to use the workspace.
|
|
93
|
-
*
|
|
94
|
-
* Each attribute must be a string with length between 1 and 256 characters.
|
|
95
|
-
*/
|
|
96
|
-
export interface SamlAssertionAttributes {
|
|
29
|
+
readonly clientToken?: string;
|
|
97
30
|
/**
|
|
98
|
-
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
31
|
+
* Specifies the AWS data sources that have been configured to have IAM roles and permissions
|
|
32
|
+
* created to allow Amazon Managed Grafana to read data from these sources.
|
|
33
|
+
* This list is only used when the workspace was created through the AWS console, and the
|
|
34
|
+
* permissionType is SERVICE_MANAGED.
|
|
101
35
|
*/
|
|
102
|
-
readonly
|
|
36
|
+
readonly dataSources?: string[];
|
|
103
37
|
/**
|
|
104
|
-
* The
|
|
105
|
-
* for user groups.
|
|
38
|
+
* The user-defined description of the workspace.
|
|
106
39
|
*
|
|
107
|
-
*
|
|
40
|
+
* Maximum length of 2048 characters.
|
|
108
41
|
*/
|
|
109
|
-
readonly
|
|
42
|
+
readonly description?: string;
|
|
110
43
|
/**
|
|
111
|
-
*
|
|
44
|
+
* Specifies the version of Grafana to support in the workspace. Defaults to the latest version
|
|
45
|
+
* on create (for example, 9.4), or the current version of the workspace on update.
|
|
46
|
+
* Can only be used to upgrade (for example, from 8.4 to 9.4), not downgrade (for example, from
|
|
47
|
+
* 9.4 to 8.4).
|
|
112
48
|
*
|
|
113
|
-
* Must be
|
|
49
|
+
* Must be 1-255 characters long.
|
|
114
50
|
*/
|
|
115
|
-
readonly
|
|
51
|
+
readonly grafanaVersion?: string;
|
|
116
52
|
/**
|
|
117
|
-
* The name of the
|
|
118
|
-
* for SAML users.
|
|
53
|
+
* The name of the workspace.
|
|
119
54
|
*
|
|
120
|
-
* Must be
|
|
55
|
+
* Must be 1-255 characters long and contain only alphanumeric characters, hyphens, dots,
|
|
56
|
+
* underscores, and tildes.
|
|
121
57
|
*/
|
|
122
58
|
readonly name?: string;
|
|
123
59
|
/**
|
|
124
|
-
* The
|
|
125
|
-
* for the users' organizations.
|
|
126
|
-
*
|
|
127
|
-
* Must be between 1 and 256 characters long.
|
|
60
|
+
* The configuration settings for network access to your workspace.
|
|
128
61
|
*/
|
|
129
|
-
readonly
|
|
62
|
+
readonly networkAccessControl?: NetworkAccessControl;
|
|
130
63
|
/**
|
|
131
|
-
* The
|
|
132
|
-
*
|
|
133
|
-
* Must be between 1 and 256 characters long.
|
|
64
|
+
* The AWS notification channels that Amazon Managed Grafana can automatically create IAM roles
|
|
65
|
+
* and permissions for, to allow Amazon Managed Grafana to use these channels.
|
|
134
66
|
*/
|
|
135
|
-
readonly
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* A structure containing the identity provider (IdP) metadata used to integrate the identity
|
|
139
|
-
* provider with this workspace.
|
|
140
|
-
*/
|
|
141
|
-
export interface SamlIdpMetadata {
|
|
67
|
+
readonly notificationDestinations?: NotificationDestinations[];
|
|
142
68
|
/**
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
* Must be a string with length between 1 and 2048 characters.
|
|
69
|
+
* Specifies the organizational units that this workspace is allowed to use data sources from, if
|
|
70
|
+
* this workspace is in an account that is part of an organization.
|
|
146
71
|
*/
|
|
147
|
-
readonly
|
|
72
|
+
readonly organizationalUnits?: string[];
|
|
148
73
|
/**
|
|
149
|
-
*
|
|
74
|
+
* Name of the IAM role to use for the organization.
|
|
75
|
+
* Maximum length of 2048 characters.
|
|
150
76
|
*/
|
|
151
|
-
readonly
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* A structure containing arrays that map group names in the SAML assertion to the Grafana Admin
|
|
155
|
-
* and Editor roles in the workspace.
|
|
156
|
-
*/
|
|
157
|
-
export interface SamlRoleValues {
|
|
77
|
+
readonly organizationRoleName?: string;
|
|
158
78
|
/**
|
|
159
|
-
*
|
|
79
|
+
* If this is SERVICE_MANAGED, and the workplace was created through the Amazon Managed Grafana
|
|
80
|
+
* console, then Amazon Managed Grafana automatically creates the IAM roles and provisions the
|
|
81
|
+
* permissions that the workspace needs to use AWS data sources and notification channels.
|
|
160
82
|
*
|
|
161
|
-
*
|
|
162
|
-
*/
|
|
163
|
-
readonly admin?: string[];
|
|
164
|
-
/**
|
|
165
|
-
* A list of groups from the SAML assertion attribute to grant the Grafana Editor role to.
|
|
83
|
+
* If this is CUSTOMER_MANAGED, you must manage those roles and permissions yourself.
|
|
166
84
|
*
|
|
167
|
-
*
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* If the workspace uses SAML, use this structure to map SAML assertion attributes to workspace
|
|
173
|
-
* user information and define which groups in the assertion attribute are to have the Admin and
|
|
174
|
-
* Editor roles in the workspace.
|
|
175
|
-
*/
|
|
176
|
-
export interface SamlConfiguration {
|
|
177
|
-
/**
|
|
178
|
-
* Lists which organizations defined in the SAML assertion are allowed to use the Amazon Managed
|
|
179
|
-
* Grafana workspace. If this is empty, all organizations in the assertion attribute have access.
|
|
85
|
+
* If you are working with a workspace in a member account of an organization and that account is
|
|
86
|
+
* not a delegated administrator account, and you want the workspace to access data sources in
|
|
87
|
+
* other AWS accounts in the organization, this parameter must be set to CUSTOMER_MANAGED.
|
|
180
88
|
*
|
|
181
|
-
*
|
|
182
|
-
*/
|
|
183
|
-
readonly allowedOrganizations?: string[];
|
|
184
|
-
/**
|
|
185
|
-
* A structure that defines which attributes in the SAML assertion are to be used to define
|
|
186
|
-
* information about the users authenticated by that IdP to use the workspace.
|
|
89
|
+
* Required field.
|
|
187
90
|
*/
|
|
188
|
-
readonly
|
|
91
|
+
readonly permissionType: PermissionTypes;
|
|
189
92
|
/**
|
|
190
|
-
*
|
|
191
|
-
*
|
|
93
|
+
* Whether plugin administration is enabled in the workspace. Setting to true allows workspace
|
|
94
|
+
* admins to install, uninstall, and update plugins from within the Grafana workspace.
|
|
95
|
+
*
|
|
96
|
+
* This option is only valid for workspaces that support Grafana version 9 or newer.
|
|
192
97
|
*
|
|
193
|
-
*
|
|
98
|
+
* Default: false
|
|
194
99
|
*/
|
|
195
|
-
readonly
|
|
100
|
+
readonly pluginAdminEnabled?: boolean;
|
|
196
101
|
/**
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
* Must be a positive number.
|
|
102
|
+
* The IAM role that grants permissions to the AWS resources that the workspace will view data
|
|
103
|
+
* from.
|
|
200
104
|
*/
|
|
201
|
-
readonly
|
|
105
|
+
readonly role?: IRole;
|
|
202
106
|
/**
|
|
203
|
-
*
|
|
204
|
-
* and
|
|
107
|
+
* If the workspace uses SAML, use this structure to map SAML assertion attributes to workspace
|
|
108
|
+
* user information and define which groups in the assertion attribute are to have the Admin and
|
|
109
|
+
* Editor roles in the workspace.
|
|
205
110
|
*/
|
|
206
|
-
readonly
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* The configuration settings for an Amazon VPC that contains data sources for your Grafana
|
|
210
|
-
* workspace to connect to.
|
|
211
|
-
*/
|
|
212
|
-
export interface VpcConfiguration {
|
|
111
|
+
readonly samlConfiguration?: SamlConfiguration;
|
|
213
112
|
/**
|
|
214
|
-
* The
|
|
215
|
-
* workspace
|
|
216
|
-
*
|
|
217
|
-
* Array Members: Minimum number of 1 items. Maximum number of 5 items.
|
|
218
|
-
*
|
|
219
|
-
* Required for VPC configuration.
|
|
113
|
+
* The name of the AWS CloudFormation stack set that is used to generate IAM roles to be used for
|
|
114
|
+
* this workspace.
|
|
220
115
|
*/
|
|
221
|
-
readonly
|
|
116
|
+
readonly stackSetName?: string;
|
|
222
117
|
/**
|
|
223
|
-
* The
|
|
224
|
-
*
|
|
225
|
-
*
|
|
226
|
-
* Array Members: Minimum number of 2 items. Maximum number of 6 items.
|
|
227
|
-
*
|
|
228
|
-
* Required for VPC configuration.
|
|
118
|
+
* The configuration settings for an Amazon VPC that contains data sources for your Grafana
|
|
119
|
+
* workspace to connect to.
|
|
229
120
|
*/
|
|
230
|
-
readonly
|
|
121
|
+
readonly vpcConfiguration?: VpcConfiguration;
|
|
231
122
|
}
|
|
232
|
-
|
|
233
|
-
* Properties for creating an Amazon Managed Grafana workspace.
|
|
234
|
-
*/
|
|
235
|
-
export interface WorkspaceProps {
|
|
123
|
+
export interface WorkspaceAttributes {
|
|
236
124
|
/**
|
|
237
125
|
* Specifies whether the workspace can access AWS resources in this AWS account only, or whether
|
|
238
126
|
* it can also access AWS resources in other accounts in the same organization. If this is
|
|
@@ -268,15 +156,6 @@ export interface WorkspaceProps {
|
|
|
268
156
|
* Maximum length of 2048 characters.
|
|
269
157
|
*/
|
|
270
158
|
readonly description?: string;
|
|
271
|
-
/**
|
|
272
|
-
* Specifies the version of Grafana to support in the workspace. Defaults to the latest version
|
|
273
|
-
* on create (for example, 9.4), or the current version of the workspace on update.
|
|
274
|
-
* Can only be used to upgrade (for example, from 8.4 to 9.4), not downgrade (for example, from
|
|
275
|
-
* 9.4 to 8.4).
|
|
276
|
-
*
|
|
277
|
-
* Must be 1-255 characters long.
|
|
278
|
-
*/
|
|
279
|
-
readonly grafanaVersion?: string;
|
|
280
159
|
/**
|
|
281
160
|
* The name of the workspace.
|
|
282
161
|
*
|
|
@@ -347,75 +226,26 @@ export interface WorkspaceProps {
|
|
|
347
226
|
* workspace to connect to.
|
|
348
227
|
*/
|
|
349
228
|
readonly vpcConfiguration?: VpcConfiguration;
|
|
350
|
-
}
|
|
351
|
-
/**
|
|
352
|
-
* Status of SAML configuration for a Grafana workspace.
|
|
353
|
-
*/
|
|
354
|
-
export declare enum SamlConfigurationStatuses {
|
|
355
|
-
/**
|
|
356
|
-
* SAML is configured for the workspace.
|
|
357
|
-
*/
|
|
358
|
-
CONFIGURED = "CONFIGURED",
|
|
359
|
-
/**
|
|
360
|
-
* SAML is not configured for the workspace.
|
|
361
|
-
*/
|
|
362
|
-
NOT_CONFIGURED = "NOT_CONFIGURED"
|
|
363
|
-
}
|
|
364
|
-
/**
|
|
365
|
-
* Status of a Grafana workspace.
|
|
366
|
-
*/
|
|
367
|
-
export declare enum Status {
|
|
368
|
-
/**
|
|
369
|
-
* Workspace is active and ready to use.
|
|
370
|
-
*/
|
|
371
|
-
ACTIVE = "ACTIVE",
|
|
372
229
|
/**
|
|
373
|
-
*
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
/**
|
|
377
|
-
* Workspace is being deleted.
|
|
378
|
-
*/
|
|
379
|
-
DELETING = "DELETING",
|
|
380
|
-
/**
|
|
381
|
-
* Workspace operation has failed.
|
|
382
|
-
*/
|
|
383
|
-
FAILED = "FAILED",
|
|
384
|
-
/**
|
|
385
|
-
* Workspace is being updated.
|
|
386
|
-
*/
|
|
387
|
-
UPDATING = "UPDATING",
|
|
388
|
-
/**
|
|
389
|
-
* Workspace is being upgraded.
|
|
390
|
-
*/
|
|
391
|
-
UPGRADING = "UPGRADING",
|
|
392
|
-
/**
|
|
393
|
-
* Workspace deletion has failed.
|
|
394
|
-
*/
|
|
395
|
-
DELETION_FAILED = "DELETION_FAILED",
|
|
396
|
-
/**
|
|
397
|
-
* Workspace creation has failed.
|
|
398
|
-
*/
|
|
399
|
-
CREATION_FAILED = "CREATION_FAILED",
|
|
400
|
-
/**
|
|
401
|
-
* Workspace update has failed.
|
|
402
|
-
*/
|
|
403
|
-
UPDATE_FAILED = "UPDATE_FAILED",
|
|
404
|
-
/**
|
|
405
|
-
* Workspace upgrade has failed.
|
|
230
|
+
* The arn of this workspace.
|
|
231
|
+
*
|
|
232
|
+
* Either this or the workspaceId must be provided.
|
|
406
233
|
*/
|
|
407
|
-
|
|
234
|
+
readonly workspaceArn?: string;
|
|
408
235
|
/**
|
|
409
|
-
*
|
|
236
|
+
* The unique ID of this workspace.
|
|
237
|
+
*
|
|
238
|
+
* Either this or the workspaceArn must be provided.
|
|
410
239
|
*/
|
|
411
|
-
|
|
240
|
+
readonly workspaceId?: string;
|
|
412
241
|
}
|
|
413
242
|
/**
|
|
414
243
|
* Specifies a workspace. In a workspace, you can create Grafana dashboards and visualizations to
|
|
415
244
|
* analyze your metrics, logs, and traces. You don't have to build, package, or deploy any hardware
|
|
416
245
|
* to run the Grafana server.
|
|
417
246
|
*/
|
|
418
|
-
export declare class Workspace extends
|
|
247
|
+
export declare class Workspace extends WorkspaceBase {
|
|
248
|
+
static fromWorkspaceAttributes(scope: Construct, id: string, attrs: WorkspaceAttributes): IWorkspace;
|
|
419
249
|
/**
|
|
420
250
|
* Validates the clientToken property.
|
|
421
251
|
*
|
|
@@ -656,7 +486,7 @@ export declare class Workspace extends Construct {
|
|
|
656
486
|
/**
|
|
657
487
|
* The unique ID of this workspace.
|
|
658
488
|
*/
|
|
659
|
-
readonly
|
|
489
|
+
readonly workspaceId: string;
|
|
660
490
|
/**
|
|
661
491
|
* The most recent date that the workspace was modified.
|
|
662
492
|
*/
|
|
@@ -674,5 +504,9 @@ export declare class Workspace extends Construct {
|
|
|
674
504
|
* The current status of the workspace.
|
|
675
505
|
*/
|
|
676
506
|
readonly status: Status;
|
|
507
|
+
/**
|
|
508
|
+
* The arn of this workspace.
|
|
509
|
+
*/
|
|
510
|
+
readonly workspaceArn: string;
|
|
677
511
|
constructor(scope: Construct, id: string, props: WorkspaceProps);
|
|
678
512
|
}
|