gitops-ai 1.2.2 → 1.2.3
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 +11 -26
- package/dist/commands/bootstrap.js +150 -112
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/core/dependencies.d.ts +4 -0
- package/dist/core/dependencies.js +77 -3
- package/dist/core/dependencies.js.map +1 -1
- package/dist/utils/shell.d.ts +7 -0
- package/dist/utils/shell.js +25 -1
- package/dist/utils/shell.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -16,48 +16,33 @@ GitOps-managed Kubernetes infrastructure for AI-powered applications powered by
|
|
|
16
16
|
|
|
17
17
|
## Quick Start
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
If you already have **Node.js** on your Mac or Linux machine:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
npx gitops-ai bootstrap
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
If Node is not installed yet, use the helper script — it installs Node when missing (on macOS, [Homebrew](https://brew.sh) is required for that step), then starts the wizard:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
curl -sfL https://raw.githubusercontent.com/
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Or, if you already have Node.js >= 18:
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
npx gitops-ai bootstrap
|
|
28
|
+
curl -sfL https://raw.githubusercontent.com/GitOpsAI/gitops-ai-bootstrapper/refs/heads/main/install.sh | bash
|
|
35
29
|
```
|
|
36
30
|
|
|
37
31
|
The interactive wizard will prompt for your Git provider (GitHub or GitLab), create or use a repository from the [GitOps AI Template](https://github.com/GitOpsAI/gitops-ai-template), and run the full bootstrap.
|
|
38
32
|
|
|
39
33
|
## Requirements
|
|
40
34
|
|
|
41
|
-
| Resource | Minimum
|
|
42
|
-
|
|
43
|
-
| **CPU** | 2+ cores
|
|
44
|
-
| **Memory** | 4+ GB
|
|
45
|
-
| **Disk** | 20+ GB free
|
|
46
|
-
| **OS** | Ubuntu 25.04+ or macOS
|
|
47
|
-
| **Node.js** | 18+ (installed automatically by `install.sh`)
|
|
35
|
+
| Resource | Minimum |
|
|
36
|
+
|-------------|----------------------------------------------------------|
|
|
37
|
+
| **CPU** | 2+ cores |
|
|
38
|
+
| **Memory** | 4+ GB |
|
|
39
|
+
| **Disk** | 20+ GB free |
|
|
40
|
+
| **OS** | Ubuntu 25.04+ or macOS |
|
|
41
|
+
| **Node.js** | 18+ (installed automatically by `install.sh`) |
|
|
42
|
+
| **Docker** | macOS only — Docker Desktop; not used on Linux bootstrap |
|
|
48
43
|
|
|
49
44
|
You will also need a [GitLab PAT](docs/prerequisites.md#1-gitlab-personal-access-token), a [Cloudflare API Token](docs/prerequisites.md#2-cloudflare-api-token) (if using automatic DNS/TLS), and an [OpenAI API Key](docs/prerequisites.md#3-openai-api-key) (if using OpenClaw). See [Prerequisites](docs/prerequisites.md) for full details.
|
|
50
45
|
|
|
51
|
-
### Docker runtime (macOS only)
|
|
52
|
-
|
|
53
|
-
macOS requires a Docker-compatible runtime for k3d. Install one of:
|
|
54
|
-
|
|
55
|
-
- [Docker Desktop](https://www.docker.com/products/docker-desktop/)
|
|
56
|
-
- [OrbStack](https://orbstack.dev/)
|
|
57
|
-
- [Colima](https://github.com/abiosoft/colima)
|
|
58
|
-
|
|
59
|
-
On Linux the bootstrap installs k3s directly -- no Docker required.
|
|
60
|
-
|
|
61
46
|
## Template Repository
|
|
62
47
|
|
|
63
48
|
This CLI bootstraps clusters from the [GitOps AI Template](https://github.com/GitOpsAI/gitops-ai-template) -- a ready-made GitOps repository structure that Flux uses as the single source of truth for your cluster.
|
|
@@ -8,7 +8,7 @@ import { header, log, summary, nextSteps, finish, handleCancel, withSpinner, for
|
|
|
8
8
|
import { saveInstallPlan, loadInstallPlan, clearInstallPlan } from "../utils/config.js";
|
|
9
9
|
import { execAsync, exec, execSafe, commandExists } from "../utils/shell.js";
|
|
10
10
|
import { isMacOS, isCI } from "../utils/platform.js";
|
|
11
|
-
import { ensureAll } from "../core/dependencies.js";
|
|
11
|
+
import { ensureAll, ensureDockerDaemonReady } from "../core/dependencies.js";
|
|
12
12
|
import { runBootstrap, stripTemplateGitHubDirectory } from "../core/bootstrap-runner.js";
|
|
13
13
|
import * as k8s from "../core/kubernetes.js";
|
|
14
14
|
import * as k8sApi from "../core/k8s-api.js";
|
|
@@ -65,8 +65,11 @@ async function enrichWithUser(state, token, provider) {
|
|
|
65
65
|
// ---------------------------------------------------------------------------
|
|
66
66
|
// Wizard field definitions (Esc / Ctrl+C = go back one field)
|
|
67
67
|
// ---------------------------------------------------------------------------
|
|
68
|
-
function buildFields(detectedIp, hasSavedPlan) {
|
|
68
|
+
function buildFields(detectedIp, hasSavedPlan, savedPlanRaw) {
|
|
69
69
|
const saved = (state, key) => hasSavedPlan && !!state[key];
|
|
70
|
+
const skipAdditionalSettingsToggle = hasSavedPlan &&
|
|
71
|
+
savedPlanRaw != null &&
|
|
72
|
+
savedPlanRaw.enableAdditionalSettings !== undefined;
|
|
70
73
|
return [
|
|
71
74
|
// ── Setup Mode ──────────────────────────────────────────────────────
|
|
72
75
|
{
|
|
@@ -344,64 +347,6 @@ function buildFields(detectedIp, hasSavedPlan) {
|
|
|
344
347
|
? ["Local path", `./${state.repoLocalPath}`]
|
|
345
348
|
: ["Local repo path", resolve(state.repoLocalPath || ".")],
|
|
346
349
|
},
|
|
347
|
-
{
|
|
348
|
-
id: "repoBranch",
|
|
349
|
-
section: "Git Repository",
|
|
350
|
-
skip: (state) => saved(state, "repoBranch"),
|
|
351
|
-
run: async (state) => {
|
|
352
|
-
const v = await p.text({
|
|
353
|
-
message: pc.bold("Git branch for Flux"),
|
|
354
|
-
placeholder: "main",
|
|
355
|
-
defaultValue: state.repoBranch,
|
|
356
|
-
});
|
|
357
|
-
if (p.isCancel(v))
|
|
358
|
-
return back();
|
|
359
|
-
return { ...state, repoBranch: v };
|
|
360
|
-
},
|
|
361
|
-
review: (state) => ["Branch", state.repoBranch],
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
id: "templateTag",
|
|
365
|
-
section: "Git Repository",
|
|
366
|
-
hidden: (state) => !isNewRepo(state),
|
|
367
|
-
skip: (state) => saved(state, "templateTag"),
|
|
368
|
-
run: async (state) => {
|
|
369
|
-
const tags = await fetchTemplateTags();
|
|
370
|
-
if (tags.length > 0) {
|
|
371
|
-
const options = [
|
|
372
|
-
...tags.map((tag, i) => ({
|
|
373
|
-
value: tag,
|
|
374
|
-
label: tag,
|
|
375
|
-
hint: i === 0 ? "latest" : undefined,
|
|
376
|
-
})),
|
|
377
|
-
{
|
|
378
|
-
value: "__manual__",
|
|
379
|
-
label: "Enter manually…",
|
|
380
|
-
hint: "type a tag or branch name",
|
|
381
|
-
},
|
|
382
|
-
];
|
|
383
|
-
const v = await p.select({
|
|
384
|
-
message: pc.bold("Template version (tag) to clone"),
|
|
385
|
-
options,
|
|
386
|
-
initialValue: state.templateTag || tags[0],
|
|
387
|
-
});
|
|
388
|
-
if (p.isCancel(v))
|
|
389
|
-
return back();
|
|
390
|
-
if (v !== "__manual__") {
|
|
391
|
-
return { ...state, templateTag: v };
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
const v = await p.text({
|
|
395
|
-
message: pc.bold("Template tag or branch to clone"),
|
|
396
|
-
placeholder: "main",
|
|
397
|
-
defaultValue: state.templateTag || "main",
|
|
398
|
-
});
|
|
399
|
-
if (p.isCancel(v))
|
|
400
|
-
return back();
|
|
401
|
-
return { ...state, templateTag: v };
|
|
402
|
-
},
|
|
403
|
-
review: (state) => ["Template tag", state.templateTag],
|
|
404
|
-
},
|
|
405
350
|
// ── DNS & TLS ─────────────────────────────────────────────────────────
|
|
406
351
|
{
|
|
407
352
|
id: "manageDnsAndTls",
|
|
@@ -794,6 +739,87 @@ function buildFields(detectedIp, hasSavedPlan) {
|
|
|
794
739
|
},
|
|
795
740
|
review: (state) => ["Network", `${state.clusterPublicIp} allowed: ${state.ingressAllowedIps}`],
|
|
796
741
|
},
|
|
742
|
+
// ── Additional settings (last — rarely needed) ─────────────────────────
|
|
743
|
+
{
|
|
744
|
+
id: "enableAdditionalSettings",
|
|
745
|
+
section: "Additional settings",
|
|
746
|
+
skip: () => skipAdditionalSettingsToggle,
|
|
747
|
+
run: async (state) => {
|
|
748
|
+
const v = await p.confirm({
|
|
749
|
+
message: pc.bold("Setup additional settings?") +
|
|
750
|
+
`\n${pc.dim("Regularly not needed")}`,
|
|
751
|
+
initialValue: state.enableAdditionalSettings,
|
|
752
|
+
});
|
|
753
|
+
if (p.isCancel(v))
|
|
754
|
+
return back();
|
|
755
|
+
return { ...state, enableAdditionalSettings: v };
|
|
756
|
+
},
|
|
757
|
+
review: (state) => [
|
|
758
|
+
"Customize branch & template",
|
|
759
|
+
state.enableAdditionalSettings
|
|
760
|
+
? "Yes"
|
|
761
|
+
: "No — defaults (main / main)",
|
|
762
|
+
],
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
id: "repoBranch",
|
|
766
|
+
section: "Additional settings",
|
|
767
|
+
hidden: (state) => !state.enableAdditionalSettings,
|
|
768
|
+
skip: (state) => saved(state, "repoBranch"),
|
|
769
|
+
run: async (state) => {
|
|
770
|
+
const v = await p.text({
|
|
771
|
+
message: pc.bold("Git branch for Flux"),
|
|
772
|
+
placeholder: "main",
|
|
773
|
+
defaultValue: state.repoBranch,
|
|
774
|
+
});
|
|
775
|
+
if (p.isCancel(v))
|
|
776
|
+
return back();
|
|
777
|
+
return { ...state, repoBranch: v };
|
|
778
|
+
},
|
|
779
|
+
review: (state) => ["Flux Git branch", state.repoBranch],
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
id: "templateTag",
|
|
783
|
+
section: "Additional settings",
|
|
784
|
+
hidden: (state) => !isNewRepo(state) || !state.enableAdditionalSettings,
|
|
785
|
+
skip: (state) => saved(state, "templateTag"),
|
|
786
|
+
run: async (state) => {
|
|
787
|
+
const tags = await fetchTemplateTags();
|
|
788
|
+
if (tags.length > 0) {
|
|
789
|
+
const options = [
|
|
790
|
+
...tags.map((tag, i) => ({
|
|
791
|
+
value: tag,
|
|
792
|
+
label: tag,
|
|
793
|
+
hint: i === 0 ? "latest" : undefined,
|
|
794
|
+
})),
|
|
795
|
+
{
|
|
796
|
+
value: "__manual__",
|
|
797
|
+
label: "Enter manually…",
|
|
798
|
+
hint: "type a tag or branch name",
|
|
799
|
+
},
|
|
800
|
+
];
|
|
801
|
+
const v = await p.select({
|
|
802
|
+
message: pc.bold("Template version (tag) to clone"),
|
|
803
|
+
options,
|
|
804
|
+
initialValue: state.templateTag || tags[0],
|
|
805
|
+
});
|
|
806
|
+
if (p.isCancel(v))
|
|
807
|
+
return back();
|
|
808
|
+
if (v !== "__manual__") {
|
|
809
|
+
return { ...state, templateTag: v };
|
|
810
|
+
}
|
|
811
|
+
}
|
|
812
|
+
const v = await p.text({
|
|
813
|
+
message: pc.bold("Template tag or branch to clone"),
|
|
814
|
+
placeholder: "main",
|
|
815
|
+
defaultValue: state.templateTag || "main",
|
|
816
|
+
});
|
|
817
|
+
if (p.isCancel(v))
|
|
818
|
+
return back();
|
|
819
|
+
return { ...state, templateTag: v };
|
|
820
|
+
},
|
|
821
|
+
review: (state) => ["Template tag", state.templateTag],
|
|
822
|
+
},
|
|
797
823
|
];
|
|
798
824
|
}
|
|
799
825
|
// ---------------------------------------------------------------------------
|
|
@@ -1031,6 +1057,13 @@ export async function bootstrap() {
|
|
|
1031
1057
|
...MONITORING_COMPONENT_IDS,
|
|
1032
1058
|
...OPTIONAL_COMPONENTS.map((c) => c.id),
|
|
1033
1059
|
];
|
|
1060
|
+
const enableAdditionalFromPlan = prev.enableAdditionalSettings === "true" ||
|
|
1061
|
+
(saved != null &&
|
|
1062
|
+
prev.enableAdditionalSettings === undefined &&
|
|
1063
|
+
((prev.repoBranch != null && prev.repoBranch !== "" && prev.repoBranch !== "main") ||
|
|
1064
|
+
(prev.templateTag != null &&
|
|
1065
|
+
prev.templateTag !== "" &&
|
|
1066
|
+
prev.templateTag !== "main")));
|
|
1034
1067
|
const initialState = {
|
|
1035
1068
|
gitProvider: prev.gitProvider ?? "github",
|
|
1036
1069
|
setupMode: prev.setupMode ?? "new",
|
|
@@ -1041,6 +1074,7 @@ export async function bootstrap() {
|
|
|
1041
1074
|
repoName: prev.repoName ?? "fluxcd_ai",
|
|
1042
1075
|
repoLocalPath: prev.repoLocalPath ?? "",
|
|
1043
1076
|
repoOwner: prev.repoOwner ?? "",
|
|
1077
|
+
enableAdditionalSettings: enableAdditionalFromPlan,
|
|
1044
1078
|
repoBranch: prev.repoBranch ?? "main",
|
|
1045
1079
|
templateTag: prev.templateTag ?? "",
|
|
1046
1080
|
letsencryptEmail: prev.letsencryptEmail ?? "",
|
|
@@ -1052,7 +1086,7 @@ export async function bootstrap() {
|
|
|
1052
1086
|
ingressAllowedIps: prev.ingressAllowedIps ?? "0.0.0.0/0",
|
|
1053
1087
|
clusterPublicIp: prev.clusterPublicIp ?? detectedIp,
|
|
1054
1088
|
};
|
|
1055
|
-
const wizard = await stepWizard(buildFields(detectedIp, !!saved), initialState);
|
|
1089
|
+
const wizard = await stepWizard(buildFields(detectedIp, !!saved, saved), initialState);
|
|
1056
1090
|
// ── Save config ─────────────────────────────────────────────────────
|
|
1057
1091
|
saveInstallPlan({
|
|
1058
1092
|
gitProvider: wizard.gitProvider,
|
|
@@ -1068,6 +1102,7 @@ export async function bootstrap() {
|
|
|
1068
1102
|
repoName: wizard.repoName,
|
|
1069
1103
|
repoLocalPath: wizard.repoLocalPath,
|
|
1070
1104
|
repoOwner: wizard.repoOwner,
|
|
1105
|
+
enableAdditionalSettings: String(wizard.enableAdditionalSettings),
|
|
1071
1106
|
repoBranch: wizard.repoBranch,
|
|
1072
1107
|
templateTag: wizard.templateTag,
|
|
1073
1108
|
cloudflareApiToken: wizard.cloudflareApiToken,
|
|
@@ -1076,58 +1111,67 @@ export async function bootstrap() {
|
|
|
1076
1111
|
selectedComponents: wizard.selectedComponents.join(","),
|
|
1077
1112
|
});
|
|
1078
1113
|
log.success("Configuration saved");
|
|
1079
|
-
// ──
|
|
1114
|
+
// ── CLI tools: explain + confirm + install only when something is missing ──
|
|
1080
1115
|
const toolDescriptions = [
|
|
1081
1116
|
["git", "Version control (repo operations)"],
|
|
1082
1117
|
["flux-operator", "FluxCD Operator CLI (installs Flux into the cluster)"],
|
|
1083
1118
|
["sops", "Mozilla SOPS (secret encryption)"],
|
|
1084
1119
|
["age", "Age encryption (SOPS key backend)"],
|
|
1085
1120
|
];
|
|
1121
|
+
if (isMacOS()) {
|
|
1122
|
+
toolDescriptions.push([
|
|
1123
|
+
"docker",
|
|
1124
|
+
"Docker-compatible runtime for k3d",
|
|
1125
|
+
]);
|
|
1126
|
+
}
|
|
1086
1127
|
if (isMacOS() || isCI()) {
|
|
1087
1128
|
toolDescriptions.push(["k3d", "Lightweight K3s in Docker (local cluster)"]);
|
|
1088
1129
|
}
|
|
1089
|
-
const
|
|
1090
|
-
.filter(([name]) => !commandExists(name))
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
const
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
pc.
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1130
|
+
const missingToolNames = toolDescriptions
|
|
1131
|
+
.filter(([name]) => !commandExists(name))
|
|
1132
|
+
.map(([name]) => name);
|
|
1133
|
+
if (missingToolNames.length > 0) {
|
|
1134
|
+
const toolListFormatted = toolDescriptions
|
|
1135
|
+
.map(([name, desc]) => {
|
|
1136
|
+
const status = commandExists(name)
|
|
1137
|
+
? pc.green("installed")
|
|
1138
|
+
: pc.yellow("will install");
|
|
1139
|
+
return ` ${pc.bold(name.padEnd(16))} ${pc.dim(desc)} [${status}]`;
|
|
1140
|
+
})
|
|
1141
|
+
.join("\n");
|
|
1142
|
+
const uninstallMacFormulae = toolDescriptions
|
|
1143
|
+
.map(([name]) => name)
|
|
1144
|
+
.filter((n) => n !== "docker")
|
|
1145
|
+
.join(" ");
|
|
1146
|
+
const uninstallMac = isMacOS() && toolDescriptions.some(([n]) => n === "docker")
|
|
1147
|
+
? `brew uninstall ${uninstallMacFormulae} && brew uninstall --cask docker`
|
|
1148
|
+
: `brew uninstall ${uninstallMacFormulae}`;
|
|
1149
|
+
p.note(`${pc.bold("The following CLI tools are required and will be installed if missing:")}\n\n` +
|
|
1150
|
+
toolListFormatted +
|
|
1151
|
+
"\n\n" +
|
|
1152
|
+
pc.dim("─".repeat(60)) + "\n\n" +
|
|
1153
|
+
pc.bold("Why are these needed?\n") +
|
|
1154
|
+
pc.dim("These tools are used to create and manage your Kubernetes cluster,\n") +
|
|
1155
|
+
pc.dim(`install Flux via flux-operator, encrypt secrets, and interact with ${providerLabel(wizard.gitProvider)}.\n`) +
|
|
1156
|
+
pc.bold("How to uninstall later:\n") +
|
|
1157
|
+
(isMacOS()
|
|
1158
|
+
? ` ${pc.cyan(`brew uninstall ${uninstallMac}`)}\n`
|
|
1159
|
+
: ` ${pc.cyan("sudo rm -f /usr/local/bin/{flux-operator,sops,age,age-keygen}")}\n` +
|
|
1160
|
+
` ${pc.cyan(`sudo apt remove -y git`)} ${pc.dim("(if installed via apt)")}\n`) +
|
|
1161
|
+
pc.dim("\nAlready-installed tools will be skipped. No system tools will be modified."), "Required CLI Tools");
|
|
1162
|
+
const proceed = await p.confirm({
|
|
1163
|
+
message: pc.bold(`Install ${missingToolNames.length} missing tool(s) and continue?`),
|
|
1164
|
+
initialValue: true,
|
|
1165
|
+
});
|
|
1166
|
+
if (p.isCancel(proceed) || !proceed) {
|
|
1167
|
+
log.error("Aborted.");
|
|
1168
|
+
return process.exit(1);
|
|
1169
|
+
}
|
|
1128
1170
|
log.step("Installing CLI tools");
|
|
1129
|
-
|
|
1130
|
-
|
|
1171
|
+
await ensureAll(missingToolNames);
|
|
1172
|
+
}
|
|
1173
|
+
if (isMacOS()) {
|
|
1174
|
+
await ensureDockerDaemonReady();
|
|
1131
1175
|
}
|
|
1132
1176
|
// ── Repo creation phase (new mode only) ─────────────────────────────
|
|
1133
1177
|
let repoRoot;
|
|
@@ -1168,15 +1212,9 @@ export async function bootstrap() {
|
|
|
1168
1212
|
(isNewRepo(wizard) ? "main" : undefined),
|
|
1169
1213
|
};
|
|
1170
1214
|
// ── Check macOS prerequisites ────────────────────────────────────────
|
|
1171
|
-
if (isMacOS()) {
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
return process.exit(1);
|
|
1175
|
-
}
|
|
1176
|
-
if (!commandExists("docker")) {
|
|
1177
|
-
log.error("Docker is required on macOS (Docker Desktop, OrbStack, or Colima).");
|
|
1178
|
-
return process.exit(1);
|
|
1179
|
-
}
|
|
1215
|
+
if (isMacOS() && !commandExists("brew")) {
|
|
1216
|
+
log.error("Homebrew is required on macOS. Install from https://brew.sh");
|
|
1217
|
+
return process.exit(1);
|
|
1180
1218
|
}
|
|
1181
1219
|
// ── Run bootstrap (cluster + flux + template + sops + git push) ─────
|
|
1182
1220
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
export declare function ensureDependency(name: string): Promise<void>;
|
|
2
2
|
export declare function ensureAll(names: string[]): Promise<void>;
|
|
3
3
|
export declare function checkPrerequisite(name: string): void;
|
|
4
|
+
/**
|
|
5
|
+
* Ensure Docker Desktop daemon is reachable (macOS / k3d). Opens the app and polls until `docker info` succeeds.
|
|
6
|
+
*/
|
|
7
|
+
export declare function ensureDockerDaemonReady(): Promise<void>;
|
|
@@ -1,10 +1,55 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
2
|
+
import { homedir } from "node:os";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { commandExists, execAsync, execSafe, execShellInteractive, } from "../utils/shell.js";
|
|
2
5
|
import { isMacOS, getArch } from "../utils/platform.js";
|
|
3
6
|
import { log, withSpinner } from "../utils/log.js";
|
|
7
|
+
const DOCKER_APP = "/Applications/Docker.app";
|
|
8
|
+
const DOCKER_BUNDLED_CLI = `${DOCKER_APP}/Contents/Resources/bin/docker`;
|
|
9
|
+
const ORBSTACK_APP = "/Applications/OrbStack.app";
|
|
10
|
+
/** OrbStack ships docker inside the app bundle (path may vary by version). */
|
|
11
|
+
const ORBSTACK_BUNDLED_DOCKER_PATHS = [
|
|
12
|
+
`${ORBSTACK_APP}/Contents/MacOS/xbin/docker`,
|
|
13
|
+
`${ORBSTACK_APP}/Contents/MacOS/bin/docker`,
|
|
14
|
+
];
|
|
15
|
+
/** True if Docker Desktop, OrbStack, Colima, or a docker CLI is already present — skip installing Docker Desktop. */
|
|
16
|
+
function dockerInstalledOnMac() {
|
|
17
|
+
const orbstackHomeDocker = join(homedir(), ".orbstack/bin/docker");
|
|
18
|
+
return (commandExists("docker") ||
|
|
19
|
+
existsSync(DOCKER_APP) ||
|
|
20
|
+
existsSync(DOCKER_BUNDLED_CLI) ||
|
|
21
|
+
existsSync(ORBSTACK_APP) ||
|
|
22
|
+
ORBSTACK_BUNDLED_DOCKER_PATHS.some((p) => existsSync(p)) ||
|
|
23
|
+
existsSync(orbstackHomeDocker) ||
|
|
24
|
+
commandExists("colima"));
|
|
25
|
+
}
|
|
26
|
+
/** Resolve docker binary on macOS when PATH is not yet updated after cask install. */
|
|
27
|
+
function dockerCliForExec() {
|
|
28
|
+
if (commandExists("docker"))
|
|
29
|
+
return "docker";
|
|
30
|
+
const candidates = [
|
|
31
|
+
DOCKER_BUNDLED_CLI,
|
|
32
|
+
...ORBSTACK_BUNDLED_DOCKER_PATHS,
|
|
33
|
+
join(homedir(), ".orbstack/bin/docker"),
|
|
34
|
+
"/opt/homebrew/bin/docker",
|
|
35
|
+
"/usr/local/bin/docker",
|
|
36
|
+
];
|
|
37
|
+
for (const p of candidates) {
|
|
38
|
+
if (existsSync(p))
|
|
39
|
+
return p;
|
|
40
|
+
}
|
|
41
|
+
return "docker";
|
|
42
|
+
}
|
|
4
43
|
async function runInstall(cmd) {
|
|
5
44
|
await execAsync(cmd);
|
|
6
45
|
}
|
|
7
46
|
const registry = [
|
|
47
|
+
{
|
|
48
|
+
name: "docker",
|
|
49
|
+
check: () => (isMacOS() ? dockerInstalledOnMac() : true),
|
|
50
|
+
installDarwin: () => execShellInteractive("brew install --cask docker"),
|
|
51
|
+
installLinux: () => Promise.resolve(),
|
|
52
|
+
},
|
|
8
53
|
{
|
|
9
54
|
name: "flux-operator",
|
|
10
55
|
check: () => commandExists("flux-operator"),
|
|
@@ -68,10 +113,13 @@ function getDep(name) {
|
|
|
68
113
|
export async function ensureDependency(name) {
|
|
69
114
|
const dep = getDep(name);
|
|
70
115
|
if (dep.check()) {
|
|
71
|
-
log.success(`${dep.name} ✓`);
|
|
72
116
|
return;
|
|
73
117
|
}
|
|
74
|
-
|
|
118
|
+
if (name === "docker" && isMacOS()) {
|
|
119
|
+
log.info("Docker Desktop (Homebrew cask) — if a password dialog appears, enter your Mac login password. Your input is sent to the system installer.");
|
|
120
|
+
await dep.installDarwin();
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
75
123
|
await withSpinner(`Installing ${dep.name}`, async () => {
|
|
76
124
|
if (isMacOS()) {
|
|
77
125
|
await dep.installDarwin();
|
|
@@ -91,4 +139,30 @@ export function checkPrerequisite(name) {
|
|
|
91
139
|
throw new Error(`Required tool '${name}' is not installed.`);
|
|
92
140
|
}
|
|
93
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Ensure Docker Desktop daemon is reachable (macOS / k3d). Opens the app and polls until `docker info` succeeds.
|
|
144
|
+
*/
|
|
145
|
+
export async function ensureDockerDaemonReady() {
|
|
146
|
+
if (!isMacOS())
|
|
147
|
+
return;
|
|
148
|
+
await withSpinner("Waiting for Docker", async () => {
|
|
149
|
+
let bin = dockerCliForExec();
|
|
150
|
+
if (execSafe(`${bin} info`).exitCode === 0)
|
|
151
|
+
return;
|
|
152
|
+
if (existsSync(DOCKER_APP)) {
|
|
153
|
+
await execAsync("open -a Docker").catch(() => { });
|
|
154
|
+
}
|
|
155
|
+
else if (existsSync(ORBSTACK_APP)) {
|
|
156
|
+
await execAsync("open -a OrbStack").catch(() => { });
|
|
157
|
+
}
|
|
158
|
+
const maxAttempts = 90;
|
|
159
|
+
for (let i = 0; i < maxAttempts; i++) {
|
|
160
|
+
bin = dockerCliForExec();
|
|
161
|
+
if (execSafe(`${bin} info`).exitCode === 0)
|
|
162
|
+
return;
|
|
163
|
+
await new Promise((r) => setTimeout(r, 2000));
|
|
164
|
+
}
|
|
165
|
+
throw new Error("Docker daemon did not become ready in time. Start your container runtime (e.g. open -a Docker, open -a OrbStack, or colima start) — https://docs.docker.com/desktop/setup/install/mac-install/");
|
|
166
|
+
});
|
|
167
|
+
}
|
|
94
168
|
//# sourceMappingURL=dependencies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/core/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/core/dependencies.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/shell.d.ts
CHANGED
|
@@ -24,6 +24,13 @@ export declare function execSafe(command: string, opts?: {
|
|
|
24
24
|
export declare function execAsync(command: string, opts?: {
|
|
25
25
|
cwd?: string;
|
|
26
26
|
}): Promise<string>;
|
|
27
|
+
/**
|
|
28
|
+
* Run a shell command with stdio connected to the terminal so interactive prompts work
|
|
29
|
+
* (e.g. macOS administrator password for Homebrew cask installs).
|
|
30
|
+
*/
|
|
31
|
+
export declare function execShellInteractive(command: string, opts?: {
|
|
32
|
+
cwd?: string;
|
|
33
|
+
}): Promise<void>;
|
|
27
34
|
/**
|
|
28
35
|
* Run a command with output streamed to the terminal (inherit stdio).
|
|
29
36
|
*/
|
package/dist/utils/shell.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { execSync, exec as execCb, spawnSync, } from "node:child_process";
|
|
1
|
+
import { execSync, exec as execCb, spawn, spawnSync, } from "node:child_process";
|
|
2
2
|
/**
|
|
3
3
|
* Run a command synchronously, returning trimmed stdout.
|
|
4
4
|
* Throws on non-zero exit.
|
|
@@ -55,6 +55,30 @@ export function execAsync(command, opts) {
|
|
|
55
55
|
});
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* Run a shell command with stdio connected to the terminal so interactive prompts work
|
|
60
|
+
* (e.g. macOS administrator password for Homebrew cask installs).
|
|
61
|
+
*/
|
|
62
|
+
export function execShellInteractive(command, opts) {
|
|
63
|
+
return new Promise((resolve, reject) => {
|
|
64
|
+
const child = spawn(command, {
|
|
65
|
+
shell: true,
|
|
66
|
+
stdio: "inherit",
|
|
67
|
+
cwd: opts?.cwd,
|
|
68
|
+
env: process.env,
|
|
69
|
+
});
|
|
70
|
+
child.on("error", reject);
|
|
71
|
+
child.on("close", (code) => {
|
|
72
|
+
if (code === 0)
|
|
73
|
+
resolve();
|
|
74
|
+
else {
|
|
75
|
+
const err = new Error(`Command failed with exit code ${code}`);
|
|
76
|
+
err.exitCode = code ?? 1;
|
|
77
|
+
reject(err);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
}
|
|
58
82
|
/**
|
|
59
83
|
* Run a command with output streamed to the terminal (inherit stdio).
|
|
60
84
|
*/
|
package/dist/utils/shell.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,IAAI,IAAI,MAAM,EACd,SAAS,GAEV,MAAM,oBAAoB,CAAC;AAQ5B;;;GAGG;AACH,MAAM,UAAU,IAAI,CAClB,OAAe,EACf,IAAqD;IAErD,OAAO,QAAQ,CAAC,OAAO,EAAE;QACvB,QAAQ,EAAE,OAAO;QACjB,GAAG,EAAE,IAAI,EAAE,GAAG;QACd,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;QACrC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QAC/B,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;KAC5B,CAAC,CAAC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CACtB,OAAe,EACf,IAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE;YAC/B,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,IAAI,EAAE,GAAG;YACd,KAAK,EAAE,MAAM;SACd,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,GAA4D,CAAC;QACvE,OAAO;YACL,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE;YACzC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE;YACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;SACxB,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,OAAe,EACf,IAAuB;IAEvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CACJ,OAAO,EACP;YACE,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,IAAI,EAAE,GAAG;YACd,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SAC5B,EACD,CAAC,KAAmB,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE;YACtD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAGhD,CAAC;gBACF,OAAO,CAAC,QAAQ,GAAI,KAA+B,CAAC,IAAyB,CAAC;gBAC9E,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;gBACxB,MAAM,CAAC,OAAO,CAAC,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,IAA6C;IAE7C,QAAQ,CAAC,OAAO,EAAE;QAChB,GAAG,EAAE,IAAI,EAAE,GAAG;QACd,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS;KAChC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CACjB,GAAW,EACX,IAAc,EACd,IAA6C;IAE7C,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE;QAClC,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,MAAM;QAC5B,GAAG,EAAE,IAAI,EAAE,GAAG;KACf,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAG,MAAM,CAAC,MAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;QAC/C,MAAM,EAAG,MAAM,CAAC,MAAiB,EAAE,IAAI,EAAE,IAAI,EAAE;QAC/C,QAAQ,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;IACpD,OAAO,QAAQ,KAAK,CAAC,CAAC;AACxB,CAAC"}
|
|
1
|
+
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/utils/shell.ts"],"names":[],"mappings":"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"}
|