@pleri/olam-cli 0.1.162 → 0.1.167
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/README.md +4 -2
- package/dist/commands/bootstrap.d.ts +6 -0
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +15 -0
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/doctor.js +4 -4
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +4 -3
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +103 -81
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/memory-service-container.d.ts +8 -0
- package/dist/commands/memory-service-container.d.ts.map +1 -1
- package/dist/commands/memory-service-container.js +16 -1
- package/dist/commands/memory-service-container.js.map +1 -1
- package/dist/commands/setup.d.ts +62 -14
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +373 -42
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skills-source.d.ts.map +1 -1
- package/dist/commands/skills-source.js +89 -4
- package/dist/commands/skills-source.js.map +1 -1
- package/dist/image-digests.json +8 -7
- package/dist/index.js +672 -168
- package/dist/lib/bootstrap-kubernetes.d.ts.map +1 -1
- package/dist/lib/bootstrap-kubernetes.js +163 -106
- package/dist/lib/bootstrap-kubernetes.js.map +1 -1
- package/dist/lib/health-probes.d.ts +16 -0
- package/dist/lib/health-probes.d.ts.map +1 -1
- package/dist/lib/health-probes.js +49 -0
- package/dist/lib/health-probes.js.map +1 -1
- package/dist/lib/peripheral-registry.d.ts +9 -3
- package/dist/lib/peripheral-registry.d.ts.map +1 -1
- package/dist/lib/peripheral-registry.js +4 -4
- package/dist/lib/peripheral-registry.js.map +1 -1
- package/dist/lib/port-forward.js +1 -1
- package/dist/lib/port-forward.js.map +1 -1
- package/dist/lib/upgrade-kubernetes.d.ts +1 -1
- package/dist/lib/upgrade-kubernetes.d.ts.map +1 -1
- package/dist/lib/upgrade-kubernetes.js +35 -21
- package/dist/lib/upgrade-kubernetes.js.map +1 -1
- package/dist/mcp-server.js +990 -331
- package/hermes-bundle/version.json +1 -1
- package/host-cp/k8s/manifests/50-deployment.yaml +1 -1
- package/host-cp/k8s/manifests/auth-service/50-deployment.yaml +1 -1
- package/host-cp/k8s/manifests/kg-service/50-deployment.yaml +1 -1
- package/host-cp/k8s/manifests/mcp-auth-service/50-deployment.yaml +1 -1
- package/host-cp/k8s/manifests/memory-service/50-deployment.yaml +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-kubernetes.d.ts","sourceRoot":"","sources":["../../src/lib/bootstrap-kubernetes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;
|
|
1
|
+
{"version":3,"file":"bootstrap-kubernetes.d.ts","sourceRoot":"","sources":["../../src/lib/bootstrap-kubernetes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AA0BH,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAsC/C,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA8YD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC,CAgCpC"}
|
|
@@ -27,173 +27,208 @@
|
|
|
27
27
|
* `upgrade-kubernetes.ts` (Phase 1b C2 + Phase 2 C/D). This module is
|
|
28
28
|
* the prereq + cluster-create + observability wrapper around it.
|
|
29
29
|
*/
|
|
30
|
-
import { spawnSync } from
|
|
31
|
-
import { existsSync, mkdirSync, writeFileSync, chmodSync } from
|
|
32
|
-
import { join } from
|
|
33
|
-
import { homedir, platform } from
|
|
34
|
-
import { randomBytes } from
|
|
35
|
-
import pc from
|
|
36
|
-
import { printError, printSuccess, printInfo, printWarning, printHeader } from
|
|
37
|
-
import { installRoot } from
|
|
38
|
-
import { resolveK8sAssetsRoot } from
|
|
39
|
-
const OLAM_HOME = join(homedir(),
|
|
40
|
-
export const DEFAULT_K3S_CLUSTER =
|
|
30
|
+
import { spawnSync } from "node:child_process";
|
|
31
|
+
import { existsSync, mkdirSync, readdirSync, writeFileSync, chmodSync, } from "node:fs";
|
|
32
|
+
import { join } from "node:path";
|
|
33
|
+
import { homedir, platform } from "node:os";
|
|
34
|
+
import { randomBytes } from "node:crypto";
|
|
35
|
+
import pc from "picocolors";
|
|
36
|
+
import { printError, printSuccess, printInfo, printWarning, printHeader, } from "../output.js";
|
|
37
|
+
import { installRoot } from "../install-root.js";
|
|
38
|
+
import { resolveK8sAssetsRoot } from "./k8s-bootstrap.js";
|
|
39
|
+
const OLAM_HOME = join(homedir(), ".olam");
|
|
40
|
+
export const DEFAULT_K3S_CLUSTER = "olam-host";
|
|
41
41
|
const REQUIRED_TOOLS = [
|
|
42
|
-
{ name:
|
|
43
|
-
{ name:
|
|
44
|
-
{ name:
|
|
45
|
-
{ name:
|
|
46
|
-
{
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
42
|
+
{ name: "k3d", brew: "k3d" },
|
|
43
|
+
{ name: "kubectl", brew: "kubectl" },
|
|
44
|
+
{ name: "helm", brew: "helm" },
|
|
45
|
+
{ name: "jq", brew: "jq" },
|
|
46
|
+
{
|
|
47
|
+
name: "curl",
|
|
48
|
+
hint: "expected on macOS by default; `apt install curl` on linux",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "openssl",
|
|
52
|
+
hint: "expected on macOS by default; `apt install openssl` on linux",
|
|
53
|
+
},
|
|
54
|
+
{ name: "gh", brew: "gh", hint: "after install: `gh auth login`" },
|
|
55
|
+
{ name: "docker", hint: "Docker Desktop, or colima on macOS" },
|
|
50
56
|
];
|
|
51
57
|
const SECRET_FILES = [
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
58
|
+
"auth-secret",
|
|
59
|
+
"kg-bearer-token",
|
|
60
|
+
"auth-db-secret",
|
|
61
|
+
"mcp-auth-jwt-secret",
|
|
62
|
+
"memory-bearer-secret",
|
|
57
63
|
];
|
|
58
64
|
const OBSERVABILITY_SCRIPTS = [
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
65
|
+
"loki-ingest.sh",
|
|
66
|
+
"grafana-port-forward.sh",
|
|
67
|
+
"prom-no-double-grafana.sh",
|
|
68
|
+
"kyverno-cardinality-mutate.sh",
|
|
63
69
|
];
|
|
64
70
|
/** Wraps `command -v <tool>` returning true when the binary is on PATH. */
|
|
65
71
|
function hasTool(tool) {
|
|
66
|
-
const result = spawnSync(
|
|
72
|
+
const result = spawnSync("command", ["-v", tool], {
|
|
73
|
+
shell: true,
|
|
74
|
+
stdio: "pipe",
|
|
75
|
+
});
|
|
67
76
|
return result.status === 0;
|
|
68
77
|
}
|
|
69
78
|
function detectMissingTools() {
|
|
70
79
|
return REQUIRED_TOOLS.filter((tool) => !hasTool(tool.name));
|
|
71
80
|
}
|
|
72
81
|
function runOrFail(cmd, args, description) {
|
|
73
|
-
const result = spawnSync(cmd, args, { stdio:
|
|
82
|
+
const result = spawnSync(cmd, args, { stdio: "inherit" });
|
|
74
83
|
if (result.status !== 0) {
|
|
75
|
-
printError(`${description} failed (exit ${result.status ??
|
|
84
|
+
printError(`${description} failed (exit ${result.status ?? "signal"})`);
|
|
76
85
|
process.exit(result.status ?? 1);
|
|
77
86
|
}
|
|
78
87
|
}
|
|
79
88
|
function runCapture(cmd, args) {
|
|
80
|
-
const result = spawnSync(cmd, args, { encoding:
|
|
89
|
+
const result = spawnSync(cmd, args, { encoding: "utf8" });
|
|
81
90
|
return {
|
|
82
91
|
ok: result.status === 0,
|
|
83
|
-
stdout: result.stdout ??
|
|
84
|
-
stderr: result.stderr ??
|
|
92
|
+
stdout: result.stdout ?? "",
|
|
93
|
+
stderr: result.stderr ?? "",
|
|
85
94
|
};
|
|
86
95
|
}
|
|
87
96
|
function step(label) {
|
|
88
|
-
process.stdout.write(
|
|
97
|
+
process.stdout.write("\n" + pc.bold(pc.cyan(`==> ${label}`)) + "\n");
|
|
89
98
|
}
|
|
90
99
|
function preflight(opts) {
|
|
91
|
-
step(
|
|
100
|
+
step("0/6 — preflight (tool detection)");
|
|
92
101
|
const missing = detectMissingTools();
|
|
93
102
|
if (missing.length === 0) {
|
|
94
|
-
printSuccess(
|
|
103
|
+
printSuccess("all required tools present");
|
|
95
104
|
}
|
|
96
|
-
else if (opts.autoInstall && platform() ===
|
|
105
|
+
else if (opts.autoInstall && platform() === "darwin") {
|
|
97
106
|
const brewable = missing.filter((t) => t.brew);
|
|
98
107
|
if (brewable.length > 0) {
|
|
99
|
-
printInfo(
|
|
100
|
-
runOrFail(
|
|
108
|
+
printInfo("auto-install", `${brewable.length} brew formula(s): ${brewable.map((t) => t.brew).join(", ")}`);
|
|
109
|
+
runOrFail("brew", ["install", ...brewable.map((t) => t.brew)], "brew install");
|
|
101
110
|
}
|
|
102
111
|
const stillMissing = detectMissingTools();
|
|
103
112
|
if (stillMissing.length > 0) {
|
|
104
|
-
printError(
|
|
113
|
+
printError("tools still missing after auto-install:");
|
|
105
114
|
for (const t of stillMissing) {
|
|
106
|
-
process.stderr.write(` - ${t.name}${t.hint ? ` — ${t.hint}` :
|
|
115
|
+
process.stderr.write(` - ${t.name}${t.hint ? ` — ${t.hint}` : ""}\n`);
|
|
107
116
|
}
|
|
108
117
|
process.exit(1);
|
|
109
118
|
}
|
|
110
|
-
printSuccess(
|
|
119
|
+
printSuccess("all required tools present after auto-install");
|
|
111
120
|
}
|
|
112
121
|
else {
|
|
113
122
|
printError(`${missing.length} required tool(s) missing:`);
|
|
114
123
|
for (const t of missing) {
|
|
115
|
-
const hint = t.brew
|
|
124
|
+
const hint = t.brew
|
|
125
|
+
? `brew install ${t.brew}`
|
|
126
|
+
: (t.hint ?? "(install manually)");
|
|
116
127
|
process.stderr.write(` - ${pc.bold(t.name)}: ${hint}\n`);
|
|
117
128
|
}
|
|
118
|
-
process.stderr.write(
|
|
129
|
+
process.stderr.write("\nRe-run with --auto-install on macOS to install brew-formulae automatically.\n");
|
|
119
130
|
process.exit(1);
|
|
120
131
|
}
|
|
121
132
|
// gh auth
|
|
122
|
-
if (!runCapture(
|
|
123
|
-
printError(
|
|
133
|
+
if (!runCapture("gh", ["auth", "status"]).ok) {
|
|
134
|
+
printError("gh is not authenticated — run: gh auth login");
|
|
124
135
|
process.exit(1);
|
|
125
136
|
}
|
|
126
|
-
printSuccess(
|
|
137
|
+
printSuccess("gh authenticated");
|
|
127
138
|
// docker reachability
|
|
128
|
-
if (!runCapture(
|
|
129
|
-
printError(
|
|
139
|
+
if (!runCapture("docker", ["info"]).ok) {
|
|
140
|
+
printError("docker daemon unreachable — start Docker Desktop or colima");
|
|
130
141
|
process.exit(1);
|
|
131
142
|
}
|
|
132
|
-
printSuccess(
|
|
143
|
+
printSuccess("docker daemon reachable");
|
|
133
144
|
}
|
|
134
145
|
function ensureSecrets() {
|
|
135
|
-
step(
|
|
146
|
+
step("1/6 — operator secrets");
|
|
136
147
|
mkdirSync(OLAM_HOME, { recursive: true });
|
|
137
148
|
for (const name of SECRET_FILES) {
|
|
138
149
|
const path = join(OLAM_HOME, name);
|
|
139
150
|
if (existsSync(path)) {
|
|
140
|
-
printInfo(
|
|
151
|
+
printInfo("skip", `~/.olam/${name} already exists`);
|
|
141
152
|
continue;
|
|
142
153
|
}
|
|
143
|
-
const hex = randomBytes(32).toString(
|
|
144
|
-
writeFileSync(path, hex +
|
|
154
|
+
const hex = randomBytes(32).toString("hex");
|
|
155
|
+
writeFileSync(path, hex + "\n", { encoding: "utf8", mode: 0o600 });
|
|
145
156
|
chmodSync(path, 0o600);
|
|
146
157
|
printSuccess(`generated ~/.olam/${name}`);
|
|
147
158
|
}
|
|
148
159
|
}
|
|
149
160
|
function ensureColima() {
|
|
150
|
-
if (platform() !==
|
|
161
|
+
if (platform() !== "darwin")
|
|
151
162
|
return;
|
|
152
|
-
step(
|
|
153
|
-
if (!runCapture(
|
|
154
|
-
printWarning(
|
|
155
|
-
runOrFail(
|
|
163
|
+
step("2/6 — colima (macOS)");
|
|
164
|
+
if (!runCapture("colima", ["status"]).ok) {
|
|
165
|
+
printWarning("colima not running — starting");
|
|
166
|
+
runOrFail("colima", [
|
|
167
|
+
"start",
|
|
168
|
+
"--cpu",
|
|
169
|
+
"4",
|
|
170
|
+
"--memory",
|
|
171
|
+
"8",
|
|
172
|
+
"--vm-type=vz",
|
|
173
|
+
"--mount-type=virtiofs",
|
|
174
|
+
], "colima start");
|
|
156
175
|
}
|
|
157
|
-
printSuccess(
|
|
176
|
+
printSuccess("colima running");
|
|
158
177
|
// virtiofs blocks chmod of docker.sock from the macOS side. Idempotent + non-fatal.
|
|
159
|
-
const chmod = runCapture(
|
|
178
|
+
const chmod = runCapture("colima", [
|
|
179
|
+
"ssh",
|
|
180
|
+
"--",
|
|
181
|
+
"sudo",
|
|
182
|
+
"chmod",
|
|
183
|
+
"666",
|
|
184
|
+
"/var/run/docker.sock",
|
|
185
|
+
]);
|
|
160
186
|
if (chmod.ok) {
|
|
161
|
-
printSuccess(
|
|
187
|
+
printSuccess("docker.sock chmod applied inside colima VM");
|
|
162
188
|
}
|
|
163
189
|
else {
|
|
164
|
-
printWarning(
|
|
190
|
+
printWarning("colima ssh chmod failed — k3d cluster create may still succeed");
|
|
165
191
|
}
|
|
166
192
|
}
|
|
167
193
|
function ensureCluster(opts) {
|
|
168
194
|
if (opts.skipClusterCreate) {
|
|
169
|
-
step(
|
|
195
|
+
step("3/6 — cluster (skipped via --skip-cluster-create)");
|
|
170
196
|
return;
|
|
171
197
|
}
|
|
172
198
|
step(`3/6 — k3d cluster create (${opts.cluster})`);
|
|
173
|
-
if (runCapture(
|
|
174
|
-
printInfo(
|
|
199
|
+
if (runCapture("k3d", ["cluster", "list", opts.cluster]).ok) {
|
|
200
|
+
printInfo("cluster", `'${opts.cluster}' already exists`);
|
|
175
201
|
return;
|
|
176
202
|
}
|
|
177
203
|
const ghConfigBind = `${homedir()}/.config/gh:/host/.config/gh`;
|
|
178
|
-
runOrFail(
|
|
179
|
-
|
|
180
|
-
|
|
204
|
+
runOrFail("k3d", [
|
|
205
|
+
"cluster",
|
|
206
|
+
"create",
|
|
207
|
+
opts.cluster,
|
|
208
|
+
"--volume",
|
|
209
|
+
ghConfigBind,
|
|
210
|
+
"--wait",
|
|
211
|
+
"--timeout",
|
|
212
|
+
"90s",
|
|
213
|
+
], `k3d cluster create ${opts.cluster}`);
|
|
214
|
+
if (!runCapture("kubectl", ["cluster-info"]).ok) {
|
|
215
|
+
printError("kubectl cannot reach the cluster — check kubeconfig context");
|
|
181
216
|
process.exit(1);
|
|
182
217
|
}
|
|
183
|
-
printSuccess(`cluster ready (${runCapture(
|
|
218
|
+
printSuccess(`cluster ready (${runCapture("kubectl", ["config", "current-context"]).stdout.trim()})`);
|
|
184
219
|
}
|
|
185
220
|
/** Resolve the bundled observability scripts dir. */
|
|
186
221
|
function resolveObservabilityScriptsDir() {
|
|
187
222
|
// Install-mode: bundle-host-cp.mjs copies scripts/e2e/*.sh to
|
|
188
223
|
// <install-root>/host-cp/observability/.
|
|
189
|
-
const installed = join(installRoot(),
|
|
224
|
+
const installed = join(installRoot(), "host-cp", "observability");
|
|
190
225
|
if (existsSync(installed))
|
|
191
226
|
return installed;
|
|
192
227
|
// Dev-mode fallback: resolve via the k8s assets root + walk up to repo
|
|
193
228
|
// root then into scripts/e2e/. Works when running against the monorepo.
|
|
194
229
|
const k8sRoot = resolveK8sAssetsRoot();
|
|
195
230
|
if (k8sRoot) {
|
|
196
|
-
const dev = join(k8sRoot,
|
|
231
|
+
const dev = join(k8sRoot, "..", "..", "..", "scripts", "e2e");
|
|
197
232
|
if (existsSync(dev))
|
|
198
233
|
return dev;
|
|
199
234
|
}
|
|
@@ -206,13 +241,13 @@ function resolveObservabilityScriptsDir() {
|
|
|
206
241
|
function resolvePeripheralServicesDir() {
|
|
207
242
|
// Install-mode: bundle-host-cp.mjs copies packages/peripheral-services/
|
|
208
243
|
// {helm-values,manifests} to <install-root>/host-cp/peripheral-services/.
|
|
209
|
-
const installed = join(installRoot(),
|
|
244
|
+
const installed = join(installRoot(), "host-cp", "peripheral-services");
|
|
210
245
|
if (existsSync(installed))
|
|
211
246
|
return installed;
|
|
212
247
|
// Dev-mode fallback: walk up from k8s assets root to packages/peripheral-services.
|
|
213
248
|
const k8sRoot = resolveK8sAssetsRoot();
|
|
214
249
|
if (k8sRoot) {
|
|
215
|
-
const dev = join(k8sRoot,
|
|
250
|
+
const dev = join(k8sRoot, "..", "..", "peripheral-services");
|
|
216
251
|
if (existsSync(dev))
|
|
217
252
|
return dev;
|
|
218
253
|
}
|
|
@@ -224,28 +259,29 @@ function resolvePeripheralServicesDir() {
|
|
|
224
259
|
* `<install>/host-cp`; in dev-mode it's the monorepo's `packages/` dir.
|
|
225
260
|
*/
|
|
226
261
|
function resolveBundleRoot() {
|
|
227
|
-
const installed = join(installRoot(),
|
|
228
|
-
if (existsSync(join(installed,
|
|
262
|
+
const installed = join(installRoot(), "host-cp");
|
|
263
|
+
if (existsSync(join(installed, "peripheral-services")))
|
|
229
264
|
return installed;
|
|
230
265
|
const k8sRoot = resolveK8sAssetsRoot();
|
|
231
266
|
if (k8sRoot) {
|
|
232
|
-
const dev = join(k8sRoot,
|
|
233
|
-
if (existsSync(join(dev,
|
|
267
|
+
const dev = join(k8sRoot, "..", "..");
|
|
268
|
+
if (existsSync(join(dev, "peripheral-services")))
|
|
234
269
|
return dev;
|
|
235
270
|
}
|
|
236
271
|
return null;
|
|
237
272
|
}
|
|
238
273
|
function installObservability(opts) {
|
|
239
274
|
if (opts.skipObservability) {
|
|
240
|
-
step(
|
|
275
|
+
step("4/6 — observability (skipped via --skip-observability)");
|
|
241
276
|
return;
|
|
242
277
|
}
|
|
243
|
-
step(
|
|
278
|
+
step("4/6 — observability stack (Loki + Promtail + Grafana + Prometheus + Kyverno)");
|
|
244
279
|
const observabilityDir = resolveObservabilityScriptsDir();
|
|
245
280
|
if (!observabilityDir) {
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
281
|
+
throw new Error(`Bundled observability assets missing. ` +
|
|
282
|
+
`This indicates a corrupt or incomplete @pleri/olam-cli installation. ` +
|
|
283
|
+
`Remediation: reinstall with 'npm install -g @pleri/olam-cli@latest', ` +
|
|
284
|
+
`or open an issue at https://github.com/pleri/olam/issues with this error.`);
|
|
249
285
|
}
|
|
250
286
|
// Export OLAM_BUNDLE_ROOT so the scripts resolve helm-values/manifests from
|
|
251
287
|
// the published tarball instead of `git rev-parse` (which fails outside the
|
|
@@ -262,13 +298,16 @@ function installObservability(opts) {
|
|
|
262
298
|
printWarning(`observability script missing: ${script} — skipping`);
|
|
263
299
|
continue;
|
|
264
300
|
}
|
|
265
|
-
printInfo(
|
|
266
|
-
const result = spawnSync(
|
|
301
|
+
printInfo("run", script);
|
|
302
|
+
const result = spawnSync("bash", [path], {
|
|
303
|
+
stdio: "inherit",
|
|
304
|
+
env: scriptEnv,
|
|
305
|
+
});
|
|
267
306
|
if (result.status !== 0) {
|
|
268
307
|
// loki-ingest's 10s scrub-wait is known to flake on cold-start; the
|
|
269
308
|
// underlying Loki/Promtail install almost always succeeded.
|
|
270
|
-
if (script ===
|
|
271
|
-
printWarning(
|
|
309
|
+
if (script === "loki-ingest.sh") {
|
|
310
|
+
printWarning("loki-ingest non-zero — likely Promtail scrub-wait flake; continuing");
|
|
272
311
|
}
|
|
273
312
|
else {
|
|
274
313
|
printError(`${script} failed — observability stack not ready`);
|
|
@@ -288,40 +327,58 @@ function installObservability(opts) {
|
|
|
288
327
|
* stack runs but has no scrape targets and no dashboards.
|
|
289
328
|
*/
|
|
290
329
|
function applyPeripheralServicesManifests() {
|
|
291
|
-
step(
|
|
330
|
+
step("5/6 — peripheral-services manifests (IngressRoutes + ServiceMonitors + recording rules + dashboards + Kyverno)");
|
|
292
331
|
const dir = resolvePeripheralServicesDir();
|
|
293
332
|
if (!dir) {
|
|
294
|
-
printWarning(
|
|
333
|
+
printWarning("bundled peripheral-services manifests not found — skipping");
|
|
295
334
|
return;
|
|
296
335
|
}
|
|
297
|
-
const manifestsDir = join(dir,
|
|
336
|
+
const manifestsDir = join(dir, "manifests");
|
|
298
337
|
if (!existsSync(manifestsDir)) {
|
|
299
338
|
printWarning(`peripheral-services/manifests not found at ${manifestsDir} — skipping`);
|
|
300
339
|
return;
|
|
301
340
|
}
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
341
|
+
// Skip deployment manifests (files matching *deploy*.yaml): these overlap with the
|
|
342
|
+
// canonical deployment specs applied by `olam upgrade` step 3 (k8s/manifests/<svc>/50-deployment.yaml).
|
|
343
|
+
// Applying them here causes a rolling update when upgrade re-applies with a different image
|
|
344
|
+
// digest, making `kubectl rollout status` fail while the old pod is Terminating.
|
|
345
|
+
// Standalone operators can still apply deployment manifests manually if needed.
|
|
346
|
+
const manifestFiles = readdirSync(manifestsDir)
|
|
347
|
+
.filter((f) => (f.endsWith(".yaml") || f.endsWith(".yml")) && !/deploy/i.test(f))
|
|
348
|
+
.map((f) => join(manifestsDir, f));
|
|
349
|
+
if (manifestFiles.length === 0) {
|
|
350
|
+
printWarning("no non-deployment peripheral-services manifests found — skipping");
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
353
|
+
for (const manifest of manifestFiles) {
|
|
354
|
+
printInfo("apply", manifest.replace(manifestsDir + "/", ""));
|
|
355
|
+
const r = spawnSync("kubectl", ["apply", "-f", manifest], {
|
|
356
|
+
stdio: "inherit",
|
|
357
|
+
});
|
|
358
|
+
if (r.status !== 0) {
|
|
359
|
+
printError(`kubectl apply failed for ${manifest}`);
|
|
360
|
+
process.exit(r.status ?? 1);
|
|
361
|
+
}
|
|
307
362
|
}
|
|
308
|
-
printSuccess(
|
|
363
|
+
printSuccess("peripheral-services manifests applied");
|
|
309
364
|
}
|
|
310
365
|
function delegateToUpgrade() {
|
|
311
|
-
step(
|
|
366
|
+
step("6/6 — apply host-cp + peripherals + rollout (olam upgrade)");
|
|
312
367
|
// Re-invoke `olam upgrade -y` via the same process binary. The upgrade
|
|
313
368
|
// flow's 8-step k8s path (upgrade-kubernetes.ts) handles namespace +
|
|
314
369
|
// RBAC + Secrets + ghcr-pull + host-side docker-socket-proxy + manifest
|
|
315
370
|
// apply + rollout status + port-forward + /health verify + audit log.
|
|
316
|
-
const olamBin = process.argv[1] ??
|
|
317
|
-
const result = spawnSync(process.execPath, [olamBin,
|
|
371
|
+
const olamBin = process.argv[1] ?? "olam";
|
|
372
|
+
const result = spawnSync(process.execPath, [olamBin, "upgrade", "-y"], {
|
|
373
|
+
stdio: "inherit",
|
|
374
|
+
});
|
|
318
375
|
if (result.status !== 0) {
|
|
319
|
-
printError(
|
|
376
|
+
printError("olam upgrade failed — see output above");
|
|
320
377
|
process.exit(result.status ?? 1);
|
|
321
378
|
}
|
|
322
379
|
}
|
|
323
380
|
function summary(opts) {
|
|
324
|
-
step(
|
|
381
|
+
step("done");
|
|
325
382
|
process.stdout.write(`
|
|
326
383
|
Cluster: ${opts.cluster}
|
|
327
384
|
Next steps:
|
|
@@ -344,15 +401,15 @@ export async function runBootstrapKubernetes(rawOpts) {
|
|
|
344
401
|
// see a per-tool install hint (apt/dnf auto-install is queued as a
|
|
345
402
|
// follow-up). Pass --no-auto-install or set autoInstall=false to
|
|
346
403
|
// restore the earlier opt-in behaviour.
|
|
347
|
-
const defaultAutoInstall = platform() ===
|
|
404
|
+
const defaultAutoInstall = platform() === "darwin";
|
|
348
405
|
const opts = {
|
|
349
406
|
cluster: rawOpts.cluster ?? DEFAULT_K3S_CLUSTER,
|
|
350
407
|
autoInstall: rawOpts.autoInstall ?? defaultAutoInstall,
|
|
351
408
|
skipObservability: rawOpts.skipObservability ?? false,
|
|
352
409
|
skipClusterCreate: rawOpts.skipClusterCreate ?? false,
|
|
353
410
|
};
|
|
354
|
-
printHeader(
|
|
355
|
-
printInfo(
|
|
411
|
+
printHeader("olam setup — k3s mode");
|
|
412
|
+
printInfo("mode", "one-command bring-up of olam peripherals + observability on a local k3d cluster");
|
|
356
413
|
preflight(opts);
|
|
357
414
|
ensureSecrets();
|
|
358
415
|
ensureColima();
|
|
@@ -361,7 +418,7 @@ export async function runBootstrapKubernetes(rawOpts) {
|
|
|
361
418
|
applyPeripheralServicesManifests();
|
|
362
419
|
delegateToUpgrade();
|
|
363
420
|
summary(opts);
|
|
364
|
-
printSuccess(
|
|
421
|
+
printSuccess("setup complete");
|
|
365
422
|
return { exitCode: 0, summary: `setup complete on cluster ${opts.cluster}` };
|
|
366
423
|
}
|
|
367
424
|
//# sourceMappingURL=bootstrap-kubernetes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap-kubernetes.js","sourceRoot":"","sources":["../../src/lib/bootstrap-kubernetes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootstrap-kubernetes.js","sourceRoot":"","sources":["../../src/lib/bootstrap-kubernetes.ts"],"names":[],"mappings":"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"}
|
|
@@ -221,6 +221,22 @@ export type DetectK8sClusterTypeFn = (kubectlContext: string | undefined) => 'co
|
|
|
221
221
|
* - else → 'unknown'
|
|
222
222
|
*/
|
|
223
223
|
export declare function defaultDetectK8sClusterType(kubectlContext: string | undefined): 'colima' | 'k3d' | 'unknown';
|
|
224
|
+
/**
|
|
225
|
+
* Probe: `kubectl` binary on PATH.
|
|
226
|
+
*
|
|
227
|
+
* Checks for the binary via `kubectl version --client --output=json`.
|
|
228
|
+
* Does NOT require a live cluster — client-only check. Used by the
|
|
229
|
+
* kubernetes substrate path of `olam setup` Phase 1 system check.
|
|
230
|
+
*/
|
|
231
|
+
export declare function probeKubectl(exec?: DockerExec): Promise<ProbeResult>;
|
|
232
|
+
/**
|
|
233
|
+
* Probe: `k3d` binary on PATH (macOS kubernetes substrate).
|
|
234
|
+
*
|
|
235
|
+
* Used by `olam setup --substrate=kubernetes` Phase 1 on macOS to
|
|
236
|
+
* distinguish "k3d missing" (defer to Phase 1.5 install) from
|
|
237
|
+
* "k3d present". Returns ok:false so Phase 1.5 knows to install.
|
|
238
|
+
*/
|
|
239
|
+
export declare function probeK3d(exec?: DockerExec): Promise<ProbeResult>;
|
|
224
240
|
/**
|
|
225
241
|
* Build the doctor/upgrade remedy text for a missing docker socket bind-mount.
|
|
226
242
|
* Colima operators need `colima start --kubernetes` with the socket mount flag;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health-probes.d.ts","sourceRoot":"","sources":["../../src/lib/health-probes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"health-probes.d.ts","sourceRoot":"","sources":["../../src/lib/health-probes.ts"],"names":[],"mappings":"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"}
|
|
@@ -688,6 +688,55 @@ function readCurrentKubectlContext() {
|
|
|
688
688
|
return undefined;
|
|
689
689
|
return r.stdout?.trim() || undefined;
|
|
690
690
|
}
|
|
691
|
+
// ── Setup wizard probes (binary-presence checks, not cluster connectivity) ─────
|
|
692
|
+
/**
|
|
693
|
+
* Probe: `kubectl` binary on PATH.
|
|
694
|
+
*
|
|
695
|
+
* Checks for the binary via `kubectl version --client --output=json`.
|
|
696
|
+
* Does NOT require a live cluster — client-only check. Used by the
|
|
697
|
+
* kubernetes substrate path of `olam setup` Phase 1 system check.
|
|
698
|
+
*/
|
|
699
|
+
export async function probeKubectl(exec = defaultDockerExec) {
|
|
700
|
+
const r = exec('kubectl', ['version', '--client', '--output=json']);
|
|
701
|
+
if (r.status === 0 && r.stdout.length > 0) {
|
|
702
|
+
let clientVersion = 'unknown';
|
|
703
|
+
try {
|
|
704
|
+
const parsed = JSON.parse(r.stdout);
|
|
705
|
+
const clientInfo = parsed.clientVersion;
|
|
706
|
+
if (typeof clientInfo?.gitVersion === 'string') {
|
|
707
|
+
clientVersion = clientInfo.gitVersion;
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
catch {
|
|
711
|
+
// version string unavailable; probe still passes
|
|
712
|
+
}
|
|
713
|
+
return { ok: true, message: `kubectl ${clientVersion} on PATH` };
|
|
714
|
+
}
|
|
715
|
+
return {
|
|
716
|
+
ok: false,
|
|
717
|
+
message: 'kubectl not found on PATH',
|
|
718
|
+
remedy: 'Install kubectl: macOS: `brew install kubectl`; Linux: https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/',
|
|
719
|
+
};
|
|
720
|
+
}
|
|
721
|
+
/**
|
|
722
|
+
* Probe: `k3d` binary on PATH (macOS kubernetes substrate).
|
|
723
|
+
*
|
|
724
|
+
* Used by `olam setup --substrate=kubernetes` Phase 1 on macOS to
|
|
725
|
+
* distinguish "k3d missing" (defer to Phase 1.5 install) from
|
|
726
|
+
* "k3d present". Returns ok:false so Phase 1.5 knows to install.
|
|
727
|
+
*/
|
|
728
|
+
export async function probeK3d(exec = defaultDockerExec) {
|
|
729
|
+
const r = exec('k3d', ['version']);
|
|
730
|
+
if (r.status === 0 && r.stdout.length > 0) {
|
|
731
|
+
const versionLine = r.stdout.trim().split('\n')[0] ?? '';
|
|
732
|
+
return { ok: true, message: `k3d ${versionLine} on PATH` };
|
|
733
|
+
}
|
|
734
|
+
return {
|
|
735
|
+
ok: false,
|
|
736
|
+
message: 'k3d not found on PATH',
|
|
737
|
+
remedy: 'Install k3d: `brew install k3d` (macOS) or curl -s https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | bash',
|
|
738
|
+
};
|
|
739
|
+
}
|
|
691
740
|
/**
|
|
692
741
|
* Build the doctor/upgrade remedy text for a missing docker socket bind-mount.
|
|
693
742
|
* Colima operators need `colima start --kubernetes` with the socket mount flag;
|