@cloud-copilot/iam-collect 0.1.6 → 0.1.7

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.
Files changed (38) hide show
  1. package/dist/cjs/cli.js +58 -48
  2. package/dist/cjs/cli.js.map +1 -1
  3. package/dist/cjs/config/createConfigFile.d.ts +1 -1
  4. package/dist/cjs/config/createConfigFile.d.ts.map +1 -1
  5. package/dist/cjs/config/createConfigFile.js +2 -2
  6. package/dist/cjs/config/createConfigFile.js.map +1 -1
  7. package/dist/cjs/config/defaultConfig.d.ts +1 -1
  8. package/dist/cjs/config/defaultConfig.d.ts.map +1 -1
  9. package/dist/cjs/config/defaultConfig.js +3 -2
  10. package/dist/cjs/config/defaultConfig.js.map +1 -1
  11. package/dist/cjs/config/packageVersion.d.ts +1 -6
  12. package/dist/cjs/config/packageVersion.d.ts.map +1 -1
  13. package/dist/cjs/config/packageVersion.js +11 -15
  14. package/dist/cjs/config/packageVersion.js.map +1 -1
  15. package/dist/cjs/utils/readPackageFile.d.ts +2 -0
  16. package/dist/cjs/utils/readPackageFile.d.ts.map +1 -0
  17. package/dist/cjs/utils/readPackageFile.js +13 -0
  18. package/dist/cjs/utils/readPackageFile.js.map +1 -0
  19. package/dist/esm/cli.js +58 -48
  20. package/dist/esm/cli.js.map +1 -1
  21. package/dist/esm/config/createConfigFile.d.ts +1 -1
  22. package/dist/esm/config/createConfigFile.d.ts.map +1 -1
  23. package/dist/esm/config/createConfigFile.js +2 -2
  24. package/dist/esm/config/createConfigFile.js.map +1 -1
  25. package/dist/esm/config/defaultConfig.d.ts +1 -1
  26. package/dist/esm/config/defaultConfig.d.ts.map +1 -1
  27. package/dist/esm/config/defaultConfig.js +3 -2
  28. package/dist/esm/config/defaultConfig.js.map +1 -1
  29. package/dist/esm/config/packageVersion.d.ts +1 -6
  30. package/dist/esm/config/packageVersion.d.ts.map +1 -1
  31. package/dist/esm/config/packageVersion.js +11 -15
  32. package/dist/esm/config/packageVersion.js.map +1 -1
  33. package/dist/esm/utils/readPackageFile.d.ts +2 -0
  34. package/dist/esm/utils/readPackageFile.d.ts.map +1 -0
  35. package/dist/esm/utils/readPackageFile.js +12 -0
  36. package/dist/esm/utils/readPackageFile.js.map +1 -0
  37. package/dist/esm/utils/readPackageFileEsm.d.ts.map +1 -0
  38. package/package.json +2 -2
package/dist/cjs/cli.js CHANGED
@@ -5,57 +5,67 @@ const cli_1 = require("@cloud-copilot/cli");
5
5
  const configFile_js_1 = require("./config/configFile.js");
6
6
  const createConfigFile_js_1 = require("./config/createConfigFile.js");
7
7
  const defaultConfig_js_1 = require("./config/defaultConfig.js");
8
+ const packageVersion_js_1 = require("./config/packageVersion.js");
8
9
  const download_js_1 = require("./download/download.js");
