@fireproof/core-cli 0.24.15 → 0.24.16
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/build-cmd.test.js +1 -1
- package/build-cmd.test.js.map +1 -1
- package/cli-ctx.d.ts +6 -0
- package/cli-ctx.js +2 -0
- package/cli-ctx.js.map +1 -0
- package/cmd-evento.d.ts +24 -0
- package/cmd-evento.js +85 -0
- package/cmd-evento.js.map +1 -0
- package/{build-cmd.d.ts → cmds/build-cmd.d.ts} +41 -4
- package/{build-cmd.js → cmds/build-cmd.js} +211 -152
- package/cmds/build-cmd.js.map +1 -0
- package/{cloud-token-key-cmd.d.ts → cmds/cloud-token-key-cmd.d.ts} +20 -4
- package/cmds/cloud-token-key-cmd.js +114 -0
- package/cmds/cloud-token-key-cmd.js.map +1 -0
- package/cmds/dependabot-cmd.d.ts +33 -0
- package/cmds/dependabot-cmd.js +157 -0
- package/cmds/dependabot-cmd.js.map +1 -0
- package/cmds/device-id-cmd.d.ts +248 -0
- package/cmds/device-id-cmd.js +762 -0
- package/cmds/device-id-cmd.js.map +1 -0
- package/cmds/index.d.ts +12 -0
- package/cmds/index.js +13 -0
- package/cmds/index.js.map +1 -0
- package/{pre-signed-url.d.ts → cmds/pre-signed-url.d.ts} +26 -4
- package/{pre-signed-url.js → cmds/pre-signed-url.js} +63 -22
- package/cmds/pre-signed-url.js.map +1 -0
- package/cmds/retry-cmd.d.ts +31 -0
- package/cmds/retry-cmd.js +156 -0
- package/cmds/retry-cmd.js.map +1 -0
- package/{set-scripts-cmd.d.ts → cmds/set-scripts-cmd.d.ts} +40 -7
- package/cmds/set-scripts-cmd.js +213 -0
- package/cmds/set-scripts-cmd.js.map +1 -0
- package/cmds/test-container-cmd.d.ts +135 -0
- package/cmds/test-container-cmd.js +440 -0
- package/cmds/test-container-cmd.js.map +1 -0
- package/{tsc-cmd.d.ts → cmds/tsc-cmd.d.ts} +19 -3
- package/cmds/tsc-cmd.js +75 -0
- package/cmds/tsc-cmd.js.map +1 -0
- package/cmds/update-deps-cmd.d.ts +33 -0
- package/cmds/update-deps-cmd.js +194 -0
- package/cmds/update-deps-cmd.js.map +1 -0
- package/{well-known-cmd.d.ts → cmds/well-known-cmd.d.ts} +24 -4
- package/cmds/well-known-cmd.js +154 -0
- package/cmds/well-known-cmd.js.map +1 -0
- package/cmds/write-env-cmd.d.ts +43 -0
- package/cmds/write-env-cmd.js +145 -0
- package/cmds/write-env-cmd.js.map +1 -0
- package/create-cli-stream.d.ts +10 -0
- package/create-cli-stream.js +34 -0
- package/create-cli-stream.js.map +1 -0
- package/evento-test-helper.d.ts +11 -0
- package/evento-test-helper.js +40 -0
- package/evento-test-helper.js.map +1 -0
- package/evento.test.d.ts +1 -0
- package/evento.test.js +122 -0
- package/evento.test.js.map +1 -0
- package/index.d.ts +5 -0
- package/index.js +6 -0
- package/index.js.map +1 -0
- package/main.js +130 -31
- package/main.js.map +1 -1
- package/package.json +9 -8
- package/run.js +0 -1
- package/version-pinner.d.ts +1 -1
- package/build-cmd.js.map +0 -1
- package/cloud-token-key-cmd.js +0 -73
- package/cloud-token-key-cmd.js.map +0 -1
- package/dependabot-cmd.d.ts +0 -16
- package/dependabot-cmd.js +0 -102
- package/dependabot-cmd.js.map +0 -1
- package/device-id-cmd.d.ts +0 -150
- package/device-id-cmd.js +0 -576
- package/device-id-cmd.js.map +0 -1
- package/pre-signed-url.js.map +0 -1
- package/retry-cmd.d.ts +0 -14
- package/retry-cmd.js +0 -96
- package/retry-cmd.js.map +0 -1
- package/set-scripts-cmd.js +0 -155
- package/set-scripts-cmd.js.map +0 -1
- package/test-container-cmd.d.ts +0 -82
- package/test-container-cmd.js +0 -332
- package/test-container-cmd.js.map +0 -1
- package/tsc-cmd.js +0 -39
- package/tsc-cmd.js.map +0 -1
- package/update-deps-cmd.d.ts +0 -16
- package/update-deps-cmd.js +0 -147
- package/update-deps-cmd.js.map +0 -1
- package/well-known-cmd.js +0 -111
- package/well-known-cmd.js.map +0 -1
- package/write-env-cmd.d.ts +0 -23
- package/write-env-cmd.js +0 -104
- package/write-env-cmd.js.map +0 -1
|
@@ -0,0 +1,440 @@
|
|
|
1
|
+
import { command, subcommands, option, string, flag } from "cmd-ts";
|
|
2
|
+
import { $ } from "zx";
|
|
3
|
+
import { Result, Option } from "@adviser/cement";
|
|
4
|
+
import { type } from "arktype";
|
|
5
|
+
import { sendMsg, sendProgress } from "../cmd-evento.js";
|
|
6
|
+
import fs from "fs-extra";
|
|
7
|
+
async function getPackageVersion(ctx, packageName) {
|
|
8
|
+
try {
|
|
9
|
+
const result = await $ `pnpm why ${packageName} --json`;
|
|
10
|
+
const data = JSON.parse(result.stdout);
|
|
11
|
+
if (Array.isArray(data) && data.length > 0) {
|
|
12
|
+
const firstEntry = data[0];
|
|
13
|
+
if (firstEntry.devDependencies && firstEntry.devDependencies[packageName]) {
|
|
14
|
+
return firstEntry.devDependencies[packageName].version;
|
|
15
|
+
}
|
|
16
|
+
if (firstEntry.dependencies && firstEntry.dependencies[packageName]) {
|
|
17
|
+
return firstEntry.dependencies[packageName].version;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
await sendProgress(ctx, "warn", `Failed to get ${packageName} version: ${e instanceof Error ? e.message : String(e)}`);
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export const ReqTestContainerBuild = type({
|
|
28
|
+
type: "'core-cli.test-container-build'",
|
|
29
|
+
});
|
|
30
|
+
export const ResTestContainerBuild = type({
|
|
31
|
+
type: "'core-cli.res-test-container-build'",
|
|
32
|
+
output: "string",
|
|
33
|
+
});
|
|
34
|
+
export function isResTestContainerBuild(u) {
|
|
35
|
+
return !(ResTestContainerBuild(u) instanceof type.errors);
|
|
36
|
+
}
|
|
37
|
+
export const testContainerBuildEvento = {
|
|
38
|
+
hash: "core-cli.test-container-build",
|
|
39
|
+
validate: (ctx) => {
|
|
40
|
+
if (!(ReqTestContainerBuild(ctx.enRequest) instanceof type.errors)) {
|
|
41
|
+
return Promise.resolve(Result.Ok(Option.Some(ctx.enRequest)));
|
|
42
|
+
}
|
|
43
|
+
return Promise.resolve(Result.Ok(Option.None()));
|
|
44
|
+
},
|
|
45
|
+
handle: async (ctx) => {
|
|
46
|
+
$.verbose = true;
|
|
47
|
+
await sendProgress(ctx, "info", "Installing required packages...");
|
|
48
|
+
await $ `apt-get update`;
|
|
49
|
+
await $ `apt-get install -y ca-certificates curl gnupg lsb-release jq rsync`;
|
|
50
|
+
await sendProgress(ctx, "info", "Adding Docker's official GPG key...");
|
|
51
|
+
await $ `install -m 0755 -d /etc/apt/keyrings`;
|
|
52
|
+
await $ `curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg`;
|
|
53
|
+
await $ `chmod a+r /etc/apt/keyrings/docker.gpg`;
|
|
54
|
+
await sendProgress(ctx, "info", "Setting up Docker repository...");
|
|
55
|
+
await $ `bash -c 'echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo \\"$VERSION_CODENAME\\") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null'`;
|
|
56
|
+
await sendProgress(ctx, "info", "Installing Docker Compose plugin...");
|
|
57
|
+
await $ `apt-get update`;
|
|
58
|
+
await $ `apt-get install -y docker-ce-cli docker-compose-plugin`;
|
|
59
|
+
await sendProgress(ctx, "info", "Verifying Docker installation...");
|
|
60
|
+
await $ `docker ps`;
|
|
61
|
+
await $ `docker compose version`;
|
|
62
|
+
await sendProgress(ctx, "info", "Checking Playwright version...");
|
|
63
|
+
await $ `pnpm exec playwright --version`;
|
|
64
|
+
await sendProgress(ctx, "info", "Configuring git safe directory...");
|
|
65
|
+
await $ `git config --global --add safe.directory ${process.cwd()}`;
|
|
66
|
+
return sendMsg(ctx, {
|
|
67
|
+
type: "core-cli.res-test-container-build",
|
|
68
|
+
output: "Test container build completed successfully!",
|
|
69
|
+
});
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
export const ReqTestContainerTemplate = type({
|
|
73
|
+
type: "'core-cli.test-container-template'",
|
|
74
|
+
baseImage: "string",
|
|
75
|
+
tag: "string",
|
|
76
|
+
tagSuffix: "string",
|
|
77
|
+
packageName: "string",
|
|
78
|
+
output: "string",
|
|
79
|
+
publish: "boolean",
|
|
80
|
+
repoUrl: "string",
|
|
81
|
+
token: "string",
|
|
82
|
+
actor: "string",
|
|
83
|
+
imageName: "string",
|
|
84
|
+
imageTag: "string",
|
|
85
|
+
context: "string",
|
|
86
|
+
});
|
|
87
|
+
export const ResTestContainerTemplate = type({
|
|
88
|
+
type: "'core-cli.res-test-container-template'",
|
|
89
|
+
output: "string",
|
|
90
|
+
});
|
|
91
|
+
export function isResTestContainerTemplate(u) {
|
|
92
|
+
return !(ResTestContainerTemplate(u) instanceof type.errors);
|
|
93
|
+
}
|
|
94
|
+
export const testContainerTemplateEvento = {
|
|
95
|
+
hash: "core-cli.test-container-template",
|
|
96
|
+
validate: (ctx) => {
|
|
97
|
+
if (!(ReqTestContainerTemplate(ctx.enRequest) instanceof type.errors)) {
|
|
98
|
+
return Promise.resolve(Result.Ok(Option.Some(ctx.enRequest)));
|
|
99
|
+
}
|
|
100
|
+
return Promise.resolve(Result.Ok(Option.None()));
|
|
101
|
+
},
|
|
102
|
+
handle: async (ctx) => {
|
|
103
|
+
const args = ctx.validated;
|
|
104
|
+
$.verbose = true;
|
|
105
|
+
let version = args.tag;
|
|
106
|
+
let detectedVersion;
|
|
107
|
+
if (!version) {
|
|
108
|
+
detectedVersion = await getPackageVersion(ctx, args.packageName);
|
|
109
|
+
if (!detectedVersion) {
|
|
110
|
+
return Result.Err(`Could not detect version for package ${args.packageName}. Please specify --tag explicitly.`);
|
|
111
|
+
}
|
|
112
|
+
version = `v${detectedVersion}`;
|
|
113
|
+
await sendProgress(ctx, "info", `Detected ${args.packageName} version: ${detectedVersion}`);
|
|
114
|
+
}
|
|
115
|
+
const fullTag = args.tagSuffix ? `${version}-${args.tagSuffix}` : version;
|
|
116
|
+
const fullImageName = `${args.baseImage}:${fullTag}`;
|
|
117
|
+
const dockerfile = `FROM ${fullImageName}
|
|
118
|
+
|
|
119
|
+
# Install required packages
|
|
120
|
+
RUN apt-get update && \\
|
|
121
|
+
apt-get install -y ca-certificates curl gnupg lsb-release jq rsync && \\
|
|
122
|
+
rm -rf /var/lib/apt/lists/*
|
|
123
|
+
|
|
124
|
+
# Add Docker's official GPG key
|
|
125
|
+
RUN install -m 0755 -d /etc/apt/keyrings && \\
|
|
126
|
+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg && \\
|
|
127
|
+
chmod a+r /etc/apt/keyrings/docker.gpg
|
|
128
|
+
|
|
129
|
+
# Set up Docker repository
|
|
130
|
+
RUN echo \\
|
|
131
|
+
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \\
|
|
132
|
+
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \\
|
|
133
|
+
tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
134
|
+
|
|
135
|
+
# Install Docker Compose plugin
|
|
136
|
+
RUN apt-get update && \\
|
|
137
|
+
apt-get install -y docker-ce-cli docker-compose-plugin && \\
|
|
138
|
+
rm -rf /var/lib/apt/lists/*
|
|
139
|
+
|
|
140
|
+
# Install pnpm
|
|
141
|
+
RUN npm install -g pnpm
|
|
142
|
+
|
|
143
|
+
# Set working directory
|
|
144
|
+
WORKDIR /workspace
|
|
145
|
+
|
|
146
|
+
# Default command
|
|
147
|
+
CMD ["/bin/bash"]
|
|
148
|
+
`;
|
|
149
|
+
await fs.writeFile(args.output, dockerfile);
|
|
150
|
+
await sendProgress(ctx, "info", `Dockerfile generated at: ${args.output}`);
|
|
151
|
+
await sendProgress(ctx, "info", `Base image: ${fullImageName}`);
|
|
152
|
+
if (args.publish) {
|
|
153
|
+
if (!args.repoUrl) {
|
|
154
|
+
return Result.Err("Repository URL is required for publishing. Provide via --repo-url or GITHUB_REPOSITORY environment variable.");
|
|
155
|
+
}
|
|
156
|
+
if (!args.token) {
|
|
157
|
+
return Result.Err("GitHub token is required for publishing. Provide via --token or GITHUB_TOKEN environment variable.");
|
|
158
|
+
}
|
|
159
|
+
if (!args.actor) {
|
|
160
|
+
return Result.Err("GitHub actor is required for publishing. Provide via --actor or GITHUB_ACTOR environment variable.");
|
|
161
|
+
}
|
|
162
|
+
const fullImagePath = `${args.repoUrl.toLowerCase()}/${args.actor}/${args.imageName}`;
|
|
163
|
+
const publishTag = detectedVersion ? detectedVersion : args.imageTag;
|
|
164
|
+
const publishImageTag = `${fullImagePath}:${publishTag}`;
|
|
165
|
+
await sendProgress(ctx, "info", `Checking if image already exists: ${publishImageTag}`);
|
|
166
|
+
await sendProgress(ctx, "info", "Logging in to GitHub Container Registry...");
|
|
167
|
+
await $ `echo ${args.token} | docker login ghcr.io -u ${args.actor} --password-stdin`;
|
|
168
|
+
try {
|
|
169
|
+
await $ `docker manifest inspect ${publishImageTag}`;
|
|
170
|
+
return sendMsg(ctx, {
|
|
171
|
+
type: "core-cli.res-test-container-template",
|
|
172
|
+
output: `Image ${publishImageTag} already exists. Skipping build and push.`,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
catch (e) {
|
|
176
|
+
await sendProgress(ctx, "info", `Image ${publishImageTag} does not exist. Proceeding with build and push.`);
|
|
177
|
+
}
|
|
178
|
+
await sendProgress(ctx, "info", `Building and publishing Docker image: ${publishImageTag}`);
|
|
179
|
+
await sendProgress(ctx, "info", `Using Dockerfile: ${args.output}`);
|
|
180
|
+
await sendProgress(ctx, "info", `Build context: ${args.context}`);
|
|
181
|
+
await sendProgress(ctx, "info", "Building and pushing Docker image with buildx...");
|
|
182
|
+
await $ `docker buildx build --push -t ${publishImageTag} -f ${args.output} ${args.context}`;
|
|
183
|
+
}
|
|
184
|
+
return sendMsg(ctx, {
|
|
185
|
+
type: "core-cli.res-test-container-template",
|
|
186
|
+
output: `Dockerfile generated at: ${args.output}, Base image: ${fullImageName}`,
|
|
187
|
+
});
|
|
188
|
+
},
|
|
189
|
+
};
|
|
190
|
+
export const ReqTestContainerPublish = type({
|
|
191
|
+
type: "'core-cli.test-container-publish'",
|
|
192
|
+
repoUrl: "string",
|
|
193
|
+
token: "string",
|
|
194
|
+
actor: "string",
|
|
195
|
+
tag: "string",
|
|
196
|
+
dockerfile: "string",
|
|
197
|
+
context: "string",
|
|
198
|
+
});
|
|
199
|
+
export const ResTestContainerPublish = type({
|
|
200
|
+
type: "'core-cli.res-test-container-publish'",
|
|
201
|
+
output: "string",
|
|
202
|
+
});
|
|
203
|
+
export function isResTestContainerPublish(u) {
|
|
204
|
+
return !(ResTestContainerPublish(u) instanceof type.errors);
|
|
205
|
+
}
|
|
206
|
+
export const testContainerPublishEvento = {
|
|
207
|
+
hash: "core-cli.test-container-publish",
|
|
208
|
+
validate: (ctx) => {
|
|
209
|
+
if (!(ReqTestContainerPublish(ctx.enRequest) instanceof type.errors)) {
|
|
210
|
+
return Promise.resolve(Result.Ok(Option.Some(ctx.enRequest)));
|
|
211
|
+
}
|
|
212
|
+
return Promise.resolve(Result.Ok(Option.None()));
|
|
213
|
+
},
|
|
214
|
+
handle: async (ctx) => {
|
|
215
|
+
const args = ctx.validated;
|
|
216
|
+
$.verbose = true;
|
|
217
|
+
if (!args.repoUrl) {
|
|
218
|
+
return Result.Err("Repository URL is required. Provide via --repo-url or GITHUB_REPOSITORY environment variable.");
|
|
219
|
+
}
|
|
220
|
+
if (!args.token) {
|
|
221
|
+
return Result.Err("GitHub token is required. Provide via --token or GITHUB_TOKEN environment variable.");
|
|
222
|
+
}
|
|
223
|
+
if (!args.actor) {
|
|
224
|
+
return Result.Err("GitHub actor is required. Provide via --actor or GITHUB_ACTOR environment variable.");
|
|
225
|
+
}
|
|
226
|
+
const imageName = `ghcr.io/${args.repoUrl.toLowerCase()}`;
|
|
227
|
+
const imageTag = `${imageName}:${args.tag}`;
|
|
228
|
+
await sendProgress(ctx, "info", `Building Docker image: ${imageTag}`);
|
|
229
|
+
await sendProgress(ctx, "info", `Using Dockerfile: ${args.dockerfile}`);
|
|
230
|
+
await sendProgress(ctx, "info", `Build context: ${args.context}`);
|
|
231
|
+
await sendProgress(ctx, "info", "Logging in to GitHub Container Registry...");
|
|
232
|
+
await $ `echo ${args.token} | docker login ghcr.io -u ${args.actor} --password-stdin`;
|
|
233
|
+
await sendProgress(ctx, "info", "Building and pushing Docker image with buildx...");
|
|
234
|
+
await $ `docker buildx build --push -t ${imageTag} -f ${args.dockerfile} ${args.context}`;
|
|
235
|
+
return sendMsg(ctx, {
|
|
236
|
+
type: "core-cli.res-test-container-publish",
|
|
237
|
+
output: `Successfully published ${imageTag}`,
|
|
238
|
+
});
|
|
239
|
+
},
|
|
240
|
+
};
|
|
241
|
+
function testContainerBuildCmd(ctx) {
|
|
242
|
+
const cmd = command({
|
|
243
|
+
name: "build",
|
|
244
|
+
description: "Build test container with Docker and Playwright",
|
|
245
|
+
version: "1.0.0",
|
|
246
|
+
args: {},
|
|
247
|
+
handler: ctx.cliStream.enqueue(() => {
|
|
248
|
+
return {
|
|
249
|
+
type: "core-cli.test-container-build",
|
|
250
|
+
};
|
|
251
|
+
}),
|
|
252
|
+
});
|
|
253
|
+
return cmd;
|
|
254
|
+
}
|
|
255
|
+
function testContainerTemplateCmd(ctx) {
|
|
256
|
+
const cmd = command({
|
|
257
|
+
name: "template",
|
|
258
|
+
description: "Generate Dockerfile template for test container",
|
|
259
|
+
version: "1.0.0",
|
|
260
|
+
args: {
|
|
261
|
+
baseImage: option({
|
|
262
|
+
long: "base-image",
|
|
263
|
+
short: "b",
|
|
264
|
+
type: string,
|
|
265
|
+
description: "Base Playwright image (without tag)",
|
|
266
|
+
defaultValue: () => "mcr.microsoft.com/playwright",
|
|
267
|
+
defaultValueIsSerializable: true,
|
|
268
|
+
}),
|
|
269
|
+
tag: option({
|
|
270
|
+
long: "tag",
|
|
271
|
+
short: "t",
|
|
272
|
+
type: string,
|
|
273
|
+
description: "Tag for the base Playwright image (leave empty to auto-detect from pnpm)",
|
|
274
|
+
defaultValue: () => "",
|
|
275
|
+
defaultValueIsSerializable: true,
|
|
276
|
+
}),
|
|
277
|
+
tagSuffix: option({
|
|
278
|
+
long: "tag-suffix",
|
|
279
|
+
short: "s",
|
|
280
|
+
type: string,
|
|
281
|
+
description: "Suffix to append to the tag",
|
|
282
|
+
defaultValue: () => "noble",
|
|
283
|
+
defaultValueIsSerializable: true,
|
|
284
|
+
}),
|
|
285
|
+
packageName: option({
|
|
286
|
+
long: "package-name",
|
|
287
|
+
short: "p",
|
|
288
|
+
type: string,
|
|
289
|
+
description: "Package name to query for version",
|
|
290
|
+
defaultValue: () => "playwright",
|
|
291
|
+
defaultValueIsSerializable: true,
|
|
292
|
+
}),
|
|
293
|
+
output: option({
|
|
294
|
+
long: "output",
|
|
295
|
+
short: "o",
|
|
296
|
+
type: string,
|
|
297
|
+
description: "Output path for Dockerfile",
|
|
298
|
+
defaultValue: () => "./Dockerfile",
|
|
299
|
+
defaultValueIsSerializable: true,
|
|
300
|
+
}),
|
|
301
|
+
publish: flag({
|
|
302
|
+
long: "publish",
|
|
303
|
+
description: "Build and publish the image to ghcr.io after generating template",
|
|
304
|
+
}),
|
|
305
|
+
repoUrl: option({
|
|
306
|
+
long: "repo-url",
|
|
307
|
+
short: "r",
|
|
308
|
+
type: string,
|
|
309
|
+
description: "Full repository URL including registry (e.g., ghcr.io/owner/repo) - required if --publish is used",
|
|
310
|
+
defaultValue: () => (process.env.GITHUB_REPOSITORY ? `ghcr.io/${process.env.GITHUB_REPOSITORY}` : ""),
|
|
311
|
+
defaultValueIsSerializable: true,
|
|
312
|
+
}),
|
|
313
|
+
token: option({
|
|
314
|
+
long: "token",
|
|
315
|
+
short: "k",
|
|
316
|
+
type: string,
|
|
317
|
+
description: "GitHub token for authentication - required if --publish is used",
|
|
318
|
+
defaultValue: () => process.env.GITHUB_TOKEN || "",
|
|
319
|
+
defaultValueIsSerializable: true,
|
|
320
|
+
}),
|
|
321
|
+
actor: option({
|
|
322
|
+
long: "actor",
|
|
323
|
+
short: "a",
|
|
324
|
+
type: string,
|
|
325
|
+
description: "GitHub actor (username) - required if --publish is used",
|
|
326
|
+
defaultValue: () => process.env.GITHUB_ACTOR || "",
|
|
327
|
+
defaultValueIsSerializable: true,
|
|
328
|
+
}),
|
|
329
|
+
imageName: option({
|
|
330
|
+
long: "image-name",
|
|
331
|
+
short: "n",
|
|
332
|
+
type: string,
|
|
333
|
+
description: "Docker image name (e.g., 'test-container' or 'my-app')",
|
|
334
|
+
defaultValue: () => "test-container",
|
|
335
|
+
defaultValueIsSerializable: true,
|
|
336
|
+
}),
|
|
337
|
+
imageTag: option({
|
|
338
|
+
long: "image-tag",
|
|
339
|
+
short: "i",
|
|
340
|
+
type: string,
|
|
341
|
+
description: "Docker image tag for publishing",
|
|
342
|
+
defaultValue: () => "latest",
|
|
343
|
+
defaultValueIsSerializable: true,
|
|
344
|
+
}),
|
|
345
|
+
context: option({
|
|
346
|
+
long: "context",
|
|
347
|
+
short: "c",
|
|
348
|
+
type: string,
|
|
349
|
+
description: "Build context directory",
|
|
350
|
+
defaultValue: () => ".",
|
|
351
|
+
defaultValueIsSerializable: true,
|
|
352
|
+
}),
|
|
353
|
+
},
|
|
354
|
+
handler: ctx.cliStream.enqueue((args) => {
|
|
355
|
+
return {
|
|
356
|
+
type: "core-cli.test-container-template",
|
|
357
|
+
...args,
|
|
358
|
+
};
|
|
359
|
+
}),
|
|
360
|
+
});
|
|
361
|
+
return cmd;
|
|
362
|
+
}
|
|
363
|
+
function testContainerPublishCmd(ctx) {
|
|
364
|
+
const cmd = command({
|
|
365
|
+
name: "publish",
|
|
366
|
+
description: "Build and publish test container to GitHub Container Registry (ghcr.io)",
|
|
367
|
+
version: "1.0.0",
|
|
368
|
+
args: {
|
|
369
|
+
repoUrl: option({
|
|
370
|
+
long: "repo-url",
|
|
371
|
+
short: "r",
|
|
372
|
+
type: string,
|
|
373
|
+
description: "GitHub repository URL (e.g., owner/repo)",
|
|
374
|
+
defaultValue: () => process.env.GITHUB_REPOSITORY || "",
|
|
375
|
+
defaultValueIsSerializable: true,
|
|
376
|
+
}),
|
|
377
|
+
token: option({
|
|
378
|
+
long: "token",
|
|
379
|
+
short: "t",
|
|
380
|
+
type: string,
|
|
381
|
+
description: "GitHub token for authentication",
|
|
382
|
+
defaultValue: () => process.env.GITHUB_TOKEN || "",
|
|
383
|
+
defaultValueIsSerializable: true,
|
|
384
|
+
}),
|
|
385
|
+
actor: option({
|
|
386
|
+
long: "actor",
|
|
387
|
+
short: "a",
|
|
388
|
+
type: string,
|
|
389
|
+
description: "GitHub actor (username)",
|
|
390
|
+
defaultValue: () => process.env.GITHUB_ACTOR || "",
|
|
391
|
+
defaultValueIsSerializable: true,
|
|
392
|
+
}),
|
|
393
|
+
tag: option({
|
|
394
|
+
long: "tag",
|
|
395
|
+
short: "g",
|
|
396
|
+
type: string,
|
|
397
|
+
description: "Docker image tag",
|
|
398
|
+
defaultValue: () => "latest",
|
|
399
|
+
defaultValueIsSerializable: true,
|
|
400
|
+
}),
|
|
401
|
+
dockerfile: option({
|
|
402
|
+
long: "dockerfile",
|
|
403
|
+
short: "f",
|
|
404
|
+
type: string,
|
|
405
|
+
description: "Path to Dockerfile",
|
|
406
|
+
defaultValue: () => "./Dockerfile",
|
|
407
|
+
defaultValueIsSerializable: true,
|
|
408
|
+
}),
|
|
409
|
+
context: option({
|
|
410
|
+
long: "context",
|
|
411
|
+
short: "c",
|
|
412
|
+
type: string,
|
|
413
|
+
description: "Build context directory",
|
|
414
|
+
defaultValue: () => ".",
|
|
415
|
+
defaultValueIsSerializable: true,
|
|
416
|
+
}),
|
|
417
|
+
},
|
|
418
|
+
handler: ctx.cliStream.enqueue((args) => {
|
|
419
|
+
return {
|
|
420
|
+
type: "core-cli.test-container-publish",
|
|
421
|
+
...args,
|
|
422
|
+
};
|
|
423
|
+
}),
|
|
424
|
+
});
|
|
425
|
+
return cmd;
|
|
426
|
+
}
|
|
427
|
+
export function testContainerCmd(ctx) {
|
|
428
|
+
const cmd = subcommands({
|
|
429
|
+
name: "testContainer",
|
|
430
|
+
description: "Test container management for Playwright and Docker",
|
|
431
|
+
version: "1.0.0",
|
|
432
|
+
cmds: {
|
|
433
|
+
template: testContainerTemplateCmd(ctx),
|
|
434
|
+
build: testContainerBuildCmd(ctx),
|
|
435
|
+
publish: testContainerPublishCmd(ctx),
|
|
436
|
+
},
|
|
437
|
+
});
|
|
438
|
+
return cmd;
|
|
439
|
+
}
|
|
440
|
+
//# sourceMappingURL=test-container-cmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-container-cmd.js","sourceRoot":"","sources":["../../jsr/cmds/test-container-cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
import { SuperThis } from "@fireproof/core-types-base";
|
|
2
|
+
import { EventoHandler } from "@adviser/cement";
|
|
3
|
+
import { CliCtx } from "../cli-ctx.js";
|
|
4
|
+
import { WrapCmdTSMsg } from "../cmd-evento.js";
|
|
2
5
|
export declare function handleTsc(args: string[], sthis: SuperThis): Promise<void>;
|
|
3
|
-
export declare
|
|
6
|
+
export declare const ReqTsc: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
7
|
+
type: "core-cli.tsc";
|
|
8
|
+
help: boolean;
|
|
9
|
+
args: string[];
|
|
10
|
+
}, {}>;
|
|
11
|
+
export type ReqTsc = typeof ReqTsc.infer;
|
|
12
|
+
export declare const ResTsc: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
13
|
+
type: "core-cli.res-tsc";
|
|
14
|
+
output: string;
|
|
15
|
+
}, {}>;
|
|
16
|
+
export type ResTsc = typeof ResTsc.infer;
|
|
17
|
+
export declare function isResTsc(u: unknown): u is ResTsc;
|
|
18
|
+
export declare const tscEvento: EventoHandler<WrapCmdTSMsg<unknown>, ReqTsc, ResTsc>;
|
|
19
|
+
export declare function tscCmd(ctx: CliCtx): Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
4
20
|
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
|
|
5
21
|
help: boolean;
|
|
6
22
|
}>>;
|
|
7
23
|
} & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
|
|
8
24
|
help: boolean;
|
|
9
|
-
},
|
|
10
|
-
run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<
|
|
25
|
+
}, never> & {
|
|
26
|
+
run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<never>>;
|
|
11
27
|
} & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned & import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Aliased>;
|
package/cmds/tsc-cmd.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { command, flag } from "cmd-ts";
|
|
2
|
+
import { $, quotePowerShell } from "zx";
|
|
3
|
+
import { Result, Option } from "@adviser/cement";
|
|
4
|
+
import { type } from "arktype";
|
|
5
|
+
import { sendMsg } from "../cmd-evento.js";
|
|
6
|
+
function isPowerShell() {
|
|
7
|
+
const psModulePath = process.env.PSModulePath;
|
|
8
|
+
const psExecutionPolicyPreference = process.env.PSExecutionPolicyPreference;
|
|
9
|
+
return !!(psModulePath || psExecutionPolicyPreference);
|
|
10
|
+
}
|
|
11
|
+
export async function handleTsc(args, sthis) {
|
|
12
|
+
const tsc = sthis.env.get("FP_TSC") ?? "tsgo";
|
|
13
|
+
const cmd = [tsc, ...args];
|
|
14
|
+
console.log(`Using typescript: ${cmd} on ${isPowerShell() ? "PowerShell" : "UnixShell"}`);
|
|
15
|
+
if (isPowerShell()) {
|
|
16
|
+
$.quote = quotePowerShell;
|
|
17
|
+
}
|
|
18
|
+
$.verbose = false;
|
|
19
|
+
const p = $({ stdio: ["inherit", "inherit", "inherit"] }) `${cmd}`;
|
|
20
|
+
await p.catch((err) => {
|
|
21
|
+
process.exit(err.exitCode);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
export const ReqTsc = type({
|
|
25
|
+
type: "'core-cli.tsc'",
|
|
26
|
+
help: "boolean",
|
|
27
|
+
args: "string[]",
|
|
28
|
+
});
|
|
29
|
+
export const ResTsc = type({
|
|
30
|
+
type: "'core-cli.res-tsc'",
|
|
31
|
+
output: "string",
|
|
32
|
+
});
|
|
33
|
+
export function isResTsc(u) {
|
|
34
|
+
return !(ResTsc(u) instanceof type.errors);
|
|
35
|
+
}
|
|
36
|
+
export const tscEvento = {
|
|
37
|
+
hash: "core-cli.tsc",
|
|
38
|
+
validate: (ctx) => {
|
|
39
|
+
if (!(ReqTsc(ctx.enRequest) instanceof type.errors)) {
|
|
40
|
+
return Promise.resolve(Result.Ok(Option.Some(ctx.enRequest)));
|
|
41
|
+
}
|
|
42
|
+
return Promise.resolve(Result.Ok(Option.None()));
|
|
43
|
+
},
|
|
44
|
+
handle: async (ctx) => {
|
|
45
|
+
const cliCtx = ctx.ctx.getOrThrow("cliCtx");
|
|
46
|
+
const req = ctx.validated;
|
|
47
|
+
await handleTsc(req.args, cliCtx.sthis);
|
|
48
|
+
return sendMsg(ctx, {
|
|
49
|
+
type: "core-cli.res-tsc",
|
|
50
|
+
output: "tsc completed",
|
|
51
|
+
});
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
export function tscCmd(ctx) {
|
|
55
|
+
return command({
|
|
56
|
+
name: "tsc or tsgo",
|
|
57
|
+
description: "tsc evolution tsgo",
|
|
58
|
+
args: {
|
|
59
|
+
help: flag({
|
|
60
|
+
long: "help",
|
|
61
|
+
short: "h",
|
|
62
|
+
defaultValue: () => false,
|
|
63
|
+
description: "Show help.",
|
|
64
|
+
}),
|
|
65
|
+
},
|
|
66
|
+
handler: ctx.cliStream.enqueue((args) => {
|
|
67
|
+
return {
|
|
68
|
+
type: "core-cli.tsc",
|
|
69
|
+
...args,
|
|
70
|
+
args: process.argv.slice(3),
|
|
71
|
+
};
|
|
72
|
+
}),
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=tsc-cmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tsc-cmd.js","sourceRoot":"","sources":["../../jsr/cmds/tsc-cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { EventoHandler } from "@adviser/cement";
|
|
2
|
+
import { CliCtx } from "../cli-ctx.js";
|
|
3
|
+
import { WrapCmdTSMsg } from "../cmd-evento.js";
|
|
4
|
+
export declare const ReqUpdateDeps: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
5
|
+
type: "core-cli.update-deps";
|
|
6
|
+
ver: string;
|
|
7
|
+
pkg: string[];
|
|
8
|
+
currentDir: string;
|
|
9
|
+
dryRun: boolean;
|
|
10
|
+
}, {}>;
|
|
11
|
+
export type ReqUpdateDeps = typeof ReqUpdateDeps.infer;
|
|
12
|
+
export declare const ResUpdateDeps: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
13
|
+
type: "core-cli.res-update-deps";
|
|
14
|
+
output: string;
|
|
15
|
+
}, {}>;
|
|
16
|
+
export type ResUpdateDeps = typeof ResUpdateDeps.infer;
|
|
17
|
+
export declare function isResUpdateDeps(u: unknown): u is ResUpdateDeps;
|
|
18
|
+
export declare const updateDepsEvento: EventoHandler<WrapCmdTSMsg<unknown>, ReqUpdateDeps, ResUpdateDeps>;
|
|
19
|
+
export declare function updateDepsCmd(ctx: CliCtx): Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
|
|
20
|
+
parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
|
|
21
|
+
ver: string;
|
|
22
|
+
pkg: string[];
|
|
23
|
+
currentDir: string;
|
|
24
|
+
dryRun: boolean;
|
|
25
|
+
}>>;
|
|
26
|
+
} & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
|
|
27
|
+
ver: string;
|
|
28
|
+
pkg: string[];
|
|
29
|
+
currentDir: string;
|
|
30
|
+
dryRun: boolean;
|
|
31
|
+
}, never> & {
|
|
32
|
+
run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<never>>;
|
|
33
|
+
} & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned & import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Aliased>;
|