alasio 4.0.1 → 4.1.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.
Files changed (40) hide show
  1. package/dist/cli/src/cluster/host.js +47 -0
  2. package/dist/cli/src/cluster/host.js.map +1 -0
  3. package/dist/cli/src/commands/init.js +10 -6
  4. package/dist/cli/src/commands/init.js.map +1 -1
  5. package/dist/cli/src/commands/status.js +11 -4
  6. package/dist/cli/src/commands/status.js.map +1 -1
  7. package/dist/cli/src/commands/uninstall.js +4 -2
  8. package/dist/cli/src/commands/uninstall.js.map +1 -1
  9. package/dist/cli/src/commands/up.js +5 -3
  10. package/dist/cli/src/commands/up.js.map +1 -1
  11. package/dist/cli/src/kube/api.js +6 -0
  12. package/dist/cli/src/kube/api.js.map +1 -1
  13. package/dist/cli/src/kube/apply.js +78 -13
  14. package/dist/cli/src/kube/apply.js.map +1 -1
  15. package/dist/cli/src/kube/rollout.js +31 -3
  16. package/dist/cli/src/kube/rollout.js.map +1 -1
  17. package/dist/cli/src/main.js +2 -1
  18. package/dist/cli/src/main.js.map +1 -1
  19. package/dist/cli/src/manifests/alasio.js +43 -16
  20. package/dist/cli/src/manifests/alasio.js.map +1 -1
  21. package/dist/cli/src/manifests/config.js +106 -2
  22. package/dist/cli/src/manifests/config.js.map +1 -1
  23. package/dist/cli/src/manifests/index.js +6 -1
  24. package/dist/cli/src/manifests/index.js.map +1 -1
  25. package/dist/cli/src/manifests/juicefs-csi.js +303 -0
  26. package/dist/cli/src/manifests/juicefs-csi.js.map +1 -0
  27. package/dist/cli/src/manifests/neon.js +97 -14
  28. package/dist/cli/src/manifests/neon.js.map +1 -1
  29. package/dist/cli/src/manifests/network-policies.js +37 -0
  30. package/dist/cli/src/manifests/network-policies.js.map +1 -1
  31. package/dist/cli/src/manifests/object-store.js +2 -1
  32. package/dist/cli/src/manifests/object-store.js.map +1 -1
  33. package/dist/cli/src/manifests/valkey.js +95 -0
  34. package/dist/cli/src/manifests/valkey.js.map +1 -0
  35. package/dist/cli/src/manifests/workspace-storage.js +134 -0
  36. package/dist/cli/src/manifests/workspace-storage.js.map +1 -0
  37. package/dist/cli/src/release.js +5 -5
  38. package/dist/src/kube/config.js +6 -1
  39. package/dist/src/kube/config.js.map +1 -1
  40. package/package.json +1 -1
@@ -0,0 +1,47 @@
1
+ /**
2
+ * What the local cluster needs of the machine it runs on beyond Docker: inotify limits
3
+ * that hold its file watches. Every process that runs as root in any container on the
4
+ * machine shares fs.inotify.max_user_instances, as root, with the machine's own: k3s,
5
+ * kubelet, containerd's shims, and each pod's, so the kernel's default of 128 runs out
6
+ * once a few dozen pods run, and new pods then fail to start. kind and k3d ask the same
7
+ * of a machine.
8
+ */
9
+ import { Context, Effect, FileSystem, Layer, Schema } from "effect";
10
+ /** The inotify limits the local cluster needs, by their sysctl names: at least these. */
11
+ export const INOTIFY_MINIMUMS = {
12
+ "fs.inotify.max_user_instances": 1024,
13
+ "fs.inotify.max_user_watches": 524288,
14
+ };
15
+ /** Where the inotify limits are raised for every boot: a file of /etc/sysctl.d/. */
16
+ const SYSCTL_FILE = "/etc/sysctl.d/60-inotify.conf";
17
+ /** The kernel's settings on this machine, read by their sysctl names. */
18
+ export class Sysctl extends Context.Service()("alasio/cluster/Sysctl") {
19
+ /** The settings as /proc/sys has them, a name's dots its path's slashes. */
20
+ static layer = Layer.effect(Sysctl, Effect.map(FileSystem.FileSystem, (fs) => Sysctl.of({ read: (name) => fs.readFileString(`/proc/sys/${name.replaceAll(".", "/")}`) })));
21
+ }
22
+ /** A limit lower than the local cluster needs: its sysctl name, its value, and the least it needs. */
23
+ const Shortfall = Schema.Struct({ name: Schema.String, value: Schema.Number, minimum: Schema.Number });
24
+ /** How a shortfall reads. */
25
+ export const describeShortfall = ({ name, value, minimum }) => `${name} is ${value}, and the cluster needs at least ${minimum}`;
26
+ /** This machine's inotify limits are lower than the local cluster needs: which, and how to raise them. */
27
+ export class InotifyLimitsTooLow extends Schema.TaggedError()("InotifyLimitsTooLow", {
28
+ shortfalls: Schema.Array(Shortfall),
29
+ }) {
30
+ get message() {
31
+ return [
32
+ "this machine's inotify limits are too low for the cluster alasio makes on it:",
33
+ ...this.shortfalls.map((shortfall) => ` ${describeShortfall(shortfall)}`),
34
+ "Raise them as root, now:",
35
+ ` sysctl -w ${this.shortfalls.map(({ name, minimum }) => `${name}=${minimum}`).join(" ")}`,
36
+ `and for every boot, in ${SYSCTL_FILE}:`,
37
+ ...this.shortfalls.map(({ name, minimum }) => ` ${name} = ${minimum}`),
38
+ ].join("\n");
39
+ }
40
+ }
41
+ /** The inotify limits of this machine that are lower than the local cluster needs. */
42
+ export const inotifyShortfalls = Effect.flatMap(Sysctl, (sysctl) => Effect.forEach(Object.entries(INOTIFY_MINIMUMS), ([name, minimum]) => Effect.map(sysctl.read(name), (text) => ({ name, value: Number(text.trim()), minimum }))).pipe(
43
+ // One that reads as no number is short too.
44
+ Effect.map((limits) => limits.filter(({ value, minimum }) => !(value >= minimum)))));
45
+ /** Fails with what to raise, and how, when this machine's inotify limits are lower than the local cluster needs. */
46
+ export const requireInotifyLimits = Effect.flatMap(inotifyShortfalls, (shortfalls) => (shortfalls.length > 0 ? Effect.fail(new InotifyLimitsTooLow({ shortfalls })) : Effect.void));
47
+ //# sourceMappingURL=host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../../../src/cluster/host.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { createServer } from "node:net";
13
13
  import { homedir } from "node:os";
