terrafaker 0.0.0 → 0.0.4

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 (42) hide show
  1. package/README.md +24 -14
  2. package/dist/commands/generate/file.js +11 -9
  3. package/dist/commands/generate/repo.js +7 -3
  4. package/dist/constants/azure.js +187 -0
  5. package/dist/enums/providers.js +1 -0
  6. package/dist/enums/resource-types.js +8 -0
  7. package/dist/utilities/generators/aws-generator.js +68 -0
  8. package/dist/utilities/generators/azure-generator.js +45 -0
  9. package/dist/utilities/generators/file-generator.js +13 -0
  10. package/dist/utilities/generators/gcp-generator.js +53 -0
  11. package/dist/utilities/generators/generator-utils.js +8 -33
  12. package/dist/utilities/generators/provider-generator-factory.js +18 -0
  13. package/dist/utilities/generators/provider-generator.js +35 -0
  14. package/dist/utilities/generators/repo-generator.js +31 -0
  15. package/dist/utilities/string-utils.js +2 -1
  16. package/oclif.manifest.json +5 -3
  17. package/package.json +13 -14
  18. package/dist/commands/generate/file.d.ts +0 -13
  19. package/dist/commands/generate/index.d.ts +0 -7
  20. package/dist/commands/generate/repo.d.ts +0 -18
  21. package/dist/commands/gh/clone-repos.d.ts +0 -10
  22. package/dist/commands/gh/delete-repos.d.ts +0 -9
  23. package/dist/commands/gh/index.d.ts +0 -7
  24. package/dist/commands/util/format-psv.d.ts +0 -10
  25. package/dist/commands/util/format-tsv.d.ts +0 -13
  26. package/dist/commands/util/index.d.ts +0 -7
  27. package/dist/constants/aws.d.ts +0 -192
  28. package/dist/constants/gcp.d.ts +0 -88
  29. package/dist/constants/tags.d.ts +0 -5
  30. package/dist/enums/help-messages.d.ts +0 -4
  31. package/dist/enums/providers.d.ts +0 -8
  32. package/dist/index.d.ts +0 -1
  33. package/dist/types/object-values.d.ts +0 -2
  34. package/dist/utilities/base-command.d.ts +0 -5
  35. package/dist/utilities/flags.d.ts +0 -5
  36. package/dist/utilities/generators/aws-generators.d.ts +0 -4
  37. package/dist/utilities/generators/aws-generators.js +0 -80
  38. package/dist/utilities/generators/gcp-generators.d.ts +0 -4
  39. package/dist/utilities/generators/gcp-generators.js +0 -69
  40. package/dist/utilities/generators/generator-utils.d.ts +0 -80
  41. package/dist/utilities/github.d.ts +0 -8
  42. package/dist/utilities/string-utils.d.ts +0 -5
@@ -1,13 +1,9 @@
1
1
  import { faker } from "@faker-js/faker";
2
2
  import { snakeSlugify } from "../string-utils.js";
3
3
  import { ENVIRONMENT_TAGS, SERVICE_TAGS } from "../../constants/tags.js";
4
- import { mkdir } from "node:fs/promises";
5
- import path from "node:path";
6
- import { generateAwsFile } from "./aws-generators.js";
7
- import { $ } from "zx";
8
- import { generateGcpFile } from "./gcp-generators.js";
9
4
  import { Providers } from "../../enums/providers.js";
10
5
  import { range } from "lodash-es";
6
+ const MAX_UNIQUE_GENERATOR_ATTEMPTS = 50;
11
7
  /**
12
8
  * Wraps a generator function to ensure the values it returns are not reused within the program runtime
13
9
  */
