@celilo/e2e 0.9.0 → 0.9.2-alpha.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/bin/e2e-bake-management
CHANGED
|
@@ -253,7 +253,7 @@ async function bakeViaPublished(): Promise<void> {
|
|
|
253
253
|
process.stdout.write(' bun add -g (real npm) .. ');
|
|
254
254
|
const t2 = Date.now();
|
|
255
255
|
const add = await dexec(
|
|
256
|
-
'bun add -g @celilo/cli@
|
|
256
|
+
'bun add -g @celilo/cli@latest @celilo/event-bus@latest @celilo/e2e@latest 2>&1',
|
|
257
257
|
);
|
|
258
258
|
if (add.exitCode !== 0) {
|
|
259
259
|
console.log(`✗ exit ${add.exitCode}`);
|
|
@@ -275,7 +275,14 @@ async function bakeViaPublished(): Promise<void> {
|
|
|
275
275
|
|
|
276
276
|
process.stdout.write(' docker commit .......... ');
|
|
277
277
|
const t3 = Date.now();
|
|
278
|
-
|
|
278
|
+
// The vanilla container was started with `sleep infinity`; docker commit
|
|
279
|
+
// persists the running Cmd, so override it back to the management image's
|
|
280
|
+
// real entrypoint (Dockerfile.management: CMD ["/startup.sh"], no
|
|
281
|
+
// ENTRYPOINT). Without this the baked image never runs /startup.sh ->
|
|
282
|
+
// ssh-keys volume stays empty -> fw-main crashloops (ce-um6).
|
|
283
|
+
run(
|
|
284
|
+
`docker commit --change 'CMD ["/startup.sh"]' ${name} celilo-e2e/management:latest`,
|
|
285
|
+
);
|
|
279
286
|
console.log(`✔ ${Math.round((Date.now() - t3) / 1000)}s`);
|
|
280
287
|
} finally {
|
|
281
288
|
process.stdout.write(' removing container ..... ');
|
|
@@ -19,6 +19,12 @@ COPY config/apt/99retries.conf /etc/apt/apt.conf.d/99retries.conf
|
|
|
19
19
|
|
|
20
20
|
RUN apt-get update && apt-get install -y \
|
|
21
21
|
openssh-client \
|
|
22
|
+
# openssh-server: the celilo-bootstrap deb Depends on it (remote-API server).
|
|
23
|
+
# Pre-caching it here keeps the bootstrap-apt foreground `apt install` fast
|
|
24
|
+
# (no download over the bumped Squid path) and mirrors reality — a real
|
|
25
|
+
# management box already runs sshd. The deb still owns the celilo-api account
|
|
26
|
+
# + forced-command authorized_keys; this only pre-stages the package.
|
|
27
|
+
openssh-server \
|
|
22
28
|
ansible \
|
|
23
29
|
iproute2 \
|
|
24
30
|
iputils-ping \
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@celilo/e2e",
|
|
3
|
-
"version": "0.9.0",
|
|
3
|
+
"version": "0.9.2-alpha.0",
|
|
4
4
|
"description": "E2E test infrastructure for Celilo-deployed applications. Provides a simulated internet with DNS hierarchy, ACME server, firewalls, and target machines in Docker.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/index.ts",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"README.md"
|
|
38
38
|
],
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@celilo/cli-display": "
|
|
41
|
-
"@celilo/event-bus": "
|
|
40
|
+
"@celilo/cli-display": "0.1.9-alpha.1",
|
|
41
|
+
"@celilo/event-bus": "0.1.8-alpha.0",
|
|
42
42
|
"yaml": "^2.8.0",
|
|
43
43
|
"zod": "^3.24.1"
|
|
44
44
|
},
|
|
@@ -57,5 +57,6 @@
|
|
|
57
57
|
"type": "git",
|
|
58
58
|
"url": "https://github.com/psbanka/infra",
|
|
59
59
|
"directory": "packages/e2e"
|
|
60
|
-
}
|
|
60
|
+
},
|
|
61
|
+
"gitHead": "8fe2dff30ef6a59a0aed48e5501403e43be8429e"
|
|
61
62
|
}
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
import { execSync } from 'node:child_process';
|
|
33
33
|
import { existsSync, mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
|
|
34
34
|
import { join } from 'node:path';
|
|
35
|
+
import { ensureRegistryServerBundle } from '../src/registry-bundle';
|
|
35
36
|
|
|
36
37
|
const REPO_ROOT = join(import.meta.dir, '..', '..', '..');
|
|
37
38
|
|
|
@@ -187,6 +188,15 @@ function main(): void {
|
|
|
187
188
|
rmSync(destination, { recursive: true, force: true });
|
|
188
189
|
mkdirSync(destination, { recursive: true });
|
|
189
190
|
|
|
191
|
+
// @celilo/e2e's `files[]` ships `registry-server/`, but that directory is a
|
|
192
|
+
// .gitignored build artifact — absent in a fresh checkout, so `bun pm pack`
|
|
193
|
+
// would silently pack an e2e tarball WITHOUT it. A monorepo-free consumer's
|
|
194
|
+
// `cele2e build-infra` then dies in buildDockerImages (ensureRegistryServerBundle:
|
|
195
|
+
// "published without its registry-server bundle"). Regenerate it from the
|
|
196
|
+
// sibling packages/registry-server before packing, exactly as buildDockerImages
|
|
197
|
+
// does in-monorepo. (This is why npm-consumer-smoke was red — ce-3rs.)
|
|
198
|
+
ensureRegistryServerBundle(join(REPO_ROOT, 'packages', 'e2e'));
|
|
199
|
+
|
|
190
200
|
console.log(`Packing @celilo/* packages → ${destination}`);
|
|
191
201
|
console.log('');
|
|
192
202
|
|