14
14
  import { Config, Console, Effect, FileSystem, Option, Predicate, Redacted, Result, Schema } from "effect";
15
15
  import { Command, Flag, Prompt } from "effect/cli";
16
+ import { requireInotifyLimits } from "../cluster/host.js";
16
17
  import { LocalCluster } from "../cluster/local.js";
17
18
  import { configPath, decodeOperatorConfig, defaultStoragePath, readConfig, writeConfig } from "../config.js";
18
19
  import { applyNamespace } from "../install.js";
@@ -21,7 +22,7 @@ import { readClaudeToken, readTelegramBot, writeClaudeToken, writeTelegramBot }
21
22
  import { kubeApi, localCluster, resolveTarget } from "../target.js";
22
23
  import { TelegramBotApi } from "../telegram.js";
23
24
  import { timeoutFlag } from "./common.js";
24
- import { bringUp } from "./up.js";
25
+ import { bringUp, ensureCluster } from "./up.js";
25
26
  /** Something init must be told, and was not, with no questions to ask. */
26
27
  export class SettingMissing extends Schema.TaggedError()("SettingMissing", {
27
28
  setting: Schema.String,
@@ -271,7 +272,11 @@ export const init = Command.make("init", flags, (given) => Effect.gen(function*
271
272
  yield* Console.log(`alasio's config is ${path}; what you leave as it is stays.`);
272
273
  const install = existing?.install ?? {};
273
274
  const target = yield* chooseTarget(given, ask, existing?.file ?? null);
274
- const current = yield* currentSecrets(yield* resolveTarget(yield* Effect.fromResult(decodeOperatorConfig(path, { target, install }))));
275
+ const resolved = yield* resolveTarget(yield* Effect.fromResult(decodeOperatorConfig(path, { target, install })));
276
+ // Before any question, as the cluster here cannot run without them.
277
+ if (resolved._tag === "Local")
278
+ yield* requireInotifyLimits;
279
+ const current = yield* currentSecrets(resolved);
275
280
  const bot = yield* chooseBot(given, ask, current.bot);
276
281
  const claude = yield* chooseClaudeToken(given, ask, current.claude);
277
282
  const host = record(install, "host");
@@ -289,9 +294,7 @@ export const init = Command.make("init", flags, (given) => Effect.gen(function*
289
294
  });
290
295
  yield* Console.log(`wrote ${path}`);
291
296
  const cluster = yield* resolveTarget(config);
292
- if (cluster._tag === "Local") {
293
- yield* Effect.provide(Effect.flatMap(LocalCluster, (local) => local.up(cluster.kubeconfig.path)), localCluster(cluster.cluster));
294
- }
297
+ yield* ensureCluster(cluster);
295
298
  yield* Effect.provide(Effect.gen(function* () {
296
299
  yield* applyNamespace;
297
300
  yield* writeTelegramBot(bot);
@@ -307,7 +310,8 @@ export const init = Command.make("init", flags, (given) => Effect.gen(function*
307
310
  yield* Console.log("alasio up starts it.");
308
311
  })).pipe(Command.withShortDescription("Set alasio up: its bot, its tokens, and where it runs"), Command.withDescription("Asks for the bot's token (checked with Telegram) and who may use it, Claude Code's token, whether agents may work in this " +
309
312
  "machine's folders and as whom, and where telemetry goes; writes the config, which holds no secret; makes the cluster on " +
310
- "this machine, unless --kubeconfig names another; writes the tokens there, as Secrets; and offers to start alasio. Run it " +
313
+ "this machine, unless --kubeconfig names another, once this machine's inotify limits are high enough for it (it says how " +
314
+ "to raise them first); writes the tokens there, as Secrets; and offers to start alasio. Run it " +
311
315
  "again to change something: it shows what is set and keeps what you leave. Tokens are never flags, which other users of " +
312
316
  "the machine can see: give them in files (--bot-token-file, --claude-token-file), or as TELEGRAM_BOT_TOKEN and " +
313
317
  "CLAUDE_CODE_OAUTH_TOKEN."));
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC1G,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,kBAAkB,EAA2B,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACtI,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAoB,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACvH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAuB,aAAa,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,0EAA0E;AAC1E,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE;IACzF,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM;CACpB,CAAC;IACA,IAAa,OAAO;QAClB,OAAO,qBAAqB,IAAI,CAAC,OAAO,kBAAkB,IAAI,CAAC,IAAI,gDAAgD,CAAC;IACtH,CAAC;CACF;AAED,+CAA+C;AAC/C,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE;IACzF,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,MAAM,EAAE,MAAM,CAAC,MAAM;CACtB,CAAC;IACA,IAAa,OAAO;QAClB,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IAC1C,CAAC;CACF;AAED,6GAA6G;AAC7G,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAS,CAAC,MAAM,EAAE,EAAE;IAClD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;QACjC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,kGAAkG;AAClG,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7E,CAAC;AAED,sEAAsE;AACtE,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACpE,CAAC;AAED,0GAA0G;AAC1G,SAAS,SAAS,CAAC,IAAY,EAAE,KAA0B;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC;IAC7G,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;QAAE,IAAI,GAAG,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC;IAC9E,OAAO,IAAI,CAAC;AACd,CAAC;AAaD,sDAAsD;AACtD,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CACzD,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACtE,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC9E,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAEnF;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,IAAuC,EAAE,MAA2B;IACxF,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3F,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1I,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM;SACjB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SAC5G,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IACL,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,OAAO;QACL,GAAG,IAAI;QACP,OAAO,EAAE,IAAI;QACb,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,gBAAgB;QAChI,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED,8DAA8D;AAC9D,SAAS,MAAM,CAAC,MAAyC,EAAE,GAAW;IACpE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAA2C,CAAC,CAAC,CAAC,EAAE,CAAC;AAChH,CAAC;AAED,8BAA8B;AAC9B,SAAS,OAAO,CAAC,EAAqC,EAAE,GAAW;IACjE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,GAAG,CAAC,KAAuC,EAAE,EAAE,CAAC,CAAC,KAAa,EAAiC,EAAE;IAC/G,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG;IACZ,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CACxC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACxB,IAAI,CAAC,eAAe,CAAC,iGAAiG,CAAC,CACxH;IACD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,8DAA8D,CAAC,CAAC;IACnK,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAC9C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACxB,IAAI,CAAC,eAAe,CAAC,4EAA4E,CAAC,CACnG;IACD,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAClD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EACvB,IAAI,CAAC,eAAe,CAAC,+DAA+D,CAAC,CACtF;IACD,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CACpD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACxB,IAAI,CAAC,eAAe,CAAC,6FAA6F,CAAC,CACpH;IACD,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,IAAI,CACtD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,eAAe,CAAC,oFAAoF,CAAC,CAC3G;IACD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,kDAAkD,CAAC,CAAC;IACpJ,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,oEAAoE,CAAC,CAAC;IACnK,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAClC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EACzB,IAAI,CAAC,eAAe,CAAC,4DAA4D,CAAC,CACnF;IACD,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,IAAI,CACvD,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EACvB,IAAI,CAAC,eAAe,CAAC,qFAAqF,CAAC,CAC5G;IACD,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAClD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EACvB,IAAI,CAAC,eAAe,CAAC,+FAA+F,CAAC,CACtH;IACD,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,0DAA0D,CAAC,CAAC;IAC5H,OAAO,EAAE,WAAW;CACrB,CAAC;AAIF,qGAAqG;AACrG,MAAM,MAAM,GAAG,CACb,IAAsB,EACtB,GAAY,EACZ,KAAqC,EACrC,SAAyC,EACL,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;AAE1H,kIAAkI;AAClI,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAY,EAAE,GAAY,EAAE,QAAmC;IAC9G,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACpE,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IACjN,CAAC;IACD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;IACrC,MAAM,KAAK,GAAG,GAAG;QACf,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,0BAA0B;YACnC,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,sDAAsD,EAAE;gBACtG,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE;aAChG;SACF,CAAC;QACF,CAAC,CAAC,OAAO,CAAC;IACZ,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YAChC,OAAO,EAAE,2DAA2D;YACpE,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;SAC7G,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,sDAAsD,EAAE,CAAC,CAAC;QAC1G,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;IACxF,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC;AACzG,CAAC,CAAC,CAAC;AAEH,2HAA2H;AAC3H,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,MAAsB;IACvE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACjI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,CAAC;YAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACrH,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/G,CAAC,CAAC,CAAC;AAEH,sIAAsI;AACtI,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAY,EAAE,GAAY,EAAE,OAA2B;IACnG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC;IACvC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;QACrD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACzF,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAChE,IAAI,KAAwB,CAAC;IAC7B,IAAI,QAAgB,CAAC;IACrB,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;QAC5B,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACf,gFAAgF;QAChF,IAAI,OAAO,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAC5B,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YACrB,OAAO,EAAE,mCAAmC,OAAO,CAAC,CAAC,CAAC,kBAAkB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAClG,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,OAAO;gBAC5B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBACvB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAChD,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAClB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,EACF,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAC1C;SACN,CAAC,CACH,CAAC,IAAI,EAAE,CAAC;QACT,KAAK,GAAG,OAAO,KAAK,EAAE,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3E,QAAQ,GAAG,OAAO,CAAC;IACrB,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,wCAAwC,EAAE,CAAC,CAAC;IACnH,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAC3B,KAAK,CAAC,cAAc,EACpB,GAAG,EACH,GAAG,EAAE,CACH,MAAM,CAAC,MAAM,CAAC;QACZ,OAAO,EAAE,qFAAqF;QAC9F,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAChD,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC;KAC7G,CAAC,EACJ,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAC3L,CAAC;IACF,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,cAAc;QAAE,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,4CAA4C,EAAE,CAAC,CAAC;IAC/I,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAwB,CAAC;AACnE,CAAC,CAAC,CAAC;AAEH,iIAAiI;AACjI,MAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAY,EAAE,GAAY,EAAE,OAAiC;IACjH,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5I,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACjF,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACnD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAC5B,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACrB,OAAO,EAAE,uDAAuD,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,qBAAqB,GAAG;QAC5H,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KACzG,CAAC,CACH,CAAC,IAAI,EAAE,CAAC;IACT,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACvE,CAAC,CAAC,CAAC;AAEH,kFAAkF;AAClF,MAAM,kBAAkB,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAY,EAAE,GAAY,EAAE,IAAuC;IACxH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAC1B,KAAK,CAAC,gBAAgB,EACtB,GAAG,EACH,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,uEAAuE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,EAC7I,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,CAC/C,CAAC;IACF,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC;IACvF,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC;IACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAC5B,KAAK,CAAC,IAAI,EACV,GAAG,EACH,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAC/K,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CACtC,CAAC;IACF,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC9F,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChF,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,MAAM,CACxB,KAAK,CAAC,IAAI,EACV,GAAG,EACH,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,6CAA6C,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,EACnM,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAClC,CAAC;IACF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC,CAAC;IACvH,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE,OAAO,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpK,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,MAAM,CAC/B,KAAK,CAAC,OAAO,EACb,GAAG,EACH,GAAG,EAAE,CACH,MAAM,CAAC,MAAM,CAAC;QACZ,OAAO,EAAE,gEAAgE;QACzE,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC;QACjC,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;KACvF,CAAC,EACJ,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAC/C,CAAC;IACF,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;IAC3G,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAyB,CAAC;AAC9F,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,uBAAuB,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,KAAY,EAAE,GAAY,EAAE,OAAe;IACrG,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC;IAChJ,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAC5B,KAAK,CAAC,iBAAiB,EACvB,GAAG,EACH,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,6EAA6E,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAC9J,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAC9B,CAAC;IACF,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,IAAI,OAAO;QAAE,OAAO,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACpG,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACxD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC;IAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,QAAQ;QAAE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,kCAAkC,CAAC,CAAC;IAC/F,MAAM,OAAO,GAAG,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvI,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE5I,MAAM,iBAAiB,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACnH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE;QACtC,MAAM;QACN,OAAO,EAAE;YACP,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC;YACjD,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvF;KACF,CAAC,CAAC;IACH,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAEpC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACnI,CAAC;IACD,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,KAAK,CAAC,CAAC,cAAc,CAAC;QACtB,KAAK,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,KAAK,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC,CAAC,EACF,OAAO,CAAC,OAAO,CAAC,CACjB,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IACnE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iDAAiD,GAAG,CAAC,QAAQ,WAAW,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAEtI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/I,IAAI,KAAK;QAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;;QAC5C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC,CAAC,IAAI,CACN,OAAO,CAAC,oBAAoB,CAAC,uDAAuD,CAAC,EACrF,OAAO,CAAC,eAAe,CACrB,4HAA4H;IAC1H,0HAA0H;IAC1H,2HAA2H;IAC3H,yHAAyH;IACzH,gHAAgH;IAChH,0BAA0B,CAC7B,CACF,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  /** `alasio status`: what runs, and whether it is healthy. */
2
2
  import { Console, Effect, Schema } from "effect";
3
3
  import { Command } from "effect/cli";
4
+ import { describeShortfall, InotifyLimitsTooLow, inotifyShortfalls } from "../cluster/host.js";
4
5
  import { LocalCluster } from "../cluster/local.js";
5
6
  import { loadConfig } from "../config.js";
6
7
  import { describeRef, kind, KubeApi, refOf } from "../kube/api.js";
7
- import { INSTALLATION_SELECTOR } from "../kube/apply.js";
8
+ import { INSTALLATION_SELECTOR, WORKLOADS } from "../kube/apply.js";
8
9
  import { diagnose, readiness } from "../kube/rollout.js";
9
10
  import { RELEASE } from "../manifests/common.js";
10
11
  import { describeTarget, kubeApi, localCluster, resolveTarget } from "../target.js";
@@ -23,17 +24,20 @@ export class Unhealthy extends Schema.TaggedError()("Unhealthy", {
23
24
  export const status = Command.make("status", {}, () => Effect.gen(function* () {
24
25
  const config = yield* loadConfig;
25
26
  const target = yield* resolveTarget(config);
27
+ const shortfalls = target._tag === "Local" ? yield* inotifyShortfalls : [];
26
28
  if (target._tag === "Local") {
27
29
  const { docker, nodes } = yield* Effect.provide(Effect.flatMap(LocalCluster, (cluster) => cluster.status), localCluster(target.cluster));
28
30
  yield* Console.log(`cluster ${target.cluster.name}, in Docker ${docker}:`);
29
31
  yield* Console.log(nodes.length > 0 ? nodes.map(({ name, state }) => ` ${name}: ${state}`).join("\n") : " not made");
32
+ for (const shortfall of shortfalls)
33
+ yield* Console.log(` this machine's ${describeShortfall(shortfall)}`);
30
34
  const server = nodes.find(({ role }) => role === "server");
31
35
  if (server?.state !== "running")
32
36
  return yield* new ClusterNotRunning({ cluster: target.cluster.name, made: server !== undefined });
33
37
  }
34
38
  yield* Effect.provide(Effect.gen(function* () {
35
39
  const kube = yield* KubeApi;
36
- const workloads = (yield* Effect.forEach(["Deployment", "StatefulSet"], (name) => kube.list(kind(name), { labelSelector: INSTALLATION_SELECTOR })))
40
+ const workloads = (yield* Effect.forEach(WORKLOADS, (name) => kube.list(kind(name), { labelSelector: INSTALLATION_SELECTOR })))
37
41
  .flat()
38
42
  .sort((a, b) => (a.metadata?.name ?? "").localeCompare(b.metadata?.name ?? ""));
39
43
  const version = workloads.find((object) => object.kind === "Deployment" && object.metadata?.name === RELEASE)?.metadata?.labels?.["app.kubernetes.io/version"];
@@ -53,6 +57,9 @@ export const status = Command.make("status", {}, () => Effect.gen(function* () {
53
57
  if (workloads.length === 0 || notReady > 0)
54
58
  return yield* new Unhealthy({ notReady, of: workloads.length });
55
59
  }), kubeApi(target));
56
- })).pipe(Command.withShortDescription("Say what runs, and whether it is healthy"), Command.withDescription("Says where alasio runs (and, for the cluster on this machine, its nodes), its version, and each of its workloads: " +
57
- "ready, or what it is at and why. Exits with 1 when something is not ready."));
60
+ if (shortfalls.length > 0)
61
+ return yield* new InotifyLimitsTooLow({ shortfalls });
62
+ })).pipe(Command.withShortDescription("Say what runs, and whether it is healthy"), Command.withDescription("Says where alasio runs (and, for the cluster on this machine, its nodes, and this machine's inotify limits when they are " +
63
+ "too low for it), its version, and each of its workloads: ready, or what it is at and why. Exits with 1 when something " +
64
+ "is not ready, or the limits are too low."));
58
65
  //# sourceMappingURL=status.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,8 @@ export const uninstall = Command.make("uninstall", {
42
42
  ? `alasio is removed from ${where}, with all its data.`
43
43
  : `alasio is removed from ${where}; its volumes, namespaces and Secrets are kept, and alasio up installs it again with them.`);
44
44
  })).pipe(Command.withShortDescription("Remove alasio"), Command.withDescription("Removes alasio's objects from its cluster, after confirmation, keeping what holds data: volumes, namespaces (with alasio's Secrets " +
45
- "and its workspaces), and the Sandbox CRD, so alasio up installs it again as it was. With --purge it removes those too, and " +
46
- "when alasio runs in the cluster it made on this machine, that cluster with all it keeps. The config file is kept either way."));
45
+ "and its workspaces), and the Sandbox CRD, so alasio up installs it again as it was; and what serves volumes that remain, " +
46
+ "their StorageClasses and CSI drivers. With --purge it removes those too, workspaces and their volumes before the drivers " +
47
+ "that delete their data, and when alasio runs in the cluster it made on this machine, that cluster with all it keeps. The " +
48
+ "config file is kept either way."));
47
49
  //# sourceMappingURL=uninstall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/commands/uninstall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../../src/commands/uninstall.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
1
  /** `alasio up`: makes or starts the local cluster, applies alasio, and waits until it runs. */
2
2
  import { Console, Effect } from "effect";
3
3
  import { Command } from "effect/cli";
4
+ import { requireInotifyLimits } from "../cluster/host.js";
4
5
  import { LocalCluster } from "../cluster/local.js";
5
6
  import { loadConfig } from "../config.js";
6
7
  import { install } from "../install.js";
7
8
  import { VERSION } from "../release.js";
8
9
  import { describeTarget, kubeApi, localCluster, resolveTarget } from "../target.js";
9
10
  import { timeoutFlag, waitOptions } from "./common.js";
10
- /** Makes or starts the local cluster when it is the target, writing its kubeconfig; nothing for another. */
11
+ /** Makes or starts the local cluster when it is the target, once this machine's inotify limits hold it, writing its kubeconfig; nothing for another. */
11
12
  export const ensureCluster = (target) => target._tag === "Local"
12
- ? Effect.provide(Effect.flatMap(LocalCluster, (cluster) => cluster.up(target.kubeconfig.path)), localCluster(target.cluster))
13
+ ? Effect.andThen(requireInotifyLimits, Effect.provide(Effect.flatMap(LocalCluster, (cluster) => cluster.up(target.kubeconfig.path)), localCluster(target.cluster)))
13
14
  : Effect.void;
14
15
  /** Where alasio runs, and what the operator does next. */
15
16
  export const announce = (target, { bot, claude }) => Console.log([
@@ -27,7 +28,8 @@ export const bringUp = Effect.fnUntraced(function* (config, timeout) {
27
28
  const installed = yield* Effect.provide(install(config, waitOptions(timeout)), kubeApi(target));
28
29
  yield* announce(target, installed);
29
30
  });
30
- export const up = Command.make("up", { timeout: timeoutFlag }, ({ timeout }) => Effect.flatMap(loadConfig, (config) => bringUp(config, timeout))).pipe(Command.withShortDescription("Start alasio, installing or updating it"), Command.withDescription("Makes the cluster on this machine, or starts it, when that is where alasio runs; applies alasio as the config says, " +
31
+ export const up = Command.make("up", { timeout: timeoutFlag }, ({ timeout }) => Effect.flatMap(loadConfig, (config) => bringUp(config, timeout))).pipe(Command.withShortDescription("Start alasio, installing or updating it"), Command.withDescription("Makes the cluster on this machine, or starts it, when that is where alasio runs, once this machine's inotify limits " +
32
+ "are high enough for it (it says how to raise them); applies alasio as the config says, " +
31
33
  "with this version's images; and waits until it runs, saying what it waits for. Run it again after changing the config. " +
32
34
  "Past --timeout it says what is still not running and why."));
33
35
  //# sourceMappingURL=up.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"up.js","sourceRoot":"","sources":["../../../../src/commands/up.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAkB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAuB,aAAa,EAAE,MAAM,cAAc,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAsB,EAAE,EAAE,CACtD,MAAM,CAAC,IAAI,KAAK,OAAO;IACrB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7H,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;AAElB,0DAA0D;AAC1D,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAsB,EAAE,EAAE,GAAG,EAAE,MAAM,EAAa,EAAuB,EAAE,CAClG,OAAO,CAAC,GAAG,CACT;IACE,UAAU,OAAO,YAAY,cAAc,CAAC,MAAM,CAAC,GAAG;IACtD,EAAE;IACF,WAAW,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,UAAU,6BAA6B;IACtF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,2FAA2F,CAAC,CAAC;IAChH,mDAAmD;IACnD,oEAAoE;CACrE,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AAEJ,kFAAkF;AAClF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,MAAsB,EAAE,OAA0C;IACnH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChG,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CACpJ,OAAO,CAAC,oBAAoB,CAAC,yCAAyC,CAAC,EACvE,OAAO,CAAC,eAAe,CACrB,sHAAsH;IACpH,yHAAyH;IACzH,2DAA2D,CAC9D,CACF,CAAC"}
1
+ {"version":3,"file":"up.js","sourceRoot":"","sources":["../../../../src/commands/up.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAkB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAuB,aAAa,EAAE,MAAM,cAAc,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEvD,wJAAwJ;AACxJ,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAsB,EAAE,EAAE,CACtD,MAAM,CAAC,IAAI,KAAK,OAAO;IACrB,CAAC,CAAC,MAAM,CAAC,OAAO,CACd,oBAAoB,EACpB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAC5H;IACD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;AAElB,0DAA0D;AAC1D,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAsB,EAAE,EAAE,GAAG,EAAE,MAAM,EAAa,EAAuB,EAAE,CAClG,OAAO,CAAC,GAAG,CACT;IACE,UAAU,OAAO,YAAY,cAAc,CAAC,MAAM,CAAC,GAAG;IACtD,EAAE;IACF,WAAW,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,UAAU,6BAA6B;IACtF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,2FAA2F,CAAC,CAAC;IAChH,mDAAmD;IACnD,oEAAoE;CACrE,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AAEJ,kFAAkF;AAClF,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,MAAsB,EAAE,OAA0C;IACnH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChG,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CACpJ,OAAO,CAAC,oBAAoB,CAAC,yCAAyC,CAAC,EACvE,OAAO,CAAC,eAAe,CACrB,sHAAsH;IACpH,yFAAyF;IACzF,yHAAyH;IACzH,2DAA2D,CAC9D,CACF,CAAC"}
@@ -21,6 +21,10 @@ const KINDS = {
21
21
  CustomResourceDefinition: { apiVersion: "apiextensions.k8s.io/v1", plural: "customresourcedefinitions", namespaced: false },
22
22
  Namespace: { apiVersion: "v1", plural: "namespaces", namespaced: false },
23
23
  Node: { apiVersion: "v1", plural: "nodes", namespaced: false },
24
+ PersistentVolume: { apiVersion: "v1", plural: "persistentvolumes", namespaced: false },
25
+ PriorityClass: { apiVersion: "scheduling.k8s.io/v1", plural: "priorityclasses", namespaced: false },
26
+ StorageClass: { apiVersion: "storage.k8s.io/v1", plural: "storageclasses", namespaced: false },
27
+ CSIDriver: { apiVersion: "storage.k8s.io/v1", plural: "csidrivers", namespaced: false },
24
28
  ClusterRole: { apiVersion: "rbac.authorization.k8s.io/v1", plural: "clusterroles", namespaced: false },
25
29
  ClusterRoleBinding: { apiVersion: "rbac.authorization.k8s.io/v1", plural: "clusterrolebindings", namespaced: false },
26
30
  Role: { apiVersion: "rbac.authorization.k8s.io/v1", plural: "roles", namespaced: true },
@@ -35,8 +39,10 @@ const KINDS = {
35
39
  NetworkPolicy: { apiVersion: "networking.k8s.io/v1", plural: "networkpolicies", namespaced: true },
36
40
  Deployment: { apiVersion: "apps/v1", plural: "deployments", namespaced: true },
37
41
  StatefulSet: { apiVersion: "apps/v1", plural: "statefulsets", namespaced: true },
42
+ DaemonSet: { apiVersion: "apps/v1", plural: "daemonsets", namespaced: true },
38
43
  Job: { apiVersion: "batch/v1", plural: "jobs", namespaced: true },
39
44
  CronJob: { apiVersion: "batch/v1", plural: "cronjobs", namespaced: true },
45
+ Sandbox: { apiVersion: "agents.x-k8s.io/v1beta1", plural: "sandboxes", namespaced: true },
40
46
  };
41
47
  /** The kind of that name. */
42
48
  export function kind(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/kube/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/kube/api.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,29 @@
1
1
  import { Effect } from "effect";
2
2
  import { RELEASE } from "../manifests/common.js";
3
- import { describeRef, kind, KubeApi, refOf } from "./api.js";
4
- import { awaitGone, awaitReady, selectorOf } from "./rollout.js";
3
+ import { describeRef, hasStatus, kind, KubeApi, refOf } from "./api.js";
4
+ import { awaitGone, awaitReady, awaitReclaimed, selectorOf } from "./rollout.js";
5
5
  /** The label every object of an installation carries, whose value is the installation: what prune and removal find its objects by. */
6
6
  const INSTALLATION_LABEL = "alasio.dev/installation";
7
7
  /** The installation's objects, as a label selector. */
8
8
  export const INSTALLATION_SELECTOR = selectorOf({ [INSTALLATION_LABEL]: RELEASE });
9
+ /**
10
+ * The label of what a CSI driver needs to delete its volumes' data, beside its CSIDriver,
11
+ * whose value is the driver's name: its controller and node service, what they run as,
12
+ * and what they reach the data with (its metadata engine, its credentials).
13
+ */
14
+ export const VOLUME_DRIVER_LABEL = "alasio.dev/volume-driver";
9
15
  /** The kinds alasio makes, in the order it applies them; each phase's objects are applied together. */
10
16
  const PHASES = [
11
17
  ["CustomResourceDefinition"],
12
- ["Namespace"],
18
+ ["Namespace", "PriorityClass", "StorageClass", "CSIDriver"],
13
19
  ["ServiceAccount", "ClusterRole", "ClusterRoleBinding", "Role", "RoleBinding", "ConfigMap", "PersistentVolumeClaim", "Service", "NetworkPolicy"],
14
20
  ["Job"],
15
- ["Deployment", "StatefulSet", "CronJob"],
21
+ ["Deployment", "StatefulSet", "DaemonSet", "CronJob"],
16
22
  ];
17
23
  /** The kinds alasio makes, in the order it applies them. */
18
24
  const MADE_KINDS = PHASES.flat().map(kind);
25
+ /** The kinds of the workloads alasio waits for until they run. */
26
+ export const WORKLOADS = ["Deployment", "StatefulSet", "DaemonSet"];
19
27
  /**
20
28
  * What holds data, which neither a prune nor a removal deletes unless asked to: volumes,
21
29
  * the namespaces sessions' volumes are in, and the CRD whose deletion would delete every
@@ -24,13 +32,29 @@ const MADE_KINDS = PHASES.flat().map(kind);
24
32
  const HOLDS_DATA = new Set(["PersistentVolumeClaim", "Namespace", "CustomResourceDefinition"]);
25
33
  /** Whether `ref` holds data (HOLDS_DATA). */
26
34
  const holdsData = (ref) => HOLDS_DATA.has(ref.kind);
35
+ const SANDBOX = kind("Sandbox");
36
+ const PERSISTENT_VOLUME = kind("PersistentVolume");
37
+ const PERSISTENT_VOLUME_CLAIM = kind("PersistentVolumeClaim");
38
+ /**
39
+ * Of `volumes`, those `object` serves: a CSI driver's, by its CSIDriver or
40
+ * VOLUME_DRIVER_LABEL, those it provisioned; a StorageClass's, those of its class.
41
+ */
42
+ function servedBy(object, volumes) {
43
+ const name = object.metadata?.name;
44
+ const driver = object.kind === "CSIDriver" ? name : object.metadata?.labels?.[VOLUME_DRIVER_LABEL];
45
+ return volumes.filter(({ spec }) => (driver !== undefined && spec?.csi?.driver === driver) || (object.kind === "StorageClass" && spec?.storageClassName === name));
46
+ }
47
+ /** `volumes` as people read them: their names. */
48
+ const namesOf = (volumes) => volumes.map(({ metadata }) => metadata?.name ?? "").join(", ");
27
49
  /** `object`, labelled as the installation's. */
28
50
  export function labelled(object) {
29
51
  return { ...object, metadata: { ...object.metadata, labels: { ...object.metadata?.labels, [INSTALLATION_LABEL]: RELEASE } } };
30
52
  }
31
53
  const key = (ref) => `${ref.apiVersion}/${ref.kind}/${ref.namespace ?? ""}/${ref.name}`;
32
54
  /** The installation's objects of `kinds`, as it has them now. */
33
- const installed = (kinds) => Effect.flatMap(KubeApi, (kube) => Effect.forEach(kinds, (each) => kube.list(each, { labelSelector: INSTALLATION_SELECTOR }), { concurrency: 4 }).pipe(Effect.map((lists) => lists.flat().map(refOf))));
55
+ const installed = (kinds) => Effect.flatMap(KubeApi, (kube) => Effect.forEach(kinds, (each) => kube.list(each, { labelSelector: INSTALLATION_SELECTOR }), { concurrency: 4 }).pipe(Effect.map((lists) => lists.flat())));
56
+ /** The cluster's volumes. */
57
+ const persistentVolumes = Effect.flatMap(KubeApi, (kube) => kube.list(PERSISTENT_VOLUME));
34
58
  /** Runs `job` to completion afresh: one of its name that ran before is deleted first, as a Job's pod template cannot change, and it is deleted once done. */
35
59
  const runJob = Effect.fnUntraced(function* (job, options) {
36
60
  const kube = yield* KubeApi;
@@ -44,16 +68,22 @@ const runJob = Effect.fnUntraced(function* (job, options) {
44
68
  yield* awaitReady([ref], options);
45
69
  yield* kube.remove(ref);
46
70
  });
47
- /** Deletes the installation's objects that are not `desired`, keeping what holds data. */
71
+ /** Deletes the installation's objects that are not `desired`, keeping what holds data and what serves volumes that remain. */
48
72
  const prune = Effect.fnUntraced(function* (desired) {
49
73
  const kube = yield* KubeApi;
50
74
  const wanted = new Set(desired.map((object) => key(refOf(object))));
51
75
  // Workloads first, what they need after.
52
- const stale = (yield* installed(MADE_KINDS.toReversed())).filter((ref) => !wanted.has(key(ref)));
53
- for (const ref of stale) {
76
+ const stale = (yield* installed(MADE_KINDS.toReversed())).filter((object) => !wanted.has(key(refOf(object))));
77
+ const volumes = stale.length > 0 ? yield* persistentVolumes : [];
78
+ for (const object of stale) {
79
+ const ref = refOf(object);
80
+ const served = servedBy(object, volumes);
54
81
  if (holdsData(ref)) {
55
82
  yield* Effect.logInfo(`kept ${describeRef(ref)}, no longer part of alasio, as it holds data; alasio uninstall --purge deletes it`);
56
83
  }
84
+ else if (served.length > 0) {
85
+ yield* Effect.logInfo(`kept ${describeRef(ref)}, no longer part of alasio, as volumes it serves remain (${namesOf(served)}); alasio up deletes it once they are gone`);
86
+ }
57
87
  else {
58
88
  yield* kube.remove(ref);
59
89
  yield* Effect.logInfo(`deleted ${describeRef(ref)}, no longer part of alasio`);
@@ -81,16 +111,51 @@ export const applyInstallation = Effect.fnUntraced(function* (objects, options)
81
111
  yield* awaitReady(batch.map(refOf), options);
82
112
  }
83
113
  yield* prune(desired);
84
- yield* awaitReady(ofPhase(["Deployment", "StatefulSet"]).map(refOf), options);
114
+ yield* awaitReady(ofPhase(WORKLOADS).map(refOf), options);
115
+ });
116
+ /**
117
+ * Lets go of the volumes the installation's CSI drivers and StorageClasses (of `found`,
118
+ * its objects) serve that are claimed in its namespaces, while the drivers can still
119
+ * delete their data: deletes the Sandboxes in its namespaces, whose pods use them, and
120
+ * waits until they are gone; then deletes the claims, and waits until each volume is
121
+ * deleted, or released and kept as its reclaim policy says.
122
+ */
123
+ const releaseVolumes = Effect.fnUntraced(function* (found, options) {
124
+ const kube = yield* KubeApi;
125
+ const namespaces = found.flatMap((object) => (object.kind === "Namespace" && object.metadata?.name ? [object.metadata.name] : []));
126
+ const volumes = (yield* persistentVolumes).filter((volume) => namespaces.includes(volume.spec?.claimRef?.namespace ?? "") && found.some((object) => servedBy(object, [volume]).length > 0));
127
+ if (volumes.length === 0)
128
+ return;
129
+ yield* Effect.logInfo(`deleting alasio's Sandboxes, and the claims of the volumes ${namesOf(volumes)}, while what serves them can still delete their data`);
130
+ // None where the Sandbox CRD is gone already.
131
+ const sandboxes = (yield* Effect.forEach(namespaces, (namespace) => kube.list(SANDBOX, { namespace }).pipe(Effect.catchIf(hasStatus(404), () => Effect.succeed([]))))).flat().map(refOf);
132
+ yield* Effect.forEach(sandboxes, (ref) => kube.remove(ref), { concurrency: 8, discard: true });
133
+ yield* awaitGone(sandboxes, options);
134
+ const claims = volumes.map(({ spec }) => ({ ...PERSISTENT_VOLUME_CLAIM, namespace: spec?.claimRef?.namespace, name: spec?.claimRef?.name ?? "" }));
135
+ yield* Effect.forEach(claims, (ref) => kube.remove(ref), { concurrency: 8, discard: true });
136
+ yield* awaitReclaimed(volumes.map(refOf), options);
85
137
  });
86
- /** Deletes the installation's objects, but for what holds data unless `purge`, and with `purge` waits until that is gone: what it deleted. */
138
+ /**
139
+ * Deletes the installation's objects, but for what serves volumes that remain, and what
140
+ * holds data unless `purge`; with `purge` it lets go of the volumes its CSI drivers and
141
+ * StorageClasses serve first, and waits until what holds data is gone: what it deleted.
142
+ */
87
143
  export const removeInstallation = Effect.fnUntraced(function* ({ purge }, options) {
88
144
  const kube = yield* KubeApi;
89
145
  const found = yield* installed(MADE_KINDS.toReversed());
90
- const removed = found.filter((ref) => purge || !holdsData(ref));
146
+ if (purge)
147
+ yield* releaseVolumes(found, options);
148
+ const volumes = yield* persistentVolumes;
149
+ const removed = found.filter((object) => (purge || !holdsData(refOf(object))) && servedBy(object, volumes).length === 0).map(refOf);
91
150
  yield* Effect.forEach(removed, (ref) => kube.remove(ref), { concurrency: 8, discard: true });
92
- for (const ref of found.filter((each) => !removed.includes(each)))
93
- yield* Effect.logInfo(`kept ${describeRef(ref)}, as it holds data`);
151
+ for (const object of found) {
152
+ const ref = refOf(object);
153
+ const served = servedBy(object, volumes);
154
+ if (served.length > 0)
155
+ yield* Effect.logInfo(`kept ${describeRef(ref)}, as volumes it serves remain (${namesOf(served)})`);
156
+ else if (!purge && holdsData(ref))
157
+ yield* Effect.logInfo(`kept ${describeRef(ref)}, as it holds data`);
158
+ }
94
159
  if (purge)
95
160
  yield* awaitGone(removed.filter(holdsData), options);
96
161
  return removed;