@@ -15,9 +11,14 @@ function unique(generator) {
15
11
  const used = new Set();
16
12
  return () => {
17
13
  let value = generator();
18
- while (used.has(value)) {
14
+ let attempts = 0;
15
+ while (used.has(value) && attempts < MAX_UNIQUE_GENERATOR_ATTEMPTS) {
16
+ attempts++;
19
17
  value = generator();
20
18
  }
19
+ if (used.has(value)) {
20
+ value = `${value}${randomId()}`;
21
+ }
21
22
  used.add(value);
22
23
  return value;
23
24
  };
@@ -43,30 +44,4 @@ const randomInt = (options) => {
43
44
  * Returns true/false depending on the provided probability (0 to 1)
44
45
  */
45
46
  const maybe = (probability) => Math.random() < probability;
46
- const generateFileByProvider = (options) => {
47
- const { provider, ...rest } = options;
48
- switch (provider) {
49
- case Providers.GCP:
50
- return generateGcpFile(rest);
51
- default:
52
- case Providers.AWS:
53
- return generateAwsFile(rest);
54
- }
55
- };
56
- const generateRepo = async (options) => {
57
- const { provider, format, prefix, fileCount, resourceCount, quiet } = options;
58
- const directory = path.resolve(process.cwd(), options.directory);
59
- const repoName = `${prefix}${randomMemorableSlug()}`;
60
- const repoPath = path.join(directory, repoName);
61
- const sh = $({ cwd: repoPath, stdio: quiet ? "ignore" : "inherit" });
62
- await mkdir(repoPath);
63
- await sh `git init`;
64
- for (let i = 0; i < fileCount; i++) {
65
- const tfFilename = `${randomMemorableSlug()}.tf`;
66
- const tfg = generateFileByProvider({ provider, resourceCount });
67
- tfg.write({ format, dir: repoPath, tfFilename });
68
- }
69
- await sh `git add . && git commit -m "initial commit"`;
70
- return { name: repoName, path: repoPath };
71
- };
72
- export { generateFileByProvider, generateRepo, maybe, randomEnvironmentTag, randomId, randomInt, randomItem, randomMemorableSlug, randomMemorySize, randomProvider, randomServiceTag, unique, };
47
+ export { maybe, randomEnvironmentTag, randomId, randomInt, randomItem, randomMemorableSlug, randomMemorySize, randomProvider, randomServiceTag, unique, };
@@ -0,0 +1,18 @@
1
+ import { Providers } from "../../enums/providers.js";
2
+ import { AwsGenerator } from "./aws-generator.js";
3
+ import { AzureGenerator } from "./azure-generator.js";
4
+ import { GcpGenerator } from "./gcp-generator.js";
5
+ class ProviderGeneratorFactory {
6
+ static get(provider) {
7
+ switch (provider) {
8
+ case Providers.Azure:
9
+ return new AzureGenerator();
10
+ case Providers.GCP:
11
+ return new GcpGenerator();
12
+ default:
13
+ case Providers.AWS:
14
+ return new AwsGenerator();
15
+ }
16
+ }
17
+ }
18
+ export { ProviderGeneratorFactory };
@@ -0,0 +1,35 @@
1
+ import { TerraformGenerator } from "terraform-generator";
2
+ import { ResourceTypes } from "../../enums/resource-types.js";
3
+ import { randomItem, randomMemorableSlug } from "./generator-utils.js";
4
+ import { formatTfFileName } from "../string-utils.js";
5
+ class ProviderGenerator {
6
+ tfg;
7
+ constructor() {
8
+ this.tfg = new TerraformGenerator();
9
+ this.addProvider();
10
+ }
11
+ addResourceByType(type) {
12
+ switch (type) {
13
+ case ResourceTypes.LambdaFunction:
14
+ return this.addLambdaFunction();
15
+ default:
16
+ case ResourceTypes.ComputeInstance: {
17
+ return this.addComputeInstance();
18
+ }
19
+ }
20
+ }
21
+ addRandomResource() {
22
+ const type = randomItem(Object.values(ResourceTypes));
23
+ return this.addResourceByType(type);
24
+ }
25
+ toString() {
26
+ const { tf } = this.tfg.generate();
27
+ return tf.trim();
28
+ }
29
+ writeToFile(options) {
30
+ const { directory, format = true } = options ?? {};
31
+ const fileName = formatTfFileName(options?.fileName ?? randomMemorableSlug());
32
+ this.tfg.write({ format, dir: directory, tfFilename: fileName });
33
+ }
34
+ }
35
+ export { ProviderGenerator };
@@ -0,0 +1,31 @@
1
+ import path from "node:path";
2
+ import { FileGenerator } from "./file-generator.js";
3
+ import { randomMemorableSlug } from "./generator-utils.js";
4
+ import { $ } from "zx";
5
+ import { mkdir } from "node:fs/promises";
6
+ import { success } from "../string-utils.js";
7
+ class RepoGenerator {
8
+ static async generate(options) {
9
+ const { provider, prefix = "tf_", format, fileCount = 3, resourceCount, quiet, } = options;
10
+ const directory = path.resolve(process.cwd(), options.directory ?? ".");
11
+ const repoName = `${prefix}${randomMemorableSlug()}`;
12
+ const repoPath = path.join(directory, repoName);
13
+ const sh = $({ cwd: repoPath, stdio: quiet ? "ignore" : "inherit" });
14
+ await mkdir(repoPath);
15
+ await sh `git init`;
16
+ for (let i = 0; i < fileCount; i++) {
17
+ FileGenerator.generate({
18
+ directory: repoPath,
19
+ provider,
20
+ resourceCount,
21
+ format,
22
+ });
23
+ }
24
+ await sh `git add . && git commit -m "initial commit"`;
25
+ if (!quiet) {
26
+ console.log(success(`Successfully generated '${repoPath}'`));
27
+ }
28
+ return { name: repoName, path: repoPath };
29
+ }
30
+ }
31
+ export { RepoGenerator };
@@ -4,4 +4,5 @@ const slugify = (value) => faker.helpers.slugify(value).toLowerCase();
4
4
  const snakeSlugify = (value) => slugify(value).replaceAll("-", "_");
5
5
  const success = (message) => `${ux.colorize("green", "✓")} ${message}`;
6
6
  const stringifySingleLineArray = (values) => `[${values.map((value) => `"${value}"`).join(", ")}]`;
7
- export { slugify, snakeSlugify, stringifySingleLineArray, success };
7
+ const formatTfFileName = (fileName) => fileName.endsWith(".tf") ? fileName : `${fileName}.tf`;
8
+ export { formatTfFileName, slugify, snakeSlugify, stringifySingleLineArray, success, };
@@ -19,7 +19,8 @@
19
19
  "multiple": false,
20
20
  "options": [
21
21
  "aws",
22
- "gcp"
22
+ "gcp",
23
+ "azure"
23
24
  ],
24
25
  "type": "option"
25
26
  },
@@ -134,7 +135,8 @@
134
135
  "multiple": false,
135
136
  "options": [
136
137
  "aws",
137
- "gcp"
138
+ "gcp",
139
+ "azure"
138
140
  ],
139
141
  "type": "option"
140
142
  },
@@ -354,5 +356,5 @@
354
356
  ]
355
357
  }
356
358
  },
357
- "version": "0.0.0"
359
+ "version": "0.0.4"
358
360
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "author": "Brandon Scott",
3
3
  "bin": {
4
- "terrafaker": "./bin/run.js"
4
+ "terrafaker": "bin/run.js"
5
5
  },
6
6
  "bugs": "https://github.com/brandongregoryscott/terrafaker/issues",
7
7
  "dependencies": {
@@ -18,21 +18,19 @@
18
18
  "@eslint/compat": "1.4.1",
19
19
  "@oclif/test": "4.1.15",
20
20
  "@stylistic/eslint-plugin": "5.6.1",
21
- "@types/chai": "4.3.20",
22
21
  "@types/fs-extra": "11.0.4",
23
22
  "@types/lodash-es": "4.17.12",
24
- "@types/mocha": "10.0.10",
25
23
  "@types/node": "24.10.3",
26
- "chai": "4.5.0",
27
24
  "eslint": "9.39.1",
28
25
  "eslint-plugin-collation": "1.5.0",
29
- "mocha": "10.8.2",
26
+ "eslint-plugin-vitest": "0.5.4",
30
27
  "oclif": "4.22.54",
31
28
  "prettier": "3.6.1",
32
29
  "shx": "0.3.4",
33
30
  "ts-node": "10.9.2",
34
31
  "typescript": "5.9.3",
35
- "typescript-eslint": "8.49.0"
32
+ "typescript-eslint": "8.49.0",
33
+ "vitest": "4.0.15"
36
34
  },
37
35
  "engines": {
38
36
  "node": ">=18.0.0"
@@ -58,9 +56,12 @@
58
56
  ],
59
57
  "topicSeparator": " "
60
58
  },
61
- "repository": "brandongregoryscott/terrafaker",
59
+ "repository": {
60
+ "type": "git",
61
+ "url": "git+https://github.com/brandongregoryscott/terrafaker.git"
62
+ },
62
63
  "scripts": {
63
- "build": "npm run clean && tsc -b",
64
+ "build": "npm run clean && tsc --project tsconfig.build.json",
64
65
  "build:watch": "npm run clean && tsc --watch",
65
66
  "clean": "shx rm -rf dist tsconfig.tsbuildinfo",
66
67
  "format": "prettier . --check",
@@ -69,14 +70,12 @@
69
70
  "generate:readme": "oclif readme && prettier README.md --write",
70
71
  "lint": "eslint",
71
72
  "lint:fix": "eslint --fix",
72
- "postbuild": "npm run generate:manifest",
73
- "postpack": "shx rm -f oclif.manifest.json",
74
- "posttest": "npm run lint",
75
- "prepack": "npm run generate:manifest && npm run generate:readme",
76
- "test": "mocha --forbid-only \"test/**/*.test.ts\"",
73
+ "postbuild": "npm run generate:manifest && npm run generate:readme",
74
+ "prepack": "npm run build",
75
+ "test": "vitest",
77
76
  "version": "npm run generate:readme && git add README.md"
78
77
  },
79
78
  "type": "module",
80
79
  "types": "dist/index.d.ts",
81
- "version": "0.0.0"
80
+ "version": "0.0.4"
82
81
  }
@@ -1,13 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class File extends BaseCommand {
3
- static description: string;
4
- static flags: {
5
- name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
- provider: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
- "resource-count": import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
8
- format: import("@oclif/core/interfaces").BooleanFlag<boolean>;
9
- quiet: import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
- };
11
- run(): Promise<void>;
12
- }
13
- export { File };
@@ -1,7 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class Generate extends BaseCommand {
3
- static hidden: boolean;
4
- static description: string;
5
- run(): Promise<void>;
6
- }
7
- export { Generate };
@@ -1,18 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class Repo extends BaseCommand {
3
- static description: string;
4
- static flags: {
5
- directory: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
6
- count: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
7
- "file-count": import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
8
- "resource-count": import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
9
- prefix: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
10
- provider: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
- format: import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
- "create-remote": import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
- public: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
- quiet: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- };
16
- run(): Promise<void>;
17
- }
18
- export { Repo };
@@ -1,10 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class CloneRepos extends BaseCommand {
3
- static description: string;
4
- static flags: {
5
- directory: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
6
- prefix: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
7
- };
8
- run(): Promise<void>;
9
- }
10
- export { CloneRepos };
@@ -1,9 +0,0 @@
1
- import { Command } from "@oclif/core";
2
- declare class DeleteRepos extends Command {
3
- static description: string;
4
- static flags: {
5
- prefix: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
6
- };
7
- run(): Promise<void>;
8
- }
9
- export { DeleteRepos };
@@ -1,7 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class Gh extends BaseCommand {
3
- static hidden: boolean;
4
- static description: string;
5
- run(): Promise<void>;
6
- }
7
- export { Gh };
@@ -1,10 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class FormatPsv extends BaseCommand {
3
- static hidden: boolean;
4
- static description: string;
5
- static args: {
6
- psv: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
7
- };
8
- run(): Promise<void>;
9
- }
10
- export { FormatPsv };
@@ -1,13 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class FormatTsv extends BaseCommand {
3
- static hidden: boolean;
4
- static description: string;
5
- static flags: {
6
- index: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
7
- };
8
- static args: {
9
- tsv: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
10
- };
11
- run(): Promise<void>;
12
- }
13
- export { FormatTsv };
@@ -1,7 +0,0 @@
1
- import { BaseCommand } from "../../utilities/base-command.js";
2
- declare class Util extends BaseCommand {
3
- static hidden: boolean;
4
- static description: string;
5
- run(): Promise<void>;
6
- }
7
- export { Util };
@@ -1,192 +0,0 @@
1
- /**
2
- * @see https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html
3
- */
4
- declare const AWS_REGIONS: string[];
5
- /**
6
- * @see https://docs.aws.amazon.com/ec2/latest/instancetypes/gp.html
7
- */
8
- declare const AWS_INSTANCE_TYPES_BY_FAMILY: {
9
- M5: string[];
10
- M5a: string[];
11
- M5ad: string[];
12
- M5d: string[];
13
- M5dn: string[];
14
- M5n: string[];
15
- M5zn: string[];
16
- M6a: string[];
17
- M6g: string[];
18
- M6gd: string[];
19
- M6i: string[];
20
- M6id: string[];
21
- M6idn: string[];
22
- M6in: string[];
23
- M7a: string[];
24
- M7g: string[];
25
- M7gd: string[];
26
- M7i: string[];
27
- "M7i-flex": string[];
28
- M8a: string[];
29
- M8g: string[];
30
- M8gd: string[];
31
- M8i: string[];
32
- "M8i-flex": string[];
33
- Mac1: string[];
34
- Mac2: string[];
35
- "Mac2-m1ultra": string[];
36
- "Mac2-m2": string[];
37
- "Mac2-m2pro": string[];
38
- "Mac-m4": string[];
39
- "Mac-m4pro": string[];
40
- T2: string[];
41
- T3: string[];
42
- T3a: string[];
43
- T4g: string[];
44
- C5: string[];
45
- C5a: string[];
46
- C5ad: string[];
47
- C5d: string[];
48
- C5n: string[];
49
- C6a: string[];
50
- C6g: string[];
51
- C6gd: string[];
52
- C6gn: string[];
53
- C6i: string[];
54
- C6id: string[];
55
- C6in: string[];
56
- C7a: string[];
57
- C7g: string[];
58
- C7gd: string[];
59
- C7gn: string[];
60
- C7i: string[];
61
- "C7i-flex": string[];
62
- C8a: string[];
63
- C8g: string[];
64
- C8gb: string[];
65
- C8gd: string[];
66
- C8gn: string[];
67
- C8i: string[];
68
- "C8i-flex": string[];
69
- R5: string[];
70
- R5a: string[];
71
- R5ad: string[];
72
- R5b: string[];
73
- R5d: string[];
74
- R5dn: string[];
75
- R5n: string[];
76
- R6a: string[];
77
- R6g: string[];
78
- R6gd: string[];
79
- R6i: string[];
80
- R6id: string[];
81
- R6idn: string[];
82
- R6in: string[];
83
- R7a: string[];
84
- R7g: string[];
85
- R7gd: string[];
86
- R7i: string[];
87
- R7iz: string[];
88
- R8a: string[];
89
- R8g: string[];
90
- R8gb: string[];
91
- R8gd: string[];
92
- R8gn: string[];
93
- R8i: string[];
94
- "R8i-flex": string[];
95
- "U-3tb1": string[];
96
- "U-6tb1": string[];
97
- "U-9tb1": string[];
98
- "U-12tb1": string[];
99
- "U-18tb1": string[];
100
- "U-24tb1": string[];
101
- "U7i-6tb": string[];
102
- "U7i-8tb": string[];
103
- "U7i-12tb": string[];
104
- "U7in-16tb": string[];
105
- "U7in-24tb": string[];
106
- "U7in-32tb": string[];
107
- "U7inh-32tb": string[];
108
- X1: string[];
109
- X1e: string[];
110
- X2gd: string[];
111
- X2idn: string[];
112
- X2iedn: string[];
113
- X2iezn: string[];
114
- X8g: string[];
115
- X8aedz: string[];
116
- z1d: string[];
117
- D2: string[];
118
- D3: string[];
119
- D3en: string[];
120
- H1: string[];
121
- I3: string[];
122
- I3en: string[];
123
- I4g: string[];
124
- I4i: string[];
125
- I7i: string[];
126
- I7ie: string[];
127
- I8g: string[];
128
- I8ge: string[];
129
- Im4gn: string[];
130
- Is4gen: string[];
131
- DL1: string[];
132
- DL2q: string[];
133
- F1: string[];
134
- F2: string[];
135
- G4ad: string[];
136
- G4dn: string[];
137
- G5: string[];
138
- G5g: string[];
139
- G6: string[];
140
- G6e: string[];
141
- G6f: string[];
142
- Gr6: string[];
143
- Gr6f: string[];
144
- Inf1: string[];
145
- Inf2: string[];
146
- P4d: string[];
147
- P4de: string[];
148
- P5: string[];
149
- P5e: string[];
150
- P5en: string[];
151
- "P6-B200": string[];
152
- "P6-B300": string[];
153
- "P6e-GB200": string[];
154
- Trn1: string[];
155
- Trn1n: string[];
156
- Trn2: string[];
157
- Trn2u: string[];
158
- VT1: string[];
159
- Hpc6a: string[];
160
- Hpc6id: string[];
161
- Hpc7a: string[];
162
- Hpc7g: string[];
163
- };
164
- /**
165
- * @see https://docs.aws.amazon.com/ec2/latest/instancetypes/pg.html
166
- */
167
- declare const AWS_PREVIOUS_GENERATION_INSTANCE_TYPES_BY_FAMILY: {
168
- A1: string[];
169
- C1: string[];
170
- C3: string[];
171
- C4: string[];
172
- G3: string[];
173
- I2: string[];
174
- M1: string[];
175
- M2: string[];
176
- M3: string[];
177
- M4: string[];
178
- P2: string[];
179
- P3: string[];
180
- P3dn: string[];
181
- R3: string[];
182
- R4: string[];
183
- T1: string[];
184
- };
185
- declare const AWS_INSTANCE_TYPES: string[];
186
- /**
187
- * @see https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html
188
- */
189
- declare const AWS_LAMBDA_RUNTIMES: string[];
190
- /** @see https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html */
191
- declare const AWS_EBS_VOLUME_TYPES: string[];
192
- export { AWS_EBS_VOLUME_TYPES, AWS_INSTANCE_TYPES, AWS_INSTANCE_TYPES_BY_FAMILY, AWS_LAMBDA_RUNTIMES, AWS_PREVIOUS_GENERATION_INSTANCE_TYPES_BY_FAMILY, AWS_REGIONS, };
@@ -1,88 +0,0 @@
1
- /**
2
- * @see https://docs.cloud.google.com/compute/docs/regions-zones
3
- */
4
- declare const GCP_REGIONS: string[];
5
- /**
6
- * @see https://docs.cloud.google.com/compute/docs/general-purpose-machines
7
- */
8
- declare const GCP_INSTANCE_TYPES_BY_FAMILY: {
9
- "C4D standard": string[];
10
- "C4D highcpu": string[];
11
- "C4D highmem": string[];
12
- "C4D standard SSD": string[];
13
- "C4D highmem SSD": string[];
14
- "C4A standard": string[];
15
- "C4A highcpu": string[];
16
- "C4A highmem": string[];
17
- "C4A standard SSD": string[];
18
- "C4A highmem SSD": string[];
19
- "C4 standard": string[];
20
- "C4 highcpu": string[];
21
- "C4 highmem": string[];
22
- "C4 standard SSD": string[];
23
- "C4 highmem SSD": string[];
24
- "N4D standard": string[];
25
- "N4D highcpu": string[];
26
- "N4D highmem": string[];
27
- "N4A standard": string[];
28
- "N4A highcpu": string[];
29
- "N4A highmem": string[];
30
- "N4 standard": string[];
31
- "N4 highcpu": string[];
32
- "N4 highmem": string[];
33
- "C3D standard": string[];
34
- "C3D highcpu": string[];
35
- "C3D highmem": string[];
36
- "C3D standard SSD": string[];
37
- "C3D highmem SSD": string[];
38
- "C3 standard": string[];
39
- "C3 highcpu": string[];
40
- "C3 highmem": string[];
41
- "C3 standard SSD": string[];
42
- "N2D standard": string[];
43
- "N2D highcpu": string[];
44
- "N2D highmem": string[];
45
- "N2 standard": string[];
46
- "N2 highcpu": string[];
47
- "N2 highmem": string[];
48
- "E2 standard": string[];
49
- "E2 highcpu": string[];
50
- "E2 highmem": string[];
51
- "E2 sharedcore": string[];
52
- "N1 standard": string[];
53
- "N1 highcpu": string[];
54
- "N1 highmem": string[];
55
- "N1 sharedcore": string[];
56
- T2A: string[];
57
- T2D: string[];
58
- "Z3 standard SSD": string[];
59
- "Z3 high SSD": string[];
60
- H4D: string[];
61
- H3: string[];
62
- "C2D standard": string[];
63
- "C2D highcpu": string[];
64
- "C2D highmem": string[];
65
- C2: string[];
66
- X4: string[];
67
- M4: string[];
68
- M3: string[];
69
- M2: string[];
70
- M1: string[];
71
- A4X: string[];
72
- A4: string[];
73
- "A3 ultra": string[];
74
- "A3 mega": string[];
75
- "A3 high": string[];
76
- "A3 edge": string[];
77
- "A2 ultra": string[];
78
- "A2 standard": string[];
79
- G4: string[];
80
- G2: string[];
81
- };
82
- declare const GCP_INSTANCE_TYPES: string[];
83
- declare const GCP_GPU_MACHINE_TYPES: string[];
84
- /**
85
- * @see https://docs.cloud.google.com/run/docs/runtimes/function-runtimes
86
- */
87
- declare const GCP_LAMBDA_RUNTIMES: string[];
88
- export { GCP_GPU_MACHINE_TYPES, GCP_INSTANCE_TYPES, GCP_INSTANCE_TYPES_BY_FAMILY, GCP_LAMBDA_RUNTIMES, GCP_REGIONS, };
@@ -1,5 +0,0 @@
1
- declare const SHORT_ENVIRONMENT_TAGS: string[];
2
- declare const LONG_ENVIRONMENT_TAGS: string[];
3
- declare const ENVIRONMENT_TAGS: string[];
4
- declare const SERVICE_TAGS: string[];
5
- export { ENVIRONMENT_TAGS, LONG_ENVIRONMENT_TAGS, SERVICE_TAGS, SHORT_ENVIRONMENT_TAGS, };
@@ -1,4 +0,0 @@
1
- declare const HelpMessages: {
2
- readonly RequiresGhCli: "Requires the `gh` CLI to be installed. To install, run `brew install gh`.";
3
- };
4
- export { HelpMessages };
@@ -1,8 +0,0 @@
1
- import type { ObjectValues } from "../types/object-values.js";
2
- declare const Providers: {
3
- readonly AWS: "aws";
4
- readonly GCP: "gcp";
5
- };
6
- type Provider = ObjectValues<typeof Providers>;
7
- export type { Provider };
8
- export { Providers };
package/dist/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export { run } from "@oclif/core";
@@ -1,2 +0,0 @@
1
- type ObjectValues<T extends Record<string, unknown>> = T[keyof T];
2
- export type { ObjectValues };