@relkit/deploy-pulumi 0.0.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/LICENSE +21 -0
- package/README.md +5 -0
- package/dist/aws-program-environment.d.ts +12 -0
- package/dist/aws-program-environment.d.ts.map +1 -0
- package/dist/aws-program-environment.js +73 -0
- package/dist/aws-program-environment.js.map +1 -0
- package/dist/aws-program-support.d.ts +10 -0
- package/dist/aws-program-support.d.ts.map +1 -0
- package/dist/aws-program-support.js +111 -0
- package/dist/aws-program-support.js.map +1 -0
- package/dist/aws-program.d.ts +33 -0
- package/dist/aws-program.d.ts.map +1 -0
- package/dist/aws-program.js +92 -0
- package/dist/aws-program.js.map +1 -0
- package/dist/events-report.d.ts +8 -0
- package/dist/events-report.d.ts.map +1 -0
- package/dist/events-report.js +72 -0
- package/dist/events-report.js.map +1 -0
- package/dist/events-support.d.ts +22 -0
- package/dist/events-support.d.ts.map +1 -0
- package/dist/events-support.js +105 -0
- package/dist/events-support.js.map +1 -0
- package/dist/events-types.d.ts +56 -0
- package/dist/events-types.d.ts.map +1 -0
- package/dist/events-types.js +2 -0
- package/dist/events-types.js.map +1 -0
- package/dist/events.d.ts +19 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +103 -0
- package/dist/events.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/program-support.d.ts +13 -0
- package/dist/program-support.d.ts.map +1 -0
- package/dist/program-support.js +98 -0
- package/dist/program-support.js.map +1 -0
- package/dist/program.d.ts +27 -0
- package/dist/program.d.ts.map +1 -0
- package/dist/program.js +95 -0
- package/dist/program.js.map +1 -0
- package/dist/workspace.d.ts +43 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +127 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { LocalWorkspace, Stack, type ConfigMap, type PulumiCommand, type PulumiFn } from "@pulumi/pulumi/automation";
|
|
2
|
+
export declare const PULUMI_CLOUD_BACKEND_URL: "https://api.pulumi.com";
|
|
3
|
+
export type PulumiBackendKind = "cloud" | "object-storage" | "local";
|
|
4
|
+
export type PulumiStackMode = "create" | "select" | "create-or-select";
|
|
5
|
+
export interface PulumiBackend {
|
|
6
|
+
readonly kind: PulumiBackendKind;
|
|
7
|
+
readonly url?: string;
|
|
8
|
+
readonly directory?: string;
|
|
9
|
+
}
|
|
10
|
+
export type ResolvedPulumiBackend = {
|
|
11
|
+
readonly kind: PulumiBackendKind;
|
|
12
|
+
readonly url: string;
|
|
13
|
+
};
|
|
14
|
+
export interface PulumiWorkspaceOptions {
|
|
15
|
+
readonly projectName: string;
|
|
16
|
+
readonly stackName: string;
|
|
17
|
+
readonly workDir?: string;
|
|
18
|
+
readonly backend?: PulumiBackend;
|
|
19
|
+
readonly mode?: PulumiStackMode;
|
|
20
|
+
readonly config?: ConfigMap;
|
|
21
|
+
readonly envVars?: Readonly<Record<string, string>>;
|
|
22
|
+
readonly pulumiHome?: string;
|
|
23
|
+
readonly pulumiCommand?: PulumiCommand;
|
|
24
|
+
readonly program?: PulumiFn;
|
|
25
|
+
readonly secretsProvider?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface PulumiWorkspaceHandle {
|
|
28
|
+
readonly workspace: LocalWorkspace;
|
|
29
|
+
readonly stack: Stack;
|
|
30
|
+
readonly projectName: string;
|
|
31
|
+
readonly stackName: string;
|
|
32
|
+
readonly workDir: string;
|
|
33
|
+
readonly backend: ResolvedPulumiBackend;
|
|
34
|
+
}
|
|
35
|
+
export declare class PulumiWorkspaceConfigurationError extends Error {
|
|
36
|
+
readonly code: "RELKIT_PULUMI_WORKSPACE_INVALID";
|
|
37
|
+
constructor(message: string);
|
|
38
|
+
}
|
|
39
|
+
/** Resolves a supported Pulumi backend without creating a second state store. */
|
|
40
|
+
export declare function resolvePulumiBackend(backend?: PulumiBackend, workDir?: string): ResolvedPulumiBackend;
|
|
41
|
+
/** Creates/selects one explicit Pulumi stack and delegates persistence to Pulumi. */
|
|
42
|
+
export declare function createPulumiWorkspace(options: PulumiWorkspaceOptions): Promise<PulumiWorkspaceHandle>;
|
|
43
|
+
//# sourceMappingURL=workspace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,cAAc,EACd,KAAK,EACL,KAAK,SAAS,EAEd,KAAK,aAAa,EAClB,KAAK,QAAQ,EACd,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,wBAAwB,EAAG,wBAAiC,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,gBAAgB,GAAG,OAAO,CAAC;AACrE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,kBAAkB,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,qBAAqB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/F,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;CACzC;AAED,qBAAa,iCAAkC,SAAQ,KAAK;IAC1D,QAAQ,CAAC,IAAI,EAAG,iCAAiC,CAAU;gBAE/C,OAAO,EAAE,MAAM;CAI5B;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAClC,OAAO,GAAE,aAAiC,EAC1C,OAAO,SAAgB,GACtB,qBAAqB,CAcvB;AAED,qFAAqF;AACrF,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAoChC"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { mkdtemp, mkdir } from "node:fs/promises";
|
|
2
|
+
import { tmpdir } from "node:os";
|
|
3
|
+
import { join, resolve } from "node:path";
|
|
4
|
+
import { pathToFileURL } from "node:url";
|
|
5
|
+
import { LocalWorkspace, Stack, } from "@pulumi/pulumi/automation";
|
|
6
|
+
export const PULUMI_CLOUD_BACKEND_URL = "https://api.pulumi.com";
|
|
7
|
+
export class PulumiWorkspaceConfigurationError extends Error {
|
|
8
|
+
code = "RELKIT_PULUMI_WORKSPACE_INVALID";
|
|
9
|
+
constructor(message) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.name = "PulumiWorkspaceConfigurationError";
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/** Resolves a supported Pulumi backend without creating a second state store. */
|
|
15
|
+
export function resolvePulumiBackend(backend = { kind: "cloud" }, workDir = process.cwd()) {
|
|
16
|
+
const root = resolve(workDir);
|
|
17
|
+
if (backend.kind === "cloud")
|
|
18
|
+
return { kind: "cloud", url: cloudUrl(backend.url ?? PULUMI_CLOUD_BACKEND_URL) };
|
|
19
|
+
if (backend.kind === "object-storage")
|
|
20
|
+
return { kind: "object-storage", url: objectStorageUrl(backend.url) };
|
|
21
|
+
if (backend.kind === "local") {
|
|
22
|
+
const directory = backend.directory === undefined
|
|
23
|
+
? join(root, ".pulumi")
|
|
24
|
+
: resolve(root, nonEmpty(backend.directory, "local backend directory"));
|
|
25
|
+
return { kind: "local", url: pathToFileURL(directory).href };
|
|
26
|
+
}
|
|
27
|
+
throw new PulumiWorkspaceConfigurationError("Unsupported Pulumi backend kind.");
|
|
28
|
+
}
|
|
29
|
+
/** Creates/selects one explicit Pulumi stack and delegates persistence to Pulumi. */
|
|
30
|
+
export async function createPulumiWorkspace(options) {
|
|
31
|
+
const projectName = projectId(options.projectName);
|
|
32
|
+
const stackName = stackId(options.stackName);
|
|
33
|
+
const workDir = await workspaceDirectory(options.workDir);
|
|
34
|
+
const backend = resolvePulumiBackend(options.backend, workDir);
|
|
35
|
+
const mode = options.mode ?? "create-or-select";
|
|
36
|
+
const projectSettings = {
|
|
37
|
+
name: projectName,
|
|
38
|
+
runtime: "nodejs",
|
|
39
|
+
main: ".",
|
|
40
|
+
backend: { url: backend.url },
|
|
41
|
+
};
|
|
42
|
+
const workspaceOptions = {
|
|
43
|
+
workDir,
|
|
44
|
+
...(mode === "select" ? {} : { projectSettings }),
|
|
45
|
+
...(options.program === undefined ? {} : { program: options.program }),
|
|
46
|
+
...(options.pulumiCommand === undefined ? {} : { pulumiCommand: options.pulumiCommand }),
|
|
47
|
+
...(options.secretsProvider === undefined ? {} : { secretsProvider: options.secretsProvider }),
|
|
48
|
+
...(options.pulumiHome === undefined
|
|
49
|
+
? backend.kind === "local"
|
|
50
|
+
? { pulumiHome: join(workDir, ".pulumi-home") }
|
|
51
|
+
: {}
|
|
52
|
+
: { pulumiHome: resolve(workDir, options.pulumiHome) }),
|
|
53
|
+
...(options.envVars === undefined ? {} : { envVars: { ...options.envVars } }),
|
|
54
|
+
};
|
|
55
|
+
const workspace = await LocalWorkspace.create(workspaceOptions);
|
|
56
|
+
if (mode === "select")
|
|
57
|
+
await assertProject(workspace, projectName, backend);
|
|
58
|
+
const stack = mode === "create"
|
|
59
|
+
? await Stack.create(stackName, workspace)
|
|
60
|
+
: mode === "select"
|
|
61
|
+
? await Stack.select(stackName, workspace)
|
|
62
|
+
: await Stack.createOrSelect(stackName, workspace);
|
|
63
|
+
if (options.config !== undefined && Object.keys(options.config).length > 0)
|
|
64
|
+
await stack.setAllConfig(options.config);
|
|
65
|
+
return Object.freeze({ workspace, stack, projectName, stackName, workDir, backend });
|
|
66
|
+
}
|
|
67
|
+
async function workspaceDirectory(directory) {
|
|
68
|
+
if (directory !== undefined && directory.trim() === "")
|
|
69
|
+
throw new PulumiWorkspaceConfigurationError("Pulumi workDir must not be empty.");
|
|
70
|
+
const path = directory === undefined ? await mkdtemp(join(tmpdir(), "relkit-pulumi-")) : resolve(directory);
|
|
71
|
+
await mkdir(path, { recursive: true });
|
|
72
|
+
return path;
|
|
73
|
+
}
|
|
74
|
+
async function assertProject(workspace, projectName, backend) {
|
|
75
|
+
const settings = await workspace.projectSettings();
|
|
76
|
+
if (settings.name !== projectName)
|
|
77
|
+
throw new PulumiWorkspaceConfigurationError("Pulumi project name does not match the requested project.");
|
|
78
|
+
const configured = settings.backend?.url ?? PULUMI_CLOUD_BACKEND_URL;
|
|
79
|
+
if (configured.replace(/\/$/, "") !== backend.url)
|
|
80
|
+
throw new PulumiWorkspaceConfigurationError("Pulumi project backend does not match the requested backend.");
|
|
81
|
+
}
|
|
82
|
+
function projectId(value) {
|
|
83
|
+
const normalized = value
|
|
84
|
+
.trim()
|
|
85
|
+
.toLowerCase()
|
|
86
|
+
.replace(/[^a-z0-9_-]+/g, "-")
|
|
87
|
+
.replace(/^-+|-+$/g, "");
|
|
88
|
+
return nonEmpty(normalized, "projectName");
|
|
89
|
+
}
|
|
90
|
+
function stackId(value) {
|
|
91
|
+
const normalized = nonEmpty(value.trim(), "stackName");
|
|
92
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9._/-]*$/.test(normalized) || normalized.includes("\\"))
|
|
93
|
+
throw new PulumiWorkspaceConfigurationError("stackName contains unsupported characters.");
|
|
94
|
+
return normalized;
|
|
95
|
+
}
|
|
96
|
+
function cloudUrl(value) {
|
|
97
|
+
const url = parseUrl(value, "https:", "Pulumi Cloud");
|
|
98
|
+
if (url.hostname !== "api.pulumi.com" || url.pathname !== "/" || url.search || url.hash)
|
|
99
|
+
throw new PulumiWorkspaceConfigurationError("Pulumi Cloud backend must use api.pulumi.com.");
|
|
100
|
+
return url.origin;
|
|
101
|
+
}
|
|
102
|
+
function objectStorageUrl(value) {
|
|
103
|
+
const url = parseUrl(value, ["s3:", "azblob:", "gs:"], "object-storage");
|
|
104
|
+
if (url.username || url.password || !url.hostname)
|
|
105
|
+
throw new PulumiWorkspaceConfigurationError("Object-storage backend URLs must not contain credentials.");
|
|
106
|
+
return url.toString().replace(/\/$/, "");
|
|
107
|
+
}
|
|
108
|
+
function parseUrl(value, protocols, label) {
|
|
109
|
+
const input = nonEmpty(value ?? "", `${label} backend URL`);
|
|
110
|
+
let url;
|
|
111
|
+
try {
|
|
112
|
+
url = new URL(input);
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
throw new PulumiWorkspaceConfigurationError(`Invalid ${label} backend URL.`);
|
|
116
|
+
}
|
|
117
|
+
const allowed = Array.isArray(protocols) ? protocols : [protocols];
|
|
118
|
+
if (!allowed.includes(url.protocol))
|
|
119
|
+
throw new PulumiWorkspaceConfigurationError(`Unsupported ${label} backend URL scheme.`);
|
|
120
|
+
return url;
|
|
121
|
+
}
|
|
122
|
+
function nonEmpty(value, label) {
|
|
123
|
+
if (value.length === 0)
|
|
124
|
+
throw new PulumiWorkspaceConfigurationError(`${label} must not be empty.`);
|
|
125
|
+
return value;
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=workspace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@relkit/deploy-pulumi",
|
|
3
|
+
"version": "0.0.0",
|
|
4
|
+
"description": "Unsupported internal Pulumi deployment engine for RELKIT; use @relkit/cli.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "https://github.com/rel-kit/relkit.git",
|
|
9
|
+
"directory": "packages/deploy-pulumi"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://github.com/rel-kit/relkit#readme",
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/rel-kit/relkit/issues"
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist"
|
|
17
|
+
],
|
|
18
|
+
"publishConfig": {
|
|
19
|
+
"access": "public"
|
|
20
|
+
},
|
|
21
|
+
"engines": {
|
|
22
|
+
"bun": ">=1.3.10"
|
|
23
|
+
},
|
|
24
|
+
"type": "module",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"import": "./dist/index.js"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@pulumi/aws": "7.42.0",
|
|
33
|
+
"@relkit/cloud-aws": "0.0.0",
|
|
34
|
+
"@pulumi/pulumi": "3.258.0",
|
|
35
|
+
"@relkit/contracts": "0.0.0",
|
|
36
|
+
"@relkit/deploy": "0.0.0",
|
|
37
|
+
"@relkit/observability": "0.0.0",
|
|
38
|
+
"@relkit/runtime-effect": "0.0.0",
|
|
39
|
+
"effect": "4.0.0-beta.107"
|
|
40
|
+
},
|
|
41
|
+
"scripts": {
|
|
42
|
+
"build": "tsc -b",
|
|
43
|
+
"check": "tsc -b --pretty false",
|
|
44
|
+
"typecheck": "tsc -b --pretty false"
|
|
45
|
+
}
|
|
46
|
+
}
|