9
- const rawArgs = process.argv.slice(2); // Ignore the first two elements
10
- // const parsedArgs = parseCliArguments(rawArgs)
11
- const cli = (0, cli_1.parseCliArguments)('iam-collect', {
12
- init: {
13
- description: 'Initialize the iam-collect configuration file',
14
- options: {}
15
- },
16
- download: {
17
- description: 'Download IAM data',
18
- options: {
19
- configFiles: {
20
- type: 'string',
21
- description: 'The configuration files to use',
22
- values: 'multiple'
23
- },
24
- accountIds: {
25
- type: 'string',
26
- description: 'The account IDs to download from',
27
- values: 'multiple'
28
- },
29
- regions: {
30
- type: 'string',
31
- description: 'The regions to download from',
32
- values: 'multiple'
33
- },
34
- services: {
35
- type: 'string',
36
- description: 'The services to download',
37
- values: 'multiple'
10
+ const main = async () => {
11
+ const version = await (0, packageVersion_js_1.iamCollectVersion)();
12
+ const cli = (0, cli_1.parseCliArguments)('iam-collect', {
13
+ init: {
14
+ description: 'Initialize the iam-collect configuration file',
15
+ options: {}
16
+ },
17
+ download: {
18
+ description: 'Download IAM data',
19
+ options: {
20
+ configFiles: {
21
+ type: 'string',
22
+ description: 'The configuration files to use',
23
+ values: 'multiple'
24
+ },
25
+ accountIds: {
26
+ type: 'string',
27
+ description: 'The account IDs to download from',
28
+ values: 'multiple'
29
+ },
30
+ regions: {
31
+ type: 'string',
32
+ description: 'The regions to download from',
33
+ values: 'multiple'
34
+ },
35
+ services: {
36
+ type: 'string',
37
+ description: 'The services to download',
38
+ values: 'multiple'
39
+ }
38
40
  }
39
41
  }
42
+ }, {}, {
43
+ envPrefix: 'IAM_COLLECT',
44
+ showHelpIfNoArgs: true,
45
+ requireSubcommand: true,
46
+ version: version
47
+ });
48
+ if (cli.subcommand === 'init') {
49
+ if ((0, defaultConfig_js_1.defaultConfigExists)()) {
50
+ console.error('Configuration file already exists');
51
+ process.exit(1);
52
+ }
53
+ console.log('Initializing...');
54
+ await (0, createConfigFile_js_1.createDefaultConfiguration)();
55
+ process.exit(0);
40
56
  }
41
- }, {}, {
42
- envPrefix: 'IAM_COLLECT',
43
- showHelpIfNoArgs: true,
44
- requireSubcommand: true
45
- });
46
- if (cli.subcommand === 'init') {
47
- if ((0, defaultConfig_js_1.defaultConfigExists)()) {
48
- console.error('Configuration file already exists');
49
- process.exit(1);
57
+ else if (cli.subcommand === 'download') {
58
+ const defaultConfig = './iam-collect.jsonc';
59
+ const configFiles = cli.args.configFiles?.length > 0 ? cli.args.configFiles : [defaultConfig];
60
+ const configs = (0, configFile_js_1.loadConfigFiles)(configFiles);
61
+ await (0, download_js_1.downloadData)(configs, cli.args.accountIds, cli.args.regions, cli.args.services);
50
62
  }
51
- console.log('Initializing...');
52
- (0, createConfigFile_js_1.createDefaultConfiguration)();
53
- process.exit(0);
54
- }
55
- else if (cli.subcommand === 'download') {
56
- const defaultConfig = './iam-collect.jsonc';
57
- const configFiles = cli.args.configFiles?.length > 0 ? cli.args.configFiles : [defaultConfig];
58
- const configs = (0, configFile_js_1.loadConfigFiles)(configFiles);
59
- (0, download_js_1.downloadData)(configs, cli.args.accountIds, cli.args.regions, cli.args.services);
60
- }
63
+ };
64
+ main()
65
+ .catch((e) => {
66
+ console.error(e);
67
+ process.exit(1);
68
+ })
69
+ .then(() => { })
70
+ .finally(() => { });
61
71
  //# sourceMappingURL=cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";;;AAEA,4CAAsD;AACtD,0DAAwD;AACxD,sEAAyE;AACzE,gEAA+D;AAC/D,wDAAqD;AAErD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,gCAAgC;AACtE,gDAAgD;AAEhD,MAAM,GAAG,GAAG,IAAA,uBAAiB,EAC3B,aAAa,EACb;IACE,IAAI,EAAE;QACJ,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,EAAE;KACZ;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,mBAAmB;QAChC,OAAO,EAAE;YACP,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gCAAgC;gBAC7C,MAAM,EAAE,UAAU;aACnB;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;gBAC/C,MAAM,EAAE,UAAU;aACnB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,MAAM,EAAE,UAAU;aACnB;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0BAA0B;gBACvC,MAAM,EAAE,UAAU;aACnB;SACF;KACF;CACF,EACD,EAAE,EACF;IACE,SAAS,EAAE,aAAa;IACxB,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;CACxB,CACF,CAAA;AAED,IAAI,GAAG,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;IAC9B,IAAI,IAAA,sCAAmB,GAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAC9B,IAAA,gDAA0B,GAAE,CAAA;IAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;KAAM,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;IACzC,MAAM,aAAa,GAAG,qBAAqB,CAAA;IAC3C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IAC7F,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,WAAW,CAAC,CAAA;IAC5C,IAAA,0BAAY,EAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjF,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";;;AAEA,4CAAsD;AACtD,0DAAwD;AACxD,sEAAyE;AACzE,gEAA+D;AAC/D,kEAA8D;AAC9D,wDAAqD;AAErD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,MAAM,OAAO,GAAG,MAAM,IAAA,qCAAiB,GAAE,CAAA;IACzC,MAAM,GAAG,GAAG,IAAA,uBAAiB,EAC3B,aAAa,EACb;QACE,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,OAAO,EAAE,EAAE;SACZ;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAE;gBACP,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gCAAgC;oBAC7C,MAAM,EAAE,UAAU;iBACnB;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kCAAkC;oBAC/C,MAAM,EAAE,UAAU;iBACnB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8BAA8B;oBAC3C,MAAM,EAAE,UAAU;iBACnB;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0BAA0B;oBACvC,MAAM,EAAE,UAAU;iBACnB;aACF;SACF;KACF,EACD,EAAE,EACF;QACE,SAAS,EAAE,aAAa;QACxB,gBAAgB,EAAE,IAAI;QACtB,iBAAiB,EAAE,IAAI;QACvB,OAAO,EAAE,OAAO;KACjB,CACF,CAAA;IAED,IAAI,GAAG,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;QAC9B,IAAI,IAAA,sCAAmB,GAAE,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;QAC9B,MAAM,IAAA,gDAA0B,GAAE,CAAA;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;SAAM,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,qBAAqB,CAAA;QAC3C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;QAC7F,MAAM,OAAO,GAAG,IAAA,+BAAe,EAAC,WAAW,CAAC,CAAA;QAC5C,MAAM,IAAA,0BAAY,EAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvF,CAAC;AACH,CAAC,CAAA;AAED,IAAI,EAAE;KACH,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC;KACD,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;KACd,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Create a default configuration file.
3
3
  */
4
- export declare function createDefaultConfiguration(): void;
4
+ export declare function createDefaultConfiguration(): Promise<void>;
5
5
  //# sourceMappingURL=createConfigFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createConfigFile.d.ts","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,0BAA0B,SAQzC"}
1
+ {"version":3,"file":"createConfigFile.d.ts","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,0BAA0B,kBAQ/C"}
@@ -6,11 +6,11 @@ const defaultConfig_js_1 = require("./defaultConfig.js");
6
6
  /**
7
7
  * Create a default configuration file.
8
8
  */
9
- function createDefaultConfiguration() {
9
+ async function createDefaultConfiguration() {
10
10
  if ((0, defaultConfig_js_1.defaultConfigExists)()) {
11
11
  throw new Error('Configuration file already exists');
12
12
  }
13
- const configContent = (0, defaultConfig_js_1.getDefaultConfig)();
13
+ const configContent = await (0, defaultConfig_js_1.getDefaultConfig)();
14
14
  // Write the default configuration to a file
15
15
  (0, fs_1.writeFileSync)((0, defaultConfig_js_1.fullDefaultConfigPath)(), configContent);
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createConfigFile.js","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":";;AAMA,gEAQC;AAdD,2BAAkC;AAClC,yDAAiG;AAEjG;;GAEG;AACH,SAAgB,0BAA0B;IACxC,IAAI,IAAA,sCAAmB,GAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,mCAAgB,GAAE,CAAA;IACxC,4CAA4C;IAC5C,IAAA,kBAAa,EAAC,IAAA,wCAAqB,GAAE,EAAE,aAAa,CAAC,CAAA;AACvD,CAAC"}
1
+ {"version":3,"file":"createConfigFile.js","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":";;AAMA,gEAQC;AAdD,2BAAkC;AAClC,yDAAiG;AAEjG;;GAEG;AACI,KAAK,UAAU,0BAA0B;IAC9C,IAAI,IAAA,sCAAmB,GAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,IAAA,mCAAgB,GAAE,CAAA;IAC9C,4CAA4C;IAC5C,IAAA,kBAAa,EAAC,IAAA,wCAAqB,GAAE,EAAE,aAAa,CAAC,CAAA;AACvD,CAAC"}
@@ -10,5 +10,5 @@ export declare function fullDefaultConfigPath(): string;
10
10
  * @returns Whether the default config file exists
11
11
  */
12
12
  export declare function defaultConfigExists(): boolean;
13
- export declare function getDefaultConfig(): string;
13
+ export declare function getDefaultConfig(): Promise<string>;
14
14
  //# sourceMappingURL=defaultConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB,sBAAsB,CAAA;AAExD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AA8FD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
1
+ {"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB,sBAAsB,CAAA;AAExD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AA8FD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAGxD"}
@@ -114,7 +114,8 @@ const defaultConfig = `
114
114
 
115
115
  }
116
116
  `;
117
- function getDefaultConfig() {
118
- return defaultConfig.replace('0.0.0', (0, packageVersion_js_1.iamCollectVersion)());
117
+ async function getDefaultConfig() {
118
+ const version = await (0, packageVersion_js_1.iamCollectVersion)();
119
+ return defaultConfig.replace('0.0.0', version);
119
120
  }
120
121
  //# sourceMappingURL=defaultConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":";;;AAWA,sDAEC;AAMD,kDAEC;AA8FD,4CAEC;AArHD,2BAA+B;AAC/B,+BAA8B;AAC9B,2DAAuD;AAE1C,QAAA,qBAAqB,GAAG,mBAAmB,CAAA;AAExD;;;;GAIG;AACH,SAAgB,qBAAqB;IACnC,OAAO,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,6BAAqB,CAAC,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAA,eAAU,EAAC,qBAAqB,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FrB,CAAA;AAED,SAAgB,gBAAgB;IAC9B,OAAO,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,IAAA,qCAAiB,GAAE,CAAC,CAAA;AAC5D,CAAC"}
1
+ {"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":";;;AAWA,sDAEC;AAMD,kDAEC;AA8FD,4CAGC;AAtHD,2BAA+B;AAC/B,+BAA8B;AAC9B,2DAAuD;AAE1C,QAAA,qBAAqB,GAAG,mBAAmB,CAAA;AAExD;;;;GAIG;AACH,SAAgB,qBAAqB;IACnC,OAAO,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,6BAAqB,CAAC,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAA,eAAU,EAAC,qBAAqB,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FrB,CAAA;AAEM,KAAK,UAAU,gBAAgB;IACpC,MAAM,OAAO,GAAG,MAAM,IAAA,qCAAiB,GAAE,CAAA;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAChD,CAAC"}
@@ -1,10 +1,5 @@
1
- /**
2
- * Get the package data version
3
- *
4
- * @returns the package data version
5
- */
6
1
  /**
7
2
  * Get the version of the package
8
3
  */
9
- export declare function iamCollectVersion(): string;
4
+ export declare function iamCollectVersion(): Promise<string>;
10
5
  //# sourceMappingURL=packageVersion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAsBA;;;;GAIG;AASH;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C"}
1
+ {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAGzD"}
@@ -1,29 +1,25 @@
1
1
  "use strict";
2
- // let root = join(__dirname, '..', '..')
3
- // if (__dirname.endsWith('src')) {
4
- // root = join(__dirname, '..')
5
- // }
6
2
  Object.defineProperty(exports, "__esModule", { value: true });
7
3
  exports.iamCollectVersion = iamCollectVersion;
4
+ const readPackageFile_js_1 = require("../utils/readPackageFile.js");
8
5
  let packageCache = undefined;
9
6
  /**
10
7
  * Get the package data version
11
8
  *
12
9
  * @returns the package data version
13
10
  */
14
- // function getPackageData(): PackageInfo {
15
- // if (!packageCache) {
16
- // const packageInfo = readRelativeFile<typeof packageCache>(['package.json'])
17
- // packageCache = packageInfo
18
- // }
19
- // return packageCache!
20
- // }
11
+ async function getPackageData() {
12
+ if (!packageCache) {
13
+ const packageJson = await (0, readPackageFile_js_1.readPackageFile)(['package.json']);
14
+ packageCache = JSON.parse(packageJson);
15
+ }
16
+ return packageCache;
17
+ }
21
18
  /**
22
19
  * Get the version of the package
23
20
  */
24
- function iamCollectVersion() {
25
- // const data = getPackageData()
26
- // return data.version
27
- return '0.1.4';
21
+ async function iamCollectVersion() {
22
+ const data = await getPackageData();
23
+ return data.version;
28
24
  }
29
25
  //# sourceMappingURL=packageVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":";AAAA,yCAAyC;AACzC,mCAAmC;AACnC,iCAAiC;AACjC,IAAI;;AAmCJ,8CAIC;AAtBD,IAAI,YAAY,GAA4B,SAAS,CAAA;AAErD;;;;GAIG;AACH,2CAA2C;AAC3C,yBAAyB;AACzB,kFAAkF;AAClF,iCAAiC;AACjC,MAAM;AACN,yBAAyB;AACzB,IAAI;AAEJ;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,gCAAgC;IAChC,sBAAsB;IACtB,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":";;AAwBA,8CAGC;AA3BD,oEAA6D;AAM7D,IAAI,YAAY,GAA4B,SAAS,CAAA;AAErD;;;;GAIG;AACH,KAAK,UAAU,cAAc;IAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,IAAA,oCAAe,EAAC,CAAC,cAAc,CAAC,CAAC,CAAA;QAC3D,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACxC,CAAC;IACD,OAAO,YAAa,CAAA;AACtB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,iBAAiB;IACrC,MAAM,IAAI,GAAG,MAAM,cAAc,EAAE,CAAA;IACnC,OAAO,IAAI,CAAC,OAAO,CAAA;AACrB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function readPackageFile(pathParts: string[]): Promise<string>;
2
+ //# sourceMappingURL=readPackageFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readPackageFile.d.ts","sourceRoot":"","sources":["../../../src/utils/readPackageFile.ts"],"names":[],"mappings":"AAOA,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAG1E"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readPackageFile = readPackageFile;
4
+ const cli_1 = require("@cloud-copilot/cli");
5
+ let levels = 3;
6
+ if (__filename.includes('src')) {
7
+ levels = 2;
8
+ }
9
+ async function readPackageFile(pathParts) {
10
+ const packageFile = await (0, cli_1.readRelativeFile)(__filename, levels, pathParts);
11
+ return packageFile;
12
+ }
13
+ //# sourceMappingURL=readPackageFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readPackageFile.js","sourceRoot":"","sources":["../../../src/utils/readPackageFile.ts"],"names":[],"mappings":";;AAOA,0CAGC;AAVD,4CAAqD;AAErD,IAAI,MAAM,GAAG,CAAC,CAAA;AACd,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;IAC/B,MAAM,GAAG,CAAC,CAAA;AACZ,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,SAAmB;IACvD,MAAM,WAAW,GAAG,MAAM,IAAA,sBAAgB,EAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IACzE,OAAO,WAAW,CAAA;AACpB,CAAC"}
package/dist/esm/cli.js CHANGED
@@ -3,57 +3,67 @@ import { parseCliArguments } from '@cloud-copilot/cli';
3
3
  import { loadConfigFiles } from './config/configFile.js';
4
4
  import { createDefaultConfiguration } from './config/createConfigFile.js';
5
5
  import { defaultConfigExists } from './config/defaultConfig.js';
6
+ import { iamCollectVersion } from './config/packageVersion.js';
6
7
  import { downloadData } from './download/download.js';
7
- const rawArgs = process.argv.slice(2); // Ignore the first two elements
8
- // const parsedArgs = parseCliArguments(rawArgs)
9
- const cli = parseCliArguments('iam-collect', {
10
- init: {
11
- description: 'Initialize the iam-collect configuration file',
12
- options: {}
13
- },
14
- download: {
15
- description: 'Download IAM data',
16
- options: {
17
- configFiles: {
18
- type: 'string',
19
- description: 'The configuration files to use',
20
- values: 'multiple'
21
- },
22
- accountIds: {
23
- type: 'string',
24
- description: 'The account IDs to download from',
25
- values: 'multiple'
26
- },
27
- regions: {
28
- type: 'string',
29
- description: 'The regions to download from',
30
- values: 'multiple'
31
- },
32
- services: {
33
- type: 'string',
34
- description: 'The services to download',
35
- values: 'multiple'
8
+ const main = async () => {
9
+ const version = await iamCollectVersion();
10
+ const cli = parseCliArguments('iam-collect', {
11
+ init: {
12
+ description: 'Initialize the iam-collect configuration file',
13
+ options: {}
14
+ },
15
+ download: {
16
+ description: 'Download IAM data',
17
+ options: {
18
+ configFiles: {
19
+ type: 'string',
20
+ description: 'The configuration files to use',
21
+ values: 'multiple'
22
+ },
23
+ accountIds: {
24
+ type: 'string',
25
+ description: 'The account IDs to download from',
26
+ values: 'multiple'
27
+ },
28
+ regions: {
29
+ type: 'string',
30
+ description: 'The regions to download from',
31
+ values: 'multiple'
32
+ },
33
+ services: {
34
+ type: 'string',
35
+ description: 'The services to download',
36
+ values: 'multiple'
37
+ }
36
38
  }
37
39
  }
40
+ }, {}, {
41
+ envPrefix: 'IAM_COLLECT',
42
+ showHelpIfNoArgs: true,
43
+ requireSubcommand: true,
44
+ version: version
45
+ });
46
+ if (cli.subcommand === 'init') {
47
+ if (defaultConfigExists()) {
48
+ console.error('Configuration file already exists');
49
+ process.exit(1);
50
+ }
51
+ console.log('Initializing...');
52
+ await createDefaultConfiguration();
53
+ process.exit(0);
38
54
  }
39
- }, {}, {
40
- envPrefix: 'IAM_COLLECT',
41
- showHelpIfNoArgs: true,
42
- requireSubcommand: true
43
- });
44
- if (cli.subcommand === 'init') {
45
- if (defaultConfigExists()) {
46
- console.error('Configuration file already exists');
47
- process.exit(1);
55
+ else if (cli.subcommand === 'download') {
56
+ const defaultConfig = './iam-collect.jsonc';
57
+ const configFiles = cli.args.configFiles?.length > 0 ? cli.args.configFiles : [defaultConfig];
58
+ const configs = loadConfigFiles(configFiles);
59
+ await downloadData(configs, cli.args.accountIds, cli.args.regions, cli.args.services);
48
60
  }
49
- console.log('Initializing...');
50
- createDefaultConfiguration();
51
- process.exit(0);
52
- }
53
- else if (cli.subcommand === 'download') {
54
- const defaultConfig = './iam-collect.jsonc';
55
- const configFiles = cli.args.configFiles?.length > 0 ? cli.args.configFiles : [defaultConfig];
56
- const configs = loadConfigFiles(configFiles);
57
- downloadData(configs, cli.args.accountIds, cli.args.regions, cli.args.services);
58
- }
61
+ };
62
+ main()
63
+ .catch((e) => {
64
+ console.error(e);
65
+ process.exit(1);
66
+ })
67
+ .then(() => { })
68
+ .finally(() => { });
59
69
  //# sourceMappingURL=cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,gCAAgC;AACtE,gDAAgD;AAEhD,MAAM,GAAG,GAAG,iBAAiB,CAC3B,aAAa,EACb;IACE,IAAI,EAAE;QACJ,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,EAAE;KACZ;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,mBAAmB;QAChC,OAAO,EAAE;YACP,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gCAAgC;gBAC7C,MAAM,EAAE,UAAU;aACnB;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kCAAkC;gBAC/C,MAAM,EAAE,UAAU;aACnB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8BAA8B;gBAC3C,MAAM,EAAE,UAAU;aACnB;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0BAA0B;gBACvC,MAAM,EAAE,UAAU;aACnB;SACF;KACF;CACF,EACD,EAAE,EACF;IACE,SAAS,EAAE,aAAa;IACxB,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;CACxB,CACF,CAAA;AAED,IAAI,GAAG,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;IAC9B,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAC9B,0BAA0B,EAAE,CAAA;IAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;KAAM,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;IACzC,MAAM,aAAa,GAAG,qBAAqB,CAAA;IAC3C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IAC7F,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;IAC5C,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AACjF,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAA;IACzC,MAAM,GAAG,GAAG,iBAAiB,CAC3B,aAAa,EACb;QACE,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,OAAO,EAAE,EAAE;SACZ;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAE;gBACP,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gCAAgC;oBAC7C,MAAM,EAAE,UAAU;iBACnB;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kCAAkC;oBAC/C,MAAM,EAAE,UAAU;iBACnB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8BAA8B;oBAC3C,MAAM,EAAE,UAAU;iBACnB;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0BAA0B;oBACvC,MAAM,EAAE,UAAU;iBACnB;aACF;SACF;KACF,EACD,EAAE,EACF;QACE,SAAS,EAAE,aAAa;QACxB,gBAAgB,EAAE,IAAI;QACtB,iBAAiB,EAAE,IAAI;QACvB,OAAO,EAAE,OAAO;KACjB,CACF,CAAA;IAED,IAAI,GAAG,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;QAC9B,IAAI,mBAAmB,EAAE,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;QAC9B,MAAM,0BAA0B,EAAE,CAAA;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;SAAM,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,qBAAqB,CAAA;QAC3C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;QAC7F,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;QAC5C,MAAM,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvF,CAAC;AACH,CAAC,CAAA;AAED,IAAI,EAAE;KACH,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC;KACD,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;KACd,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Create a default configuration file.
3
3
  */
4
- export declare function createDefaultConfiguration(): void;
4
+ export declare function createDefaultConfiguration(): Promise<void>;
5
5
  //# sourceMappingURL=createConfigFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createConfigFile.d.ts","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAgB,0BAA0B,SAQzC"}
1
+ {"version":3,"file":"createConfigFile.d.ts","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,0BAA0B,kBAQ/C"}
@@ -3,11 +3,11 @@ import { defaultConfigExists, fullDefaultConfigPath, getDefaultConfig } from './
3
3
  /**
4
4
  * Create a default configuration file.
5
5
  */
6
- export function createDefaultConfiguration() {
6
+ export async function createDefaultConfiguration() {
7
7
  if (defaultConfigExists()) {
8
8
  throw new Error('Configuration file already exists');
9
9
  }
10
- const configContent = getDefaultConfig();
10
+ const configContent = await getDefaultConfig();
11
11
  // Write the default configuration to a file
12
12
  writeFileSync(fullDefaultConfigPath(), configContent);
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createConfigFile.js","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AAClC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEjG;;GAEG;AACH,MAAM,UAAU,0BAA0B;IACxC,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IACxC,4CAA4C;IAC5C,aAAa,CAAC,qBAAqB,EAAE,EAAE,aAAa,CAAC,CAAA;AACvD,CAAC"}
1
+ {"version":3,"file":"createConfigFile.js","sourceRoot":"","sources":["../../../src/config/createConfigFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AAClC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEjG;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC9C,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAA;IAC9C,4CAA4C;IAC5C,aAAa,CAAC,qBAAqB,EAAE,EAAE,aAAa,CAAC,CAAA;AACvD,CAAC"}
@@ -10,5 +10,5 @@ export declare function fullDefaultConfigPath(): string;
10
10
  * @returns Whether the default config file exists
11
11
  */
12
12
  export declare function defaultConfigExists(): boolean;
13
- export declare function getDefaultConfig(): string;
13
+ export declare function getDefaultConfig(): Promise<string>;
14
14
  //# sourceMappingURL=defaultConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB,sBAAsB,CAAA;AAExD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AA8FD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
1
+ {"version":3,"file":"defaultConfig.d.ts","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,qBAAqB,sBAAsB,CAAA;AAExD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AA8FD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAGxD"}
@@ -108,7 +108,8 @@ const defaultConfig = `
108
108
 
109
109
  }
110
110
  `;
111
- export function getDefaultConfig() {
112
- return defaultConfig.replace('0.0.0', iamCollectVersion());
111
+ export async function getDefaultConfig() {
112
+ const version = await iamCollectVersion();
113
+ return defaultConfig.replace('0.0.0', version);
113
114
  }
114
115
  //# sourceMappingURL=defaultConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAA;AAExD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FrB,CAAA;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;AAC5D,CAAC"}
1
+ {"version":3,"file":"defaultConfig.js","sourceRoot":"","sources":["../../../src/config/defaultConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAA;AAExD;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FrB,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAA;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AAChD,CAAC"}
@@ -1,10 +1,5 @@
1
- /**
2
- * Get the package data version
3
- *
4
- * @returns the package data version
5
- */
6
1
  /**
7
2
  * Get the version of the package
8
3
  */
9
- export declare function iamCollectVersion(): string;
4
+ export declare function iamCollectVersion(): Promise<string>;
10
5
  //# sourceMappingURL=packageVersion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAsBA;;;;GAIG;AASH;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C"}
1
+ {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAGzD"}
@@ -1,26 +1,22 @@
1
- // let root = join(__dirname, '..', '..')
2
- // if (__dirname.endsWith('src')) {
3
- // root = join(__dirname, '..')
4
- // }
1
+ import { readPackageFile } from '../utils/readPackageFile.js';
5
2
  let packageCache = undefined;
6
3
  /**
7
4
  * Get the package data version
8
5
  *
9
6
  * @returns the package data version
10
7
  */
11
- // function getPackageData(): PackageInfo {
12
- // if (!packageCache) {
13
- // const packageInfo = readRelativeFile<typeof packageCache>(['package.json'])
14
- // packageCache = packageInfo
15
- // }
16
- // return packageCache!
17
- // }
8
+ async function getPackageData() {
9
+ if (!packageCache) {
10
+ const packageJson = await readPackageFile(['package.json']);
11
+ packageCache = JSON.parse(packageJson);
12
+ }
13
+ return packageCache;
14
+ }
18
15
  /**
19
16
  * Get the version of the package
20
17
  */
21
- export function iamCollectVersion() {
22
- // const data = getPackageData()
23
- // return data.version
24
- return '0.1.4';
18
+ export async function iamCollectVersion() {
19
+ const data = await getPackageData();
20
+ return data.version;
25
21
  }
26
22
  //# sourceMappingURL=packageVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,mCAAmC;AACnC,iCAAiC;AACjC,IAAI;AAiBJ,IAAI,YAAY,GAA4B,SAAS,CAAA;AAErD;;;;GAIG;AACH,2CAA2C;AAC3C,yBAAyB;AACzB,kFAAkF;AAClF,iCAAiC;AACjC,MAAM;AACN,yBAAyB;AACzB,IAAI;AAEJ;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,gCAAgC;IAChC,sBAAsB;IACtB,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../../../src/config/packageVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAM7D,IAAI,YAAY,GAA4B,SAAS,CAAA;AAErD;;;;GAIG;AACH,KAAK,UAAU,cAAc;IAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;QAC3D,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACxC,CAAC;IACD,OAAO,YAAa,CAAA;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,IAAI,GAAG,MAAM,cAAc,EAAE,CAAA;IACnC,OAAO,IAAI,CAAC,OAAO,CAAA;AACrB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function readPackageFile(pathParts: string[]): Promise<string>;
2
+ //# sourceMappingURL=readPackageFileEsm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readPackageFile.d.ts","sourceRoot":"","sources":["../../../src/utils/readPackageFile.ts"],"names":[],"mappings":"AAOA,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAG1E"}
@@ -0,0 +1,12 @@
1
+ import { readRelativeFile } from '@cloud-copilot/cli';
2
+ let levels = 3;
3
+ //@ts-ignore
4
+ if (import.meta.url.includes('src')) {
5
+ levels = 2;
6
+ }
7
+ export async function readPackageFile(pathParts) {
8
+ //@ts-ignore
9
+ const packageFile = await readRelativeFile(import.meta.url, levels, pathParts);
10
+ return packageFile;
11
+ }
12
+ //# sourceMappingURL=readPackageFileEsm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readPackageFileEsm.js","sourceRoot":"","sources":["../../../src/utils/readPackageFileEsm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,IAAI,MAAM,GAAG,CAAC,CAAA;AACd,YAAY;AACZ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,GAAG,CAAC,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAmB;IACvD,YAAY;IACZ,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAC9E,OAAO,WAAW,CAAA;AACpB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readPackageFileEsm.d.ts","sourceRoot":"","sources":["../../../src/utils/readPackageFileEsm.ts"],"names":[],"mappings":"AAQA,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAI1E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloud-copilot/iam-collect",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "Collect IAM information from AWS Accounts",
5
5
  "repository": {
6
6
  "type": "git",
@@ -114,7 +114,7 @@
114
114
  "@aws-sdk/client-sts": "^3.772.0",
115
115
  "@aws-sdk/credential-providers": "^3.772.0",
116
116
  "@aws-sdk/types": "^3.734.0",
117
- "@cloud-copilot/cli": "^0.1.16",
117
+ "@cloud-copilot/cli": "^0.1.20",
118
118
  "@smithy/smithy-client": "^4.2.0",
119
119
  "@smithy/util-retry": "^4.0.2",
120
120
  "jsonc-parser": "^3.3.1"