@webiny/pulumi-sdk 5.27.0 → 5.29.0-beta.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/Pulumi.d.ts +7 -6
- package/Pulumi.js +25 -12
- package/Pulumi.js.map +1 -1
- package/README.md +0 -13
- package/downloadBinaries.js.map +1 -1
- package/index.d.ts +0 -9
- package/index.js +0 -117
- package/index.js.map +1 -1
- package/package.json +10 -10
- package/ApplicationBuilder.d.ts +0 -40
- package/ApplicationBuilder.js +0 -37
- package/ApplicationBuilder.js.map +0 -1
- package/ApplicationBuilderGeneric.d.ts +0 -10
- package/ApplicationBuilderGeneric.js +0 -108
- package/ApplicationBuilderGeneric.js.map +0 -1
- package/ApplicationBuilderLegacy.d.ts +0 -4
- package/ApplicationBuilderLegacy.js +0 -91
- package/ApplicationBuilderLegacy.js.map +0 -1
- package/ApplicationConfig.d.ts +0 -17
- package/ApplicationConfig.js +0 -5
- package/ApplicationConfig.js.map +0 -1
- package/ApplicationHook.d.ts +0 -4
- package/ApplicationHook.js +0 -11
- package/ApplicationHook.js.map +0 -1
- package/PulumiApp.d.ts +0 -118
- package/PulumiApp.js +0 -216
- package/PulumiApp.js.map +0 -1
- package/PulumiAppModule.d.ts +0 -17
- package/PulumiAppModule.js +0 -30
- package/PulumiAppModule.js.map +0 -1
- package/PulumiResource.d.ts +0 -22
- package/PulumiResource.js +0 -48
- package/PulumiResource.js.map +0 -1
- package/utils/getPulumiWorkDir.d.ts +0 -1
- package/utils/getPulumiWorkDir.js +0 -14
- package/utils/getPulumiWorkDir.js.map +0 -1
- package/utils/getStackName.d.ts +0 -5
- package/utils/getStackName.js +0 -11
- package/utils/getStackName.js.map +0 -1
- package/utils/index.d.ts +0 -5
- package/utils/index.js +0 -70
- package/utils/index.js.map +0 -1
- package/utils/mergeAppHooks.d.ts +0 -2
- package/utils/mergeAppHooks.js +0 -20
- package/utils/mergeAppHooks.js.map +0 -1
- package/utils/stagedRollouts.d.ts +0 -15
- package/utils/stagedRollouts.js +0 -58
- package/utils/stagedRollouts.js.map +0 -1
- package/utils/tagResources.d.ts +0 -5
- package/utils/tagResources.js +0 -52
- package/utils/tagResources.js.map +0 -1
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.getPulumiWorkDir = getPulumiWorkDir;
|
|
9
|
-
|
|
10
|
-
var _path = _interopRequireDefault(require("path"));
|
|
11
|
-
|
|
12
|
-
function getPulumiWorkDir(rootDir, appPath) {
|
|
13
|
-
return _path.default.join(rootDir, ".pulumi", appPath);
|
|
14
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["getPulumiWorkDir.ts"],"names":["getPulumiWorkDir","rootDir","appPath","path","join"],"mappings":";;;;;;;;;AAAA;;AAEO,SAASA,gBAAT,CAA0BC,OAA1B,EAA2CC,OAA3C,EAA4D;AAC/D,SAAOC,cAAKC,IAAL,CAAUH,OAAV,EAAmB,SAAnB,EAA8BC,OAA9B,CAAP;AACH","sourcesContent":["import path from \"path\";\n\nexport function getPulumiWorkDir(rootDir: string, appPath: string) {\n return path.join(rootDir, \".pulumi\", appPath);\n}\n"]}
|
package/utils/getStackName.d.ts
DELETED
package/utils/getStackName.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getStackName = getStackName;
|
|
7
|
-
|
|
8
|
-
/** Return a full stack name for a given environment and app variant. */
|
|
9
|
-
function getStackName(args) {
|
|
10
|
-
return args.variant ? `${args.env}.${args.variant}` : args.env;
|
|
11
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["getStackName.ts"],"names":["getStackName","args","variant","env"],"mappings":";;;;;;;AAAA;AACO,SAASA,YAAT,CAAsBC,IAAtB,EAA+D;AAClE,SAAOA,IAAI,CAACC,OAAL,GAAgB,GAAED,IAAI,CAACE,GAAI,IAAGF,IAAI,CAACC,OAAQ,EAA3C,GAA+CD,IAAI,CAACE,GAA3D;AACH","sourcesContent":["/** Return a full stack name for a given environment and app variant. */\nexport function getStackName(args: { env: string; variant?: string }) {\n return args.variant ? `${args.env}.${args.variant}` : args.env;\n}\n"]}
|
package/utils/index.d.ts
DELETED
package/utils/index.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _getPulumiWorkDir = require("./getPulumiWorkDir");
|
|
8
|
-
|
|
9
|
-
Object.keys(_getPulumiWorkDir).forEach(function (key) {
|
|
10
|
-
if (key === "default" || key === "__esModule") return;
|
|
11
|
-
if (key in exports && exports[key] === _getPulumiWorkDir[key]) return;
|
|
12
|
-
Object.defineProperty(exports, key, {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _getPulumiWorkDir[key];
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
var _getStackName = require("./getStackName");
|
|
21
|
-
|
|
22
|
-
Object.keys(_getStackName).forEach(function (key) {
|
|
23
|
-
if (key === "default" || key === "__esModule") return;
|
|
24
|
-
if (key in exports && exports[key] === _getStackName[key]) return;
|
|
25
|
-
Object.defineProperty(exports, key, {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function () {
|
|
28
|
-
return _getStackName[key];
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
var _mergeAppHooks = require("./mergeAppHooks");
|
|
34
|
-
|
|
35
|
-
Object.keys(_mergeAppHooks).forEach(function (key) {
|
|
36
|
-
if (key === "default" || key === "__esModule") return;
|
|
37
|
-
if (key in exports && exports[key] === _mergeAppHooks[key]) return;
|
|
38
|
-
Object.defineProperty(exports, key, {
|
|
39
|
-
enumerable: true,
|
|
40
|
-
get: function () {
|
|
41
|
-
return _mergeAppHooks[key];
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
var _tagResources = require("./tagResources");
|
|
47
|
-
|
|
48
|
-
Object.keys(_tagResources).forEach(function (key) {
|
|
49
|
-
if (key === "default" || key === "__esModule") return;
|
|
50
|
-
if (key in exports && exports[key] === _tagResources[key]) return;
|
|
51
|
-
Object.defineProperty(exports, key, {
|
|
52
|
-
enumerable: true,
|
|
53
|
-
get: function () {
|
|
54
|
-
return _tagResources[key];
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
var _stagedRollouts = require("./stagedRollouts");
|
|
60
|
-
|
|
61
|
-
Object.keys(_stagedRollouts).forEach(function (key) {
|
|
62
|
-
if (key === "default" || key === "__esModule") return;
|
|
63
|
-
if (key in exports && exports[key] === _stagedRollouts[key]) return;
|
|
64
|
-
Object.defineProperty(exports, key, {
|
|
65
|
-
enumerable: true,
|
|
66
|
-
get: function () {
|
|
67
|
-
return _stagedRollouts[key];
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
});
|
package/utils/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from \"./getPulumiWorkDir\";\nexport * from \"./getStackName\";\nexport * from \"./mergeAppHooks\";\nexport * from \"./tagResources\";\nexport * from \"./stagedRollouts\";\n"]}
|
package/utils/mergeAppHooks.d.ts
DELETED
package/utils/mergeAppHooks.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.mergeAppHooks = mergeAppHooks;
|
|
7
|
-
|
|
8
|
-
function mergeAppHooks(...hooks) {
|
|
9
|
-
const filtered = hooks.filter(Boolean);
|
|
10
|
-
|
|
11
|
-
if (!hooks.length) {
|
|
12
|
-
return undefined;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
return async (params, context) => {
|
|
16
|
-
for (const hook of filtered) {
|
|
17
|
-
await hook(params, context);
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["mergeAppHooks.ts"],"names":["mergeAppHooks","hooks","filtered","filter","Boolean","length","undefined","params","context","hook"],"mappings":";;;;;;;AAEO,SAASA,aAAT,CACH,GAAGC,KADA,EAEwB;AAC3B,QAAMC,QAAQ,GAAGD,KAAK,CAACE,MAAN,CAAaC,OAAb,CAAjB;;AAEA,MAAI,CAACH,KAAK,CAACI,MAAX,EAAmB;AACf,WAAOC,SAAP;AACH;;AAED,SAAO,OAAOC,MAAP,EAAeC,OAAf,KAA2B;AAC9B,SAAK,MAAMC,IAAX,IAAmBP,QAAnB,EAA6B;AACzB,YAAMO,IAAI,CAACF,MAAD,EAASC,OAAT,CAAV;AACH;AACJ,GAJD;AAKH","sourcesContent":["import { ApplicationHook } from \"~/ApplicationHook\";\n\nexport function mergeAppHooks(\n ...hooks: (ApplicationHook | undefined | null)[]\n): ApplicationHook | undefined {\n const filtered = hooks.filter(Boolean) as ApplicationHook[];\n\n if (!hooks.length) {\n return undefined;\n }\n\n return async (params, context) => {\n for (const hook of filtered) {\n await hook(params, context);\n }\n };\n}\n"]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare type GatewayConfig = Record<string, {
|
|
2
|
-
domain: string;
|
|
3
|
-
weight: number;
|
|
4
|
-
}>;
|
|
5
|
-
export interface GatewayConfigParams {
|
|
6
|
-
cwd: string;
|
|
7
|
-
app: string;
|
|
8
|
-
env: string;
|
|
9
|
-
}
|
|
10
|
-
export interface GatewayConfigUpdateParams extends GatewayConfigParams {
|
|
11
|
-
variant: string;
|
|
12
|
-
domain: string;
|
|
13
|
-
}
|
|
14
|
-
export declare function updateGatewayConfig(params: GatewayConfigUpdateParams): Promise<void>;
|
|
15
|
-
export declare function loadGatewayConfig(params: GatewayConfigParams): Promise<GatewayConfig>;
|
package/utils/stagedRollouts.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.loadGatewayConfig = loadGatewayConfig;
|
|
9
|
-
exports.updateGatewayConfig = updateGatewayConfig;
|
|
10
|
-
|
|
11
|
-
var _path = _interopRequireDefault(require("path"));
|
|
12
|
-
|
|
13
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
14
|
-
|
|
15
|
-
async function updateGatewayConfig(params) {
|
|
16
|
-
const configPath = getGatewayConfigFilePath(params);
|
|
17
|
-
const config = await readGatewayConfigFile(configPath);
|
|
18
|
-
|
|
19
|
-
if (config[params.variant]) {
|
|
20
|
-
// Update existing config.
|
|
21
|
-
config[params.variant].domain = params.domain;
|
|
22
|
-
} else {
|
|
23
|
-
config[params.variant] = {
|
|
24
|
-
domain: params.domain,
|
|
25
|
-
// Every newly deployed variant has 0% of traffic.
|
|
26
|
-
weight: 0
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
await writeGatewayConfigFile(configPath, config);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async function loadGatewayConfig(params) {
|
|
34
|
-
const configPath = getGatewayConfigFilePath(params);
|
|
35
|
-
return readGatewayConfigFile(configPath);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function getGatewayConfigFilePath(params) {
|
|
39
|
-
return _path.default.join(params.cwd, `gateway.${params.app}.${params.env}.json`);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
async function readGatewayConfigFile(filePath) {
|
|
43
|
-
if (!_fs.default.existsSync(filePath)) {
|
|
44
|
-
return {};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const configJson = await _fs.default.promises.readFile(filePath, {
|
|
48
|
-
encoding: "utf-8"
|
|
49
|
-
});
|
|
50
|
-
return JSON.parse(configJson) || {};
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
async function writeGatewayConfigFile(filePath, config) {
|
|
54
|
-
const configJson = JSON.stringify(config, null, 4);
|
|
55
|
-
await _fs.default.promises.writeFile(filePath, configJson, {
|
|
56
|
-
encoding: "utf-8"
|
|
57
|
-
});
|
|
58
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["stagedRollouts.ts"],"names":["updateGatewayConfig","params","configPath","getGatewayConfigFilePath","config","readGatewayConfigFile","variant","domain","weight","writeGatewayConfigFile","loadGatewayConfig","path","join","cwd","app","env","filePath","fs","existsSync","configJson","promises","readFile","encoding","JSON","parse","stringify","writeFile"],"mappings":";;;;;;;;;;AAAA;;AACA;;AAqBO,eAAeA,mBAAf,CAAmCC,MAAnC,EAAsE;AACzE,QAAMC,UAAU,GAAGC,wBAAwB,CAACF,MAAD,CAA3C;AACA,QAAMG,MAAM,GAAG,MAAMC,qBAAqB,CAACH,UAAD,CAA1C;;AAEA,MAAIE,MAAM,CAACH,MAAM,CAACK,OAAR,CAAV,EAA4B;AACxB;AACAF,IAAAA,MAAM,CAACH,MAAM,CAACK,OAAR,CAAN,CAAuBC,MAAvB,GAAgCN,MAAM,CAACM,MAAvC;AACH,GAHD,MAGO;AACHH,IAAAA,MAAM,CAACH,MAAM,CAACK,OAAR,CAAN,GAAyB;AACrBC,MAAAA,MAAM,EAAEN,MAAM,CAACM,MADM;AAErB;AACAC,MAAAA,MAAM,EAAE;AAHa,KAAzB;AAKH;;AAED,QAAMC,sBAAsB,CAACP,UAAD,EAAaE,MAAb,CAA5B;AACH;;AAEM,eAAeM,iBAAf,CAAiCT,MAAjC,EAA8D;AACjE,QAAMC,UAAU,GAAGC,wBAAwB,CAACF,MAAD,CAA3C;AACA,SAAOI,qBAAqB,CAACH,UAAD,CAA5B;AACH;;AAED,SAASC,wBAAT,CAAkCF,MAAlC,EAA+D;AAC3D,SAAOU,cAAKC,IAAL,CAAUX,MAAM,CAACY,GAAjB,EAAuB,WAAUZ,MAAM,CAACa,GAAI,IAAGb,MAAM,CAACc,GAAI,OAA1D,CAAP;AACH;;AAED,eAAeV,qBAAf,CAAqCW,QAArC,EAA+E;AAC3E,MAAI,CAACC,YAAGC,UAAH,CAAcF,QAAd,CAAL,EAA8B;AAC1B,WAAO,EAAP;AACH;;AAED,QAAMG,UAAU,GAAG,MAAMF,YAAGG,QAAH,CAAYC,QAAZ,CAAqBL,QAArB,EAA+B;AAAEM,IAAAA,QAAQ,EAAE;AAAZ,GAA/B,CAAzB;AACA,SAAOC,IAAI,CAACC,KAAL,CAAWL,UAAX,KAA0B,EAAjC;AACH;;AAED,eAAeV,sBAAf,CAAsCO,QAAtC,EAAwDZ,MAAxD,EAA+E;AAC3E,QAAMe,UAAU,GAAGI,IAAI,CAACE,SAAL,CAAerB,MAAf,EAAuB,IAAvB,EAA6B,CAA7B,CAAnB;AACA,QAAMa,YAAGG,QAAH,CAAYM,SAAZ,CAAsBV,QAAtB,EAAgCG,UAAhC,EAA4C;AAAEG,IAAAA,QAAQ,EAAE;AAAZ,GAA5C,CAAN;AACH","sourcesContent":["import path from \"path\";\nimport fs from \"fs\";\n\nexport type GatewayConfig = Record<\n string,\n {\n domain: string;\n weight: number;\n }\n>;\n\nexport interface GatewayConfigParams {\n cwd: string;\n app: string;\n env: string;\n}\n\nexport interface GatewayConfigUpdateParams extends GatewayConfigParams {\n variant: string;\n domain: string;\n}\n\nexport async function updateGatewayConfig(params: GatewayConfigUpdateParams) {\n const configPath = getGatewayConfigFilePath(params);\n const config = await readGatewayConfigFile(configPath);\n\n if (config[params.variant]) {\n // Update existing config.\n config[params.variant].domain = params.domain;\n } else {\n config[params.variant] = {\n domain: params.domain,\n // Every newly deployed variant has 0% of traffic.\n weight: 0\n };\n }\n\n await writeGatewayConfigFile(configPath, config);\n}\n\nexport async function loadGatewayConfig(params: GatewayConfigParams) {\n const configPath = getGatewayConfigFilePath(params);\n return readGatewayConfigFile(configPath);\n}\n\nfunction getGatewayConfigFilePath(params: GatewayConfigParams) {\n return path.join(params.cwd, `gateway.${params.app}.${params.env}.json`);\n}\n\nasync function readGatewayConfigFile(filePath: string): Promise<GatewayConfig> {\n if (!fs.existsSync(filePath)) {\n return {};\n }\n\n const configJson = await fs.promises.readFile(filePath, { encoding: \"utf-8\" });\n return JSON.parse(configJson) || {};\n}\n\nasync function writeGatewayConfigFile(filePath: string, config: GatewayConfig) {\n const configJson = JSON.stringify(config, null, 4);\n await fs.promises.writeFile(filePath, configJson, { encoding: \"utf-8\" });\n}\n"]}
|
package/utils/tagResources.d.ts
DELETED
package/utils/tagResources.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.tagResources = tagResources;
|
|
9
|
-
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
|
-
var pulumi = _interopRequireWildcard(require("@pulumi/pulumi"));
|
|
13
|
-
|
|
14
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
-
|
|
16
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
-
|
|
18
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
-
|
|
20
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Registers a global stack transformation that merges a set
|
|
24
|
-
* of tags with whatever was explicitly set in the resource definition.
|
|
25
|
-
*/
|
|
26
|
-
function tagResources(tags) {
|
|
27
|
-
pulumi.runtime.registerStackTransformation(args => {
|
|
28
|
-
if (isTaggable(args.type)) {
|
|
29
|
-
args.props["tags"] = _objectSpread(_objectSpread({}, args.props["tags"]), tags);
|
|
30
|
-
return {
|
|
31
|
-
props: args.props,
|
|
32
|
-
opts: args.opts
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return undefined;
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
module.exports = {
|
|
41
|
-
tagResources
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Returns true if the given resource type is an AWS resource that supports tags.
|
|
45
|
-
*/
|
|
46
|
-
|
|
47
|
-
function isTaggable(resourceType) {
|
|
48
|
-
return taggableResourceTypes.has(resourceType);
|
|
49
|
-
} // A list of known AWS type tokens that are taggable.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const taggableResourceTypes = new Set(["aws:accessanalyzer/analyzer:Analyzer", "aws:acm/certificate:Certificate", "aws:acmpca/certificateAuthority:CertificateAuthority", "aws:alb/loadBalancer:LoadBalancer", "aws:alb/targetGroup:TargetGroup", "aws:apigateway/apiKey:ApiKey", "aws:apigateway/clientCertificate:ClientCertificate", "aws:apigateway/domainName:DomainName", "aws:apigateway/restApi:RestApi", "aws:apigateway/stage:Stage", "aws:apigateway/usagePlan:UsagePlan", "aws:apigateway/vpcLink:VpcLink", "aws:apigatewayv2/api:Api", "aws:apigatewayv2/stage:Stage", "aws:applicationloadbalancing/loadBalancer:LoadBalancer", "aws:applicationloadbalancing/targetGroup:TargetGroup", "aws:appmesh/mesh:Mesh", "aws:appmesh/route:Route", "aws:appmesh/virtualNode:VirtualNode", "aws:appmesh/virtualRouter:VirtualRouter", "aws:appmesh/virtualService:VirtualService", "aws:appsync/graphQLApi:GraphQLApi", "aws:athena/workgroup:Workgroup", "aws:autoscaling/group:Group", "aws:backup/plan:Plan", "aws:backup/vault:Vault", "aws:cfg/aggregateAuthorization:AggregateAuthorization", "aws:cfg/configurationAggregator:ConfigurationAggregator", "aws:cfg/rule:Rule", "aws:cloudformation/stack:Stack", "aws:cloudformation/stackSet:StackSet", "aws:cloudfront/distribution:Distribution", "aws:cloudhsmv2/cluster:Cluster", "aws:cloudtrail/trail:Trail", "aws:cloudwatch/eventRule:EventRule", "aws:cloudwatch/logGroup:LogGroup", "aws:cloudwatch/metricAlarm:MetricAlarm", "aws:codebuild/project:Project", "aws:codecommit/repository:Repository", "aws:codepipeline/pipeline:Pipeline", "aws:codepipeline/webhook:Webhook", "aws:codestarnotifications/notificationRule:NotificationRule", "aws:cognito/identityPool:IdentityPool", "aws:cognito/userPool:UserPool", "aws:datapipeline/pipeline:Pipeline", "aws:datasync/agent:Agent", "aws:datasync/efsLocation:EfsLocation", "aws:datasync/locationSmb:LocationSmb", "aws:datasync/nfsLocation:NfsLocation", "aws:datasync/s3Location:S3Location", "aws:datasync/task:Task", "aws:dax/cluster:Cluster", "aws:directconnect/connection:Connection", "aws:directconnect/hostedPrivateVirtualInterfaceAccepter:HostedPrivateVirtualInterfaceAccepter", "aws:directconnect/hostedPublicVirtualInterfaceAccepter:HostedPublicVirtualInterfaceAccepter", "aws:directconnect/hostedTransitVirtualInterfaceAcceptor:HostedTransitVirtualInterfaceAcceptor", "aws:directconnect/linkAggregationGroup:LinkAggregationGroup", "aws:directconnect/privateVirtualInterface:PrivateVirtualInterface", "aws:directconnect/publicVirtualInterface:PublicVirtualInterface", "aws:directconnect/transitVirtualInterface:TransitVirtualInterface", "aws:directoryservice/directory:Directory", "aws:dlm/lifecyclePolicy:LifecyclePolicy", "aws:dms/endpoint:Endpoint", "aws:dms/replicationInstance:ReplicationInstance", "aws:dms/replicationSubnetGroup:ReplicationSubnetGroup", "aws:dms/replicationTask:ReplicationTask", "aws:docdb/cluster:Cluster", "aws:docdb/clusterInstance:ClusterInstance", "aws:docdb/clusterParameterGroup:ClusterParameterGroup", "aws:docdb/subnetGroup:SubnetGroup", "aws:dynamodb/table:Table", "aws:ebs/snapshot:Snapshot", "aws:ebs/snapshotCopy:SnapshotCopy", "aws:ebs/volume:Volume", "aws:ec2/ami:Ami", "aws:ec2/amiCopy:AmiCopy", "aws:ec2/amiFromInstance:AmiFromInstance", "aws:ec2/capacityReservation:CapacityReservation", "aws:ec2/customerGateway:CustomerGateway", "aws:ec2/defaultNetworkAcl:DefaultNetworkAcl", "aws:ec2/defaultRouteTable:DefaultRouteTable", "aws:ec2/defaultSecurityGroup:DefaultSecurityGroup", "aws:ec2/defaultSubnet:DefaultSubnet", "aws:ec2/defaultVpc:DefaultVpc", "aws:ec2/defaultVpcDhcpOptions:DefaultVpcDhcpOptions", "aws:ec2/eip:Eip", "aws:ec2/fleet:Fleet", "aws:ec2/instance:Instance", "aws:ec2/internetGateway:InternetGateway", "aws:ec2/keyPair:KeyPair", "aws:ec2/launchTemplate:LaunchTemplate", "aws:ec2/natGateway:NatGateway", "aws:ec2/networkAcl:NetworkAcl", "aws:ec2/networkInterface:NetworkInterface", "aws:ec2/placementGroup:PlacementGroup", "aws:ec2/routeTable:RouteTable", "aws:ec2/securityGroup:SecurityGroup", "aws:ec2/spotInstanceRequest:SpotInstanceRequest", "aws:ec2/subnet:Subnet", "aws:ec2/vpc:Vpc", "aws:ec2/vpcDhcpOptions:VpcDhcpOptions", "aws:ec2/vpcEndpoint:VpcEndpoint", "aws:ec2/vpcEndpointService:VpcEndpointService", "aws:ec2/vpcPeeringConnection:VpcPeeringConnection", "aws:ec2/vpcPeeringConnectionAccepter:VpcPeeringConnectionAccepter", "aws:ec2/vpnConnection:VpnConnection", "aws:ec2/vpnGateway:VpnGateway", "aws:ec2clientvpn/endpoint:Endpoint", "aws:ec2transitgateway/routeTable:RouteTable", "aws:ec2transitgateway/transitGateway:TransitGateway", "aws:ec2transitgateway/vpcAttachment:VpcAttachment", "aws:ec2transitgateway/vpcAttachmentAccepter:VpcAttachmentAccepter", "aws:ecr/repository:Repository", "aws:ecs/capacityProvider:CapacityProvider", "aws:ecs/cluster:Cluster", "aws:ecs/service:Service", "aws:ecs/taskDefinition:TaskDefinition", "aws:efs/fileSystem:FileSystem", "aws:eks/cluster:Cluster", "aws:eks/fargateProfile:FargateProfile", "aws:eks/nodeGroup:NodeGroup", "aws:elasticache/cluster:Cluster", "aws:elasticache/replicationGroup:ReplicationGroup", "aws:elasticbeanstalk/application:Application", "aws:elasticbeanstalk/applicationVersion:ApplicationVersion", "aws:elasticbeanstalk/environment:Environment", "aws:elasticloadbalancing/loadBalancer:LoadBalancer", "aws:elasticloadbalancingv2/loadBalancer:LoadBalancer", "aws:elasticloadbalancingv2/targetGroup:TargetGroup", "aws:elasticsearch/domain:Domain", "aws:elb/loadBalancer:LoadBalancer", "aws:emr/cluster:Cluster", "aws:fsx/lustreFileSystem:LustreFileSystem", "aws:fsx/windowsFileSystem:WindowsFileSystem", "aws:gamelift/alias:Alias", "aws:gamelift/build:Build", "aws:gamelift/fleet:Fleet", "aws:gamelift/gameSessionQueue:GameSessionQueue", "aws:glacier/vault:Vault", "aws:glue/crawler:Crawler", "aws:glue/job:Job", "aws:glue/trigger:Trigger", "aws:iam/role:Role", "aws:iam/user:User", "aws:inspector/resourceGroup:ResourceGroup", "aws:kinesis/analyticsApplication:AnalyticsApplication", "aws:kinesis/firehoseDeliveryStream:FirehoseDeliveryStream", "aws:kinesis/stream:Stream", "aws:kms/externalKey:ExternalKey", "aws:kms/key:Key", "aws:lambda/function:Function", "aws:lb/loadBalancer:LoadBalancer", "aws:lb/targetGroup:TargetGroup", "aws:licensemanager/licenseConfiguration:LicenseConfiguration", "aws:lightsail/instance:Instance", "aws:mediaconvert/queue:Queue", "aws:mediapackage/channel:Channel", "aws:mediastore/container:Container", "aws:mq/broker:Broker", "aws:mq/configuration:Configuration", "aws:msk/cluster:Cluster", "aws:neptune/cluster:Cluster", "aws:neptune/clusterInstance:ClusterInstance", "aws:neptune/clusterParameterGroup:ClusterParameterGroup", "aws:neptune/eventSubscription:EventSubscription", "aws:neptune/parameterGroup:ParameterGroup", "aws:neptune/subnetGroup:SubnetGroup", "aws:opsworks/stack:Stack", "aws:organizations/account:Account", "aws:pinpoint/app:App", "aws:qldb/ledger:Ledger", "aws:ram/resourceShare:ResourceShare", "aws:rds/cluster:Cluster", "aws:rds/clusterEndpoint:ClusterEndpoint", "aws:rds/clusterInstance:ClusterInstance", "aws:rds/clusterParameterGroup:ClusterParameterGroup", "aws:rds/clusterSnapshot:ClusterSnapshot", "aws:rds/eventSubscription:EventSubscription", "aws:rds/instance:Instance", "aws:rds/optionGroup:OptionGroup", "aws:rds/parameterGroup:ParameterGroup", "aws:rds/securityGroup:SecurityGroup", "aws:rds/snapshot:Snapshot", "aws:rds/subnetGroup:SubnetGroup", "aws:redshift/cluster:Cluster", "aws:redshift/eventSubscription:EventSubscription", "aws:redshift/parameterGroup:ParameterGroup", "aws:redshift/snapshotCopyGrant:SnapshotCopyGrant", "aws:redshift/snapshotSchedule:SnapshotSchedule", "aws:redshift/subnetGroup:SubnetGroup", "aws:resourcegroups/group:Group", "aws:route53/healthCheck:HealthCheck", "aws:route53/resolverEndpoint:ResolverEndpoint", "aws:route53/resolverRule:ResolverRule", "aws:route53/zone:Zone", "aws:s3/bucket:Bucket", "aws:s3/bucketObject:BucketObject", "aws:sagemaker/endpoint:Endpoint", "aws:sagemaker/endpointConfiguration:EndpointConfiguration", "aws:sagemaker/model:Model", "aws:sagemaker/notebookInstance:NotebookInstance", "aws:secretsmanager/secret:Secret", "aws:servicecatalog/portfolio:Portfolio", "aws:sfn/activity:Activity", "aws:sfn/stateMachine:StateMachine", "aws:sns/topic:Topic", "aws:sqs/queue:Queue", "aws:ssm/activation:Activation", "aws:ssm/document:Document", "aws:ssm/maintenanceWindow:MaintenanceWindow", "aws:ssm/parameter:Parameter", "aws:ssm/patchBaseline:PatchBaseline", "aws:storagegateway/cachesIscsiVolume:CachesIscsiVolume", "aws:storagegateway/gateway:Gateway", "aws:storagegateway/nfsFileShare:NfsFileShare", "aws:storagegateway/smbFileShare:SmbFileShare", "aws:swf/domain:Domain", "aws:transfer/server:Server", "aws:transfer/user:User", "aws:waf/rateBasedRule:RateBasedRule", "aws:waf/rule:Rule", "aws:waf/ruleGroup:RuleGroup", "aws:waf/webAcl:WebAcl", "aws:wafregional/rateBasedRule:RateBasedRule", "aws:wafregional/rule:Rule", "aws:wafregional/ruleGroup:RuleGroup", "aws:wafregional/webAcl:WebAcl", "aws:workspaces/directory:Directory", "aws:workspaces/ipGroup:IpGroup"]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["tagResources.ts"],"names":["tagResources","tags","pulumi","runtime","registerStackTransformation","args","isTaggable","type","props","opts","undefined","module","exports","resourceType","taggableResourceTypes","has","Set"],"mappings":"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","sourcesContent":["import * as pulumi from \"@pulumi/pulumi\";\n\n/**\n * Registers a global stack transformation that merges a set\n * of tags with whatever was explicitly set in the resource definition.\n */\nexport function tagResources(tags: Record<string, string>) {\n pulumi.runtime.registerStackTransformation(args => {\n if (isTaggable(args.type)) {\n args.props[\"tags\"] = { ...args.props[\"tags\"], ...tags };\n return { props: args.props, opts: args.opts };\n }\n return undefined;\n });\n}\n\nmodule.exports = {\n tagResources\n};\n\n/**\n * Returns true if the given resource type is an AWS resource that supports tags.\n */\nfunction isTaggable(resourceType: string) {\n return taggableResourceTypes.has(resourceType);\n}\n\n// A list of known AWS type tokens that are taggable.\nconst taggableResourceTypes = new Set([\n \"aws:accessanalyzer/analyzer:Analyzer\",\n \"aws:acm/certificate:Certificate\",\n \"aws:acmpca/certificateAuthority:CertificateAuthority\",\n \"aws:alb/loadBalancer:LoadBalancer\",\n \"aws:alb/targetGroup:TargetGroup\",\n \"aws:apigateway/apiKey:ApiKey\",\n \"aws:apigateway/clientCertificate:ClientCertificate\",\n \"aws:apigateway/domainName:DomainName\",\n \"aws:apigateway/restApi:RestApi\",\n \"aws:apigateway/stage:Stage\",\n \"aws:apigateway/usagePlan:UsagePlan\",\n \"aws:apigateway/vpcLink:VpcLink\",\n \"aws:apigatewayv2/api:Api\",\n \"aws:apigatewayv2/stage:Stage\",\n \"aws:applicationloadbalancing/loadBalancer:LoadBalancer\",\n \"aws:applicationloadbalancing/targetGroup:TargetGroup\",\n \"aws:appmesh/mesh:Mesh\",\n \"aws:appmesh/route:Route\",\n \"aws:appmesh/virtualNode:VirtualNode\",\n \"aws:appmesh/virtualRouter:VirtualRouter\",\n \"aws:appmesh/virtualService:VirtualService\",\n \"aws:appsync/graphQLApi:GraphQLApi\",\n \"aws:athena/workgroup:Workgroup\",\n \"aws:autoscaling/group:Group\",\n \"aws:backup/plan:Plan\",\n \"aws:backup/vault:Vault\",\n \"aws:cfg/aggregateAuthorization:AggregateAuthorization\",\n \"aws:cfg/configurationAggregator:ConfigurationAggregator\",\n \"aws:cfg/rule:Rule\",\n \"aws:cloudformation/stack:Stack\",\n \"aws:cloudformation/stackSet:StackSet\",\n \"aws:cloudfront/distribution:Distribution\",\n \"aws:cloudhsmv2/cluster:Cluster\",\n \"aws:cloudtrail/trail:Trail\",\n \"aws:cloudwatch/eventRule:EventRule\",\n \"aws:cloudwatch/logGroup:LogGroup\",\n \"aws:cloudwatch/metricAlarm:MetricAlarm\",\n \"aws:codebuild/project:Project\",\n \"aws:codecommit/repository:Repository\",\n \"aws:codepipeline/pipeline:Pipeline\",\n \"aws:codepipeline/webhook:Webhook\",\n \"aws:codestarnotifications/notificationRule:NotificationRule\",\n \"aws:cognito/identityPool:IdentityPool\",\n \"aws:cognito/userPool:UserPool\",\n \"aws:datapipeline/pipeline:Pipeline\",\n \"aws:datasync/agent:Agent\",\n \"aws:datasync/efsLocation:EfsLocation\",\n \"aws:datasync/locationSmb:LocationSmb\",\n \"aws:datasync/nfsLocation:NfsLocation\",\n \"aws:datasync/s3Location:S3Location\",\n \"aws:datasync/task:Task\",\n \"aws:dax/cluster:Cluster\",\n \"aws:directconnect/connection:Connection\",\n \"aws:directconnect/hostedPrivateVirtualInterfaceAccepter:HostedPrivateVirtualInterfaceAccepter\",\n \"aws:directconnect/hostedPublicVirtualInterfaceAccepter:HostedPublicVirtualInterfaceAccepter\",\n \"aws:directconnect/hostedTransitVirtualInterfaceAcceptor:HostedTransitVirtualInterfaceAcceptor\",\n \"aws:directconnect/linkAggregationGroup:LinkAggregationGroup\",\n \"aws:directconnect/privateVirtualInterface:PrivateVirtualInterface\",\n \"aws:directconnect/publicVirtualInterface:PublicVirtualInterface\",\n \"aws:directconnect/transitVirtualInterface:TransitVirtualInterface\",\n \"aws:directoryservice/directory:Directory\",\n \"aws:dlm/lifecyclePolicy:LifecyclePolicy\",\n \"aws:dms/endpoint:Endpoint\",\n \"aws:dms/replicationInstance:ReplicationInstance\",\n \"aws:dms/replicationSubnetGroup:ReplicationSubnetGroup\",\n \"aws:dms/replicationTask:ReplicationTask\",\n \"aws:docdb/cluster:Cluster\",\n \"aws:docdb/clusterInstance:ClusterInstance\",\n \"aws:docdb/clusterParameterGroup:ClusterParameterGroup\",\n \"aws:docdb/subnetGroup:SubnetGroup\",\n \"aws:dynamodb/table:Table\",\n \"aws:ebs/snapshot:Snapshot\",\n \"aws:ebs/snapshotCopy:SnapshotCopy\",\n \"aws:ebs/volume:Volume\",\n \"aws:ec2/ami:Ami\",\n \"aws:ec2/amiCopy:AmiCopy\",\n \"aws:ec2/amiFromInstance:AmiFromInstance\",\n \"aws:ec2/capacityReservation:CapacityReservation\",\n \"aws:ec2/customerGateway:CustomerGateway\",\n \"aws:ec2/defaultNetworkAcl:DefaultNetworkAcl\",\n \"aws:ec2/defaultRouteTable:DefaultRouteTable\",\n \"aws:ec2/defaultSecurityGroup:DefaultSecurityGroup\",\n \"aws:ec2/defaultSubnet:DefaultSubnet\",\n \"aws:ec2/defaultVpc:DefaultVpc\",\n \"aws:ec2/defaultVpcDhcpOptions:DefaultVpcDhcpOptions\",\n \"aws:ec2/eip:Eip\",\n \"aws:ec2/fleet:Fleet\",\n \"aws:ec2/instance:Instance\",\n \"aws:ec2/internetGateway:InternetGateway\",\n \"aws:ec2/keyPair:KeyPair\",\n \"aws:ec2/launchTemplate:LaunchTemplate\",\n \"aws:ec2/natGateway:NatGateway\",\n \"aws:ec2/networkAcl:NetworkAcl\",\n \"aws:ec2/networkInterface:NetworkInterface\",\n \"aws:ec2/placementGroup:PlacementGroup\",\n \"aws:ec2/routeTable:RouteTable\",\n \"aws:ec2/securityGroup:SecurityGroup\",\n \"aws:ec2/spotInstanceRequest:SpotInstanceRequest\",\n \"aws:ec2/subnet:Subnet\",\n \"aws:ec2/vpc:Vpc\",\n \"aws:ec2/vpcDhcpOptions:VpcDhcpOptions\",\n \"aws:ec2/vpcEndpoint:VpcEndpoint\",\n \"aws:ec2/vpcEndpointService:VpcEndpointService\",\n \"aws:ec2/vpcPeeringConnection:VpcPeeringConnection\",\n \"aws:ec2/vpcPeeringConnectionAccepter:VpcPeeringConnectionAccepter\",\n \"aws:ec2/vpnConnection:VpnConnection\",\n \"aws:ec2/vpnGateway:VpnGateway\",\n \"aws:ec2clientvpn/endpoint:Endpoint\",\n \"aws:ec2transitgateway/routeTable:RouteTable\",\n \"aws:ec2transitgateway/transitGateway:TransitGateway\",\n \"aws:ec2transitgateway/vpcAttachment:VpcAttachment\",\n \"aws:ec2transitgateway/vpcAttachmentAccepter:VpcAttachmentAccepter\",\n \"aws:ecr/repository:Repository\",\n \"aws:ecs/capacityProvider:CapacityProvider\",\n \"aws:ecs/cluster:Cluster\",\n \"aws:ecs/service:Service\",\n \"aws:ecs/taskDefinition:TaskDefinition\",\n \"aws:efs/fileSystem:FileSystem\",\n \"aws:eks/cluster:Cluster\",\n \"aws:eks/fargateProfile:FargateProfile\",\n \"aws:eks/nodeGroup:NodeGroup\",\n \"aws:elasticache/cluster:Cluster\",\n \"aws:elasticache/replicationGroup:ReplicationGroup\",\n \"aws:elasticbeanstalk/application:Application\",\n \"aws:elasticbeanstalk/applicationVersion:ApplicationVersion\",\n \"aws:elasticbeanstalk/environment:Environment\",\n \"aws:elasticloadbalancing/loadBalancer:LoadBalancer\",\n \"aws:elasticloadbalancingv2/loadBalancer:LoadBalancer\",\n \"aws:elasticloadbalancingv2/targetGroup:TargetGroup\",\n \"aws:elasticsearch/domain:Domain\",\n \"aws:elb/loadBalancer:LoadBalancer\",\n \"aws:emr/cluster:Cluster\",\n \"aws:fsx/lustreFileSystem:LustreFileSystem\",\n \"aws:fsx/windowsFileSystem:WindowsFileSystem\",\n \"aws:gamelift/alias:Alias\",\n \"aws:gamelift/build:Build\",\n \"aws:gamelift/fleet:Fleet\",\n \"aws:gamelift/gameSessionQueue:GameSessionQueue\",\n \"aws:glacier/vault:Vault\",\n \"aws:glue/crawler:Crawler\",\n \"aws:glue/job:Job\",\n \"aws:glue/trigger:Trigger\",\n \"aws:iam/role:Role\",\n \"aws:iam/user:User\",\n \"aws:inspector/resourceGroup:ResourceGroup\",\n \"aws:kinesis/analyticsApplication:AnalyticsApplication\",\n \"aws:kinesis/firehoseDeliveryStream:FirehoseDeliveryStream\",\n \"aws:kinesis/stream:Stream\",\n \"aws:kms/externalKey:ExternalKey\",\n \"aws:kms/key:Key\",\n \"aws:lambda/function:Function\",\n \"aws:lb/loadBalancer:LoadBalancer\",\n \"aws:lb/targetGroup:TargetGroup\",\n \"aws:licensemanager/licenseConfiguration:LicenseConfiguration\",\n \"aws:lightsail/instance:Instance\",\n \"aws:mediaconvert/queue:Queue\",\n \"aws:mediapackage/channel:Channel\",\n \"aws:mediastore/container:Container\",\n \"aws:mq/broker:Broker\",\n \"aws:mq/configuration:Configuration\",\n \"aws:msk/cluster:Cluster\",\n \"aws:neptune/cluster:Cluster\",\n \"aws:neptune/clusterInstance:ClusterInstance\",\n \"aws:neptune/clusterParameterGroup:ClusterParameterGroup\",\n \"aws:neptune/eventSubscription:EventSubscription\",\n \"aws:neptune/parameterGroup:ParameterGroup\",\n \"aws:neptune/subnetGroup:SubnetGroup\",\n \"aws:opsworks/stack:Stack\",\n \"aws:organizations/account:Account\",\n \"aws:pinpoint/app:App\",\n \"aws:qldb/ledger:Ledger\",\n \"aws:ram/resourceShare:ResourceShare\",\n \"aws:rds/cluster:Cluster\",\n \"aws:rds/clusterEndpoint:ClusterEndpoint\",\n \"aws:rds/clusterInstance:ClusterInstance\",\n \"aws:rds/clusterParameterGroup:ClusterParameterGroup\",\n \"aws:rds/clusterSnapshot:ClusterSnapshot\",\n \"aws:rds/eventSubscription:EventSubscription\",\n \"aws:rds/instance:Instance\",\n \"aws:rds/optionGroup:OptionGroup\",\n \"aws:rds/parameterGroup:ParameterGroup\",\n \"aws:rds/securityGroup:SecurityGroup\",\n \"aws:rds/snapshot:Snapshot\",\n \"aws:rds/subnetGroup:SubnetGroup\",\n \"aws:redshift/cluster:Cluster\",\n \"aws:redshift/eventSubscription:EventSubscription\",\n \"aws:redshift/parameterGroup:ParameterGroup\",\n \"aws:redshift/snapshotCopyGrant:SnapshotCopyGrant\",\n \"aws:redshift/snapshotSchedule:SnapshotSchedule\",\n \"aws:redshift/subnetGroup:SubnetGroup\",\n \"aws:resourcegroups/group:Group\",\n \"aws:route53/healthCheck:HealthCheck\",\n \"aws:route53/resolverEndpoint:ResolverEndpoint\",\n \"aws:route53/resolverRule:ResolverRule\",\n \"aws:route53/zone:Zone\",\n \"aws:s3/bucket:Bucket\",\n \"aws:s3/bucketObject:BucketObject\",\n \"aws:sagemaker/endpoint:Endpoint\",\n \"aws:sagemaker/endpointConfiguration:EndpointConfiguration\",\n \"aws:sagemaker/model:Model\",\n \"aws:sagemaker/notebookInstance:NotebookInstance\",\n \"aws:secretsmanager/secret:Secret\",\n \"aws:servicecatalog/portfolio:Portfolio\",\n \"aws:sfn/activity:Activity\",\n \"aws:sfn/stateMachine:StateMachine\",\n \"aws:sns/topic:Topic\",\n \"aws:sqs/queue:Queue\",\n \"aws:ssm/activation:Activation\",\n \"aws:ssm/document:Document\",\n \"aws:ssm/maintenanceWindow:MaintenanceWindow\",\n \"aws:ssm/parameter:Parameter\",\n \"aws:ssm/patchBaseline:PatchBaseline\",\n \"aws:storagegateway/cachesIscsiVolume:CachesIscsiVolume\",\n \"aws:storagegateway/gateway:Gateway\",\n \"aws:storagegateway/nfsFileShare:NfsFileShare\",\n \"aws:storagegateway/smbFileShare:SmbFileShare\",\n \"aws:swf/domain:Domain\",\n \"aws:transfer/server:Server\",\n \"aws:transfer/user:User\",\n \"aws:waf/rateBasedRule:RateBasedRule\",\n \"aws:waf/rule:Rule\",\n \"aws:waf/ruleGroup:RuleGroup\",\n \"aws:waf/webAcl:WebAcl\",\n \"aws:wafregional/rateBasedRule:RateBasedRule\",\n \"aws:wafregional/rule:Rule\",\n \"aws:wafregional/ruleGroup:RuleGroup\",\n \"aws:wafregional/webAcl:WebAcl\",\n \"aws:workspaces/directory:Directory\",\n \"aws:workspaces/ipGroup:IpGroup\"\n]);\n"]}
|