alasio 5.1.0 → 6.0.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 (102) hide show
  1. package/dist/cli/src/branches.js +6 -14
  2. package/dist/cli/src/branches.js.map +1 -1
  3. package/dist/cli/src/capacity.js +46 -0
  4. package/dist/cli/src/capacity.js.map +1 -0
  5. package/dist/cli/src/cluster/k3s.js +12 -4
  6. package/dist/cli/src/cluster/k3s.js.map +1 -1
  7. package/dist/cli/src/commands/branch.js +2 -1
  8. package/dist/cli/src/commands/branch.js.map +1 -1
  9. package/dist/cli/src/commands/restore-filer-store.js +236 -0
  10. package/dist/cli/src/commands/restore-filer-store.js.map +1 -0
  11. package/dist/cli/src/commands/status.js +110 -9
  12. package/dist/cli/src/commands/status.js.map +1 -1
  13. package/dist/cli/src/commands/uninstall.js +1 -1
  14. package/dist/cli/src/commands/uninstall.js.map +1 -1
  15. package/dist/cli/src/commands/up.js +2 -1
  16. package/dist/cli/src/commands/up.js.map +1 -1
  17. package/dist/cli/src/commands.js +2 -1
  18. package/dist/cli/src/commands.js.map +1 -1
  19. package/dist/cli/src/config.js +13 -4
  20. package/dist/cli/src/config.js.map +1 -1
  21. package/dist/cli/src/install.js +9 -3
  22. package/dist/cli/src/install.js.map +1 -1
  23. package/dist/cli/src/kube/api.js +11 -3
  24. package/dist/cli/src/kube/api.js.map +1 -1
  25. package/dist/cli/src/kube/apply.js +116 -13
  26. package/dist/cli/src/kube/apply.js.map +1 -1
  27. package/dist/cli/src/kube/autoscalers.js +48 -0
  28. package/dist/cli/src/kube/autoscalers.js.map +1 -0
  29. package/dist/cli/src/kube/object-store-scale.js +116 -0
  30. package/dist/cli/src/kube/object-store-scale.js.map +1 -0
  31. package/dist/cli/src/kube/rollout.js +2 -0
  32. package/dist/cli/src/kube/rollout.js.map +1 -1
  33. package/dist/cli/src/manifests/admission.js +296 -0
  34. package/dist/cli/src/manifests/admission.js.map +1 -0
  35. package/dist/cli/src/manifests/agent-sandbox.js +6 -3
  36. package/dist/cli/src/manifests/agent-sandbox.js.map +1 -1
  37. package/dist/cli/src/manifests/alasio.js +34 -12
  38. package/dist/cli/src/manifests/alasio.js.map +1 -1
  39. package/dist/cli/src/manifests/cloudeventsources.eventing.keda.sh.json +219 -0
  40. package/dist/cli/src/manifests/clustercloudeventsources.eventing.keda.sh.json +218 -0
  41. package/dist/cli/src/manifests/clustertriggerauthentications.keda.sh.json +997 -0
  42. package/dist/cli/src/manifests/collector.js +77 -38
  43. package/dist/cli/src/manifests/collector.js.map +1 -1
  44. package/dist/cli/src/manifests/common.js +11 -0
  45. package/dist/cli/src/manifests/common.js.map +1 -1
  46. package/dist/cli/src/manifests/config.js +217 -31
  47. package/dist/cli/src/manifests/config.js.map +1 -1
  48. package/dist/cli/src/manifests/controllers.js +39 -0
  49. package/dist/cli/src/manifests/controllers.js.map +1 -0
  50. package/dist/cli/src/manifests/disruption.js +47 -0
  51. package/dist/cli/src/manifests/disruption.js.map +1 -0
  52. package/dist/cli/src/manifests/grafana.js +49 -5
  53. package/dist/cli/src/manifests/grafana.js.map +1 -1
  54. package/dist/cli/src/manifests/headroom.js +40 -0
  55. package/dist/cli/src/manifests/headroom.js.map +1 -0
  56. package/dist/cli/src/manifests/index.js +12 -3
  57. package/dist/cli/src/manifests/index.js.map +1 -1
  58. package/dist/cli/src/manifests/juicefs-csi.js +9 -6
  59. package/dist/cli/src/manifests/juicefs-csi.js.map +1 -1
  60. package/dist/cli/src/manifests/keda.js +271 -0
  61. package/dist/cli/src/manifests/keda.js.map +1 -0
  62. package/dist/cli/src/manifests/lake.js +7 -3
  63. package/dist/cli/src/manifests/lake.js.map +1 -1
  64. package/dist/cli/src/manifests/neon.js +33 -25
  65. package/dist/cli/src/manifests/neon.js.map +1 -1
  66. package/dist/cli/src/manifests/network-policies.js +90 -10
  67. package/dist/cli/src/manifests/network-policies.js.map +1 -1
  68. package/dist/cli/src/manifests/object-store.js +506 -77
  69. package/dist/cli/src/manifests/object-store.js.map +1 -1
  70. package/dist/cli/src/manifests/priorities.js +30 -0
  71. package/dist/cli/src/manifests/priorities.js.map +1 -0
  72. package/dist/cli/src/manifests/scaledjobs.keda.sh.json +7507 -0
  73. package/dist/cli/src/manifests/scaledobjects.keda.sh.json +564 -0
  74. package/dist/cli/src/manifests/scalers.js +24 -0
  75. package/dist/cli/src/manifests/scalers.js.map +1 -0
  76. package/dist/cli/src/manifests/sizing.js +40 -0
  77. package/dist/cli/src/manifests/sizing.js.map +1 -0
  78. package/dist/cli/src/manifests/triggerauthentications.keda.sh.json +992 -0
  79. package/dist/cli/src/manifests/valkey.js +63 -35
  80. package/dist/cli/src/manifests/valkey.js.map +1 -1
  81. package/dist/cli/src/manifests/verticalpodautoscalercheckpoints.autoscaling.k8s.io.json +250 -0
  82. package/dist/cli/src/manifests/verticalpodautoscalers.autoscaling.k8s.io.json +837 -0
  83. package/dist/cli/src/manifests/vpa.js +220 -0
  84. package/dist/cli/src/manifests/vpa.js.map +1 -0
  85. package/dist/cli/src/manifests/workspace-storage.js +12 -2
  86. package/dist/cli/src/manifests/workspace-storage.js.map +1 -1
  87. package/dist/cli/src/object-store.js +57 -0
  88. package/dist/cli/src/object-store.js.map +1 -0
  89. package/dist/cli/src/release.js +6 -6
  90. package/dist/cli/src/target.js +1 -1
  91. package/dist/cli/src/target.js.map +1 -1
  92. package/dist/neon/control/secrets.js +3 -0
  93. package/dist/neon/control/secrets.js.map +1 -1
  94. package/dist/src/kube/busy-label.js +13 -0
  95. package/dist/src/kube/busy-label.js.map +1 -0
  96. package/dist/src/kube/config.js +5 -1
  97. package/dist/src/kube/config.js.map +1 -1
  98. package/dist/src/kube/sandbox-shape.js +62 -0
  99. package/dist/src/kube/sandbox-shape.js.map +1 -0
  100. package/dist/src/sandbox/names.js +44 -0
  101. package/dist/src/sandbox/names.js.map +1 -0
  102. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
- import { Effect } from "effect";
1
+ import { Duration, Effect } from "effect";
2
2
  import { RELEASE } from "../manifests/common.js";
3
- import { describeRef, hasStatus, kind, KubeApi, refOf } from "./api.js";
3
+ import { describeRef, FIELD_MANAGER, hasStatus, kind, KubeApi, refOf } from "./api.js";
4
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";
@@ -16,9 +16,26 @@ export const VOLUME_DRIVER_LABEL = "alasio.dev/volume-driver";
16
16
  const PHASES = [
17
17
  ["CustomResourceDefinition"],
18
18
  ["Namespace", "PriorityClass", "StorageClass", "CSIDriver"],
19
- ["ServiceAccount", "ClusterRole", "ClusterRoleBinding", "Role", "RoleBinding", "ConfigMap", "PersistentVolumeClaim", "Service", "NetworkPolicy"],
19
+ [
20
+ "ServiceAccount",
21
+ "ClusterRole",
22
+ "ClusterRoleBinding",
23
+ "Role",
24
+ "RoleBinding",
25
+ "ConfigMap",
26
+ "PersistentVolumeClaim",
27
+ "Service",
28
+ "NetworkPolicy",
29
+ "PodDisruptionBudget",
30
+ "APIService",
31
+ "MutatingWebhookConfiguration",
32
+ "ValidatingWebhookConfiguration",
33
+ "ValidatingAdmissionPolicy",
34
+ "ValidatingAdmissionPolicyBinding",
35
+ ],
20
36
  ["Job"],
21
37
  ["Deployment", "StatefulSet", "DaemonSet", "CronJob"],
38
+ ["ScaledObject", "VerticalPodAutoscaler"],
22
39
  ];
23
40
  /** The kinds alasio makes, in the order it applies them. */
24
41
  const MADE_KINDS = PHASES.flat().map(kind);
@@ -26,12 +43,41 @@ const MADE_KINDS = PHASES.flat().map(kind);
26
43
  export const WORKLOADS = ["Deployment", "StatefulSet", "DaemonSet"];
27
44
  /**
28
45
  * What holds data, which neither a prune nor a removal deletes unless asked to: volumes,
29
- * the namespaces sessions' volumes are in, and the CRD whose deletion would delete every
30
- * Sandbox, and with them their volumes.
46
+ * the namespaces sessions' volumes are in, and CRDs, whose deletion deletes every object
47
+ * of theirs: every Sandbox, and with them their volumes.
31
48
  */
32
49
  const HOLDS_DATA = new Set(["PersistentVolumeClaim", "Namespace", "CustomResourceDefinition"]);
33
50
  /** Whether `ref` holds data (HOLDS_DATA). */
34
51
  const holdsData = (ref) => HOLDS_DATA.has(ref.kind);
52
+ /** What a controller of the installation finalizes: KEDA lets go of a ScaledObject once it has stopped scaling it. */
53
+ const FINALIZED = new Set(["ScaledObject"]);
54
+ /** The kinds of FINALIZED. */
55
+ const FINALIZED_KINDS = MADE_KINDS.filter(({ kind }) => FINALIZED.has(kind));
56
+ /** How long a controller is given to let go of what it finalizes, past which it is taken not to run; the wait's timeout where that is shorter. */
57
+ const LET_GO = Duration.minutes(1);
58
+ /**
59
+ * Deletes those of `objects` a controller finalizes (FINALIZED), and waits until they are
60
+ * gone. One its controller has not let go of within LET_GO, as where it does not run (KEDA
61
+ * gone, or failing), is let go of here: nothing else would.
62
+ */
63
+ const removeFinalized = Effect.fnUntraced(function* (objects, options) {
64
+ const kube = yield* KubeApi;
65
+ const finalized = objects.filter((object) => FINALIZED.has(object.kind ?? "")).map(refOf);
66
+ if (finalized.length === 0)
67
+ return;
68
+ yield* Effect.forEach(finalized, (ref) => kube.remove(ref), { concurrency: 8, discard: true });
69
+ const letGo = Duration.min(LET_GO, Duration.fromInputUnsafe(options.timeout));
70
+ yield* awaitGone(finalized, { ...options, timeout: letGo }).pipe(Effect.catchTag("NotReadyInTime", () => Effect.gen(function* () {
71
+ const left = (yield* Effect.forEach(finalized, (ref) => kube.get(ref))).filter((object) => object !== null).map(refOf);
72
+ yield* Effect.forEach(left, (ref) => Effect.andThen(Effect.logInfo(`letting go of ${describeRef(ref)}, as its controller has not within ${Duration.toSeconds(letGo)}s`), kube.patch(ref, { metadata: { finalizers: null } }, FIELD_MANAGER)).pipe(Effect.catchIf(hasStatus(404), () => Effect.void)), { discard: true });
73
+ yield* awaitGone(left, options);
74
+ })));
75
+ });
76
+ /** The installation's objects of `kinds` that are not `desired`. */
77
+ const staleOf = (desired, kinds) => {
78
+ const wanted = new Set(desired.map((object) => key(refOf(object))));
79
+ return Effect.map(installed(kinds), (objects) => objects.filter((object) => !wanted.has(key(refOf(object)))));
80
+ };
35
81
  const SANDBOX = kind("Sandbox");
36
82
  const PERSISTENT_VOLUME = kind("PersistentVolume");
37
83
  const PERSISTENT_VOLUME_CLAIM = kind("PersistentVolumeClaim");
@@ -46,13 +92,15 @@ function servedBy(object, volumes) {
46
92
  }
47
93
  /** `volumes` as people read them: their names. */
48
94
  const namesOf = (volumes) => volumes.map(({ metadata }) => metadata?.name ?? "").join(", ");
95
+ /** Whether `object` is the installation's, by its label. */
96
+ export const ofInstallation = (object) => object.metadata?.labels?.[INSTALLATION_LABEL] === RELEASE;
49
97
  /** `object`, labelled as the installation's. */
50
98
  export function labelled(object) {
51
99
  return { ...object, metadata: { ...object.metadata, labels: { ...object.metadata?.labels, [INSTALLATION_LABEL]: RELEASE } } };
52
100
  }
53
101
  const key = (ref) => `${ref.apiVersion}/${ref.kind}/${ref.namespace ?? ""}/${ref.name}`;
54
- /** The installation's objects of `kinds`, as it has them now. */
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())));
102
+ /** The installation's objects of `kinds`, as it has them now: none of a kind whose CRD the cluster lacks. */
103
+ const installed = (kinds) => Effect.flatMap(KubeApi, (kube) => Effect.forEach(kinds, (each) => kube.list(each, { labelSelector: INSTALLATION_SELECTOR }).pipe(Effect.catchIf(hasStatus(404), () => Effect.succeed([]))), { concurrency: 4 }).pipe(Effect.map((lists) => lists.flat())));
56
104
  /** The cluster's volumes. */
57
105
  const persistentVolumes = Effect.flatMap(KubeApi, (kube) => kube.list(PERSISTENT_VOLUME));
58
106
  /** 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. */
@@ -68,14 +116,17 @@ const runJob = Effect.fnUntraced(function* (job, options) {
68
116
  yield* awaitReady([ref], options);
69
117
  yield* kube.remove(ref);
70
118
  });
71
- /** Deletes the installation's objects that are not `desired`, keeping what holds data and what serves volumes that remain. */
72
- const prune = Effect.fnUntraced(function* (desired) {
119
+ /**
120
+ * Deletes the installation's objects that are not `desired`, keeping what holds data and
121
+ * what serves volumes that remain; what a controller finalizes first, until it is gone.
122
+ */
123
+ const prune = Effect.fnUntraced(function* (desired, options) {
73
124
  const kube = yield* KubeApi;
74
- const wanted = new Set(desired.map((object) => key(refOf(object))));
75
125
  // Workloads first, what they need after.
76
- const stale = (yield* installed(MADE_KINDS.toReversed())).filter((object) => !wanted.has(key(refOf(object))));
126
+ const stale = yield* staleOf(desired, MADE_KINDS.toReversed());
127
+ yield* removeFinalized(stale, options);
77
128
  const volumes = stale.length > 0 ? yield* persistentVolumes : [];
78
- for (const object of stale) {
129
+ for (const object of stale.filter(({ kind }) => !FINALIZED.has(kind ?? ""))) {
79
130
  const ref = refOf(object);
80
131
  const served = servedBy(object, volumes);
81
132
  if (holdsData(ref)) {
@@ -90,6 +141,50 @@ const prune = Effect.fnUntraced(function* (desired) {
90
141
  }
91
142
  }
92
143
  });
144
+ /** The manager a workload's replicas are handed over to, from alasio, as its scaler comes to own them (handOverReplicas). */
145
+ export const HANDOVER_MANAGER = "alasio-handover";
146
+ /** Whether alasio's own applies own `object`'s replicas, as its managed fields say. */
147
+ function ownsReplicas({ metadata }) {
148
+ return (metadata?.managedFields ?? []).some(({ manager, operation, fieldsV1 }) => {
149
+ const spec = fieldsV1?.["f:spec"];
150
+ return manager === FIELD_MANAGER && operation === "Apply" && typeof spec === "object" && spec !== null && "f:replicas" in spec;
151
+ });
152
+ }
153
+ /**
154
+ * Hands the replicas of a workload of `objects` rendered without them, as a scaler moves
155
+ * them now (../manifests/common.ts replicasOf), over from alasio's applies, which set them
156
+ * until now, to a manager of their own, at the count it runs: an apply that stops giving a
157
+ * field its only manager gave deletes it, and a workload would drop to one replica until
158
+ * its scaler raised it again. The scaler takes them over from there.
159
+ */
160
+ const handOverReplicas = Effect.fnUntraced(function* (objects) {
161
+ const kube = yield* KubeApi;
162
+ const scaled = objects.filter((object) => (object.kind === "Deployment" || object.kind === "StatefulSet") && object.spec?.replicas === undefined);
163
+ yield* Effect.forEach(scaled, Effect.fnUntraced(function* (object) {
164
+ const ref = refOf(object);
165
+ const live = yield* kube.get(ref);
166
+ const replicas = live?.spec?.replicas;
167
+ if (!live || replicas === undefined || !ownsReplicas(live))
168
+ return;
169
+ yield* Effect.logInfo(`handing the replicas of ${describeRef(ref)} over to its scaler, at ${replicas}`);
170
+ const metadata = { name: ref.name, ...(ref.namespace ? { namespace: ref.namespace } : {}) };
171
+ const handedOver = { apiVersion: ref.apiVersion, kind: ref.kind, metadata, spec: { replicas } };
172
+ yield* kube.apply(handedOver, HANDOVER_MANAGER);
173
+ }), { concurrency: 8, discard: true });
174
+ });
175
+ /**
176
+ * Deletes the PriorityClasses of `objects` whose value or preemption policy the cluster's
177
+ * differs in, which cannot change, so they are made anew. A pod keeps the priority it
178
+ * was given as it was made.
179
+ */
180
+ const replaceChangedClasses = Effect.fnUntraced(function* (objects, options) {
181
+ const kube = yield* KubeApi;
182
+ const changed = yield* Effect.filter(objects.filter(({ kind }) => kind === "PriorityClass"), (wanted) => Effect.map(kube.get(refOf(wanted)), (live) => live !== null && (live.value !== wanted.value || (live.preemptionPolicy ?? "PreemptLowerPriority") !== (wanted.preemptionPolicy ?? "PreemptLowerPriority"))));
183
+ for (const { metadata } of changed)
184
+ yield* Effect.logInfo(`replacing PriorityClass ${metadata?.name}, whose value and preemption cannot change`);
185
+ yield* Effect.forEach(changed, (object) => kube.remove(refOf(object)), { discard: true });
186
+ yield* awaitGone(changed.map(refOf), options);
187
+ });
93
188
  /** The workloads of `objects`. */
94
189
  const workloadsOf = (objects) => objects.filter((object) => WORKLOADS.some((name) => name === object.kind)).map(refOf);
95
190
  /** Applies `objects` in the order of PHASES, as the module says, without waiting for their workloads. */
@@ -106,6 +201,10 @@ const applyPhases = Effect.fnUntraced(function* (objects, options) {
106
201
  yield* runJob(job, options);
107
202
  continue;
108
203
  }
204
+ if (phase.includes("PriorityClass"))
205
+ yield* replaceChangedClasses(batch, options);
206
+ if (phase.includes("Deployment"))
207
+ yield* handOverReplicas(batch);
109
208
  yield* Effect.forEach(batch, (object) => kube.apply(object), { concurrency: 8, discard: true });
110
209
  if (phase.includes("CustomResourceDefinition"))
111
210
  yield* awaitReady(batch.map(refOf), options);
@@ -114,8 +213,11 @@ const applyPhases = Effect.fnUntraced(function* (objects, options) {
114
213
  /** Applies the installation `objects` are, deletes what it no longer has, and waits until its workloads run. */
115
214
  export const applyInstallation = Effect.fnUntraced(function* (objects, options) {
116
215
  const desired = objects.map(labelled);
216
+ // A scaler no longer wanted goes before the workloads are applied, as it would set the
217
+ // replicas they are given back to its own.
218
+ yield* removeFinalized(yield* staleOf(desired, FINALIZED_KINDS), options);
117
219
  yield* applyPhases(desired, options);
118
- yield* prune(desired);
220
+ yield* prune(desired, options);
119
221
  yield* awaitReady(workloadsOf(desired), options);
120
222
  });
121
223
  /**
@@ -155,6 +257,7 @@ const releaseVolumes = Effect.fnUntraced(function* (found, options) {
155
257
  */
156
258
  export const removeInstallation = Effect.fnUntraced(function* ({ purge }, options) {
157
259
  const kube = yield* KubeApi;
260
+ yield* removeFinalized(yield* installed(MADE_KINDS.filter(({ kind }) => FINALIZED.has(kind))), options);
158
261
  const found = yield* installed(MADE_KINDS.toReversed());
159
262
  if (purge)
160
263
  yield* releaseVolumes(found, options);
@@ -1 +1 @@
1
- {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../../src/kube/apply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../../src/kube/apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import { Effect, Schema } from "effect";
2
+ import { EXTERNAL_METRICS } from "../manifests/keda.js";
3
+ import { kind, KubeApi } from "./api.js";
4
+ import { ofInstallation } from "./apply.js";
5
+ /** The cluster's autoscalers are not what the installation's configuration says: what to set, and why. */
6
+ export class AutoscalerMismatch extends Schema.TaggedError()("AutoscalerMismatch", {
7
+ message: Schema.String,
8
+ }) {
9
+ }
10
+ /** Each autoscaler: its key in autoscaling, its name, the CRD that tells a cluster with it, and the kind of the objects it acts on, and how. */
11
+ const AUTOSCALERS = [
12
+ { key: "keda", name: "KEDA", crd: "scaledobjects.keda.sh", kind: "ScaledObject", acts: "scales" },
13
+ { key: "vpa", name: "VPA", crd: "verticalpodautoscalers.autoscaling.k8s.io", kind: "VerticalPodAutoscaler", acts: "sizes" },
14
+ ];
15
+ /**
16
+ * Refuses an installation of `objects`, of the configuration `config`, that the cluster's
17
+ * autoscalers do not fit: an autoscaler of alasio's where the cluster has its own, or,
18
+ * for KEDA, another provider of external metrics, already; or objects of an autoscaler
19
+ * the cluster does not have, which alasio is told not to install.
20
+ */
21
+ export const checkAutoscalers = Effect.fnUntraced(function* (objects, { autoscaling }) {
22
+ const kube = yield* KubeApi;
23
+ for (const { key, name, crd: crdName, kind: acted, acts } of AUTOSCALERS) {
24
+ const crd = yield* kube.get({ ...kind("CustomResourceDefinition"), name: crdName });
25
+ const setting = `install.autoscaling.${key}.enabled`;
26
+ if (autoscaling[key].enabled) {
27
+ if (crd && !ofInstallation(crd)) {
28
+ return yield* new AutoscalerMismatch({ message: `this cluster has a ${name} of its own already, and a cluster has one: ${setting} false uses it` });
29
+ }
30
+ continue;
31
+ }
32
+ // alasio's own CRD, kept from when it installed it, is not the cluster's.
33
+ const named = objects.filter((object) => object.kind === acted).map(({ metadata }) => metadata?.name ?? "");
34
+ if (named.length > 0 && (!crd || ofInstallation(crd))) {
35
+ return yield* new AutoscalerMismatch({ message: `this cluster has no ${name}, which ${acts} ${named.join(", ")}: ${setting} true installs alasio's` });
36
+ }
37
+ }
38
+ if (!autoscaling.keda.enabled)
39
+ return;
40
+ const metrics = yield* kube.get({ ...kind("APIService"), name: EXTERNAL_METRICS });
41
+ if (metrics && !ofInstallation(metrics)) {
42
+ const { namespace = "", name = "" } = metrics.spec?.service ?? {};
43
+ return yield* new AutoscalerMismatch({
44
+ message: `this cluster's external metrics are served by ${namespace}/${name} already, and the API server takes them from one provider, which KEDA must be: install.autoscaling.keda.enabled false uses the cluster's KEDA, where it has one`,
45
+ });
46
+ }
47
+ });
48
+ //# sourceMappingURL=autoscalers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoscalers.js","sourceRoot":"","sources":["../../../../src/kube/autoscalers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * What an installation may not do to the bundled object store's parts as it would to
3
+ * other workloads: change the masters' count, lowered, as their Raft, which keeps where
4
+ * every volume is, would lose its quorum, and with it that, or raised, as one master's
5
+ * state, made without peers, is no Raft's for more to join; or lower the volume servers'
6
+ * while one it would remove still holds volumes, which it would take with it. The first
7
+ * is refused; the second until those volume servers hold none, as their masters say, the
8
+ * way to which the refusal says. Nor start the parts at all while the store still keeps its
9
+ * data on the volume of the one pod it ran as before them. Before anything is applied.
10
+ */
11
+ import { Writable } from "node:stream";
12
+ import { Effect, Schema } from "effect";
13
+ import { NAMESPACE } from "../manifests/common.js";
14
+ import { MASTER, VOLUME_SERVER } from "../manifests/object-store.js";
15
+ import { kind, KubeApi } from "./api.js";
16
+ import { selectorOf } from "./rollout.js";
17
+ /** A change of the object store's scale alasio does not make: why, and what to do instead. */
18
+ export class ObjectStoreScaleRefused extends Schema.TaggedError()("ObjectStoreScaleRefused", {
19
+ message: Schema.String,
20
+ }) {
21
+ }
22
+ /** The volume servers `status` says, by their address. */
23
+ export function dataNodes(status) {
24
+ return (status.Topology?.DataCenters ?? []).flatMap(({ Racks = [] }) => Racks.flatMap(({ DataNodes = [] }) => DataNodes));
25
+ }
26
+ /** The replicas of the StatefulSet `name` among `objects`. */
27
+ const rendered = (objects, name) => objects.find((object) => object.kind === "StatefulSet" && object.metadata?.name === name)?.spec?.replicas;
28
+ /** What a running master's /dir/status says, read in its pod; null where no master runs, or it does not answer. */
29
+ const dirStatus = Effect.gen(function* () {
30
+ const kube = yield* KubeApi;
31
+ const masters = yield* kube.list(kind("Pod"), { namespace: NAMESPACE, labelSelector: selectorOf((yield* kube.get({ ...kind("StatefulSet"), name: MASTER, namespace: NAMESPACE }))?.spec?.selector.matchLabels ?? {}) });
32
+ const running = masters.find(({ status }) => status?.phase === "Running")?.metadata?.name;
33
+ if (!running)
34
+ return null;
35
+ let printed = "";
36
+ const stdout = new Writable({
37
+ write: (chunk, _encoding, done) => {
38
+ printed += chunk.toString("utf8");
39
+ done();
40
+ },
41
+ });
42
+ const exitCode = yield* kube.exec({ namespace: NAMESPACE, pod: running, container: "master" }, ["wget", "-q", "-O", "-", "http://127.0.0.1:9333/dir/status"], {
43
+ stdin: null,
44
+ stdout,
45
+ stderr: new Writable({ write: (_chunk, _encoding, done) => done() }),
46
+ tty: false,
47
+ }).pipe(Effect.orElseSucceed(() => 1));
48
+ return exitCode === 0 ? parsed(printed) : null;
49
+ });
50
+ /** `text` as the masters' /dir/status, or null where it is not JSON. */
51
+ function parsed(text) {
52
+ try {
53
+ return JSON.parse(text);
54
+ }
55
+ catch {
56
+ return null;
57
+ }
58
+ }
59
+ /**
60
+ * Refuses `objects` where the cluster's object store still runs all in one, as alasio before
61
+ * its parts did, its data on that pod's volume, which the parts do not use: started, they
62
+ * would run the stack on a store that is empty. Its data is moved onto them by the cut-over
63
+ * that release's upgrade notes give, which deletes that volume's claim once it has.
64
+ */
65
+ export const checkObjectStoreLayout = Effect.fnUntraced(function* (objects) {
66
+ if (rendered(objects, VOLUME_SERVER) === undefined)
67
+ return;
68
+ const kube = yield* KubeApi;
69
+ const claim = yield* kube.get({ ...kind("PersistentVolumeClaim"), name: ALL_IN_ONE_CLAIM, namespace: NAMESPACE });
70
+ if (claim === null)
71
+ return;
72
+ return yield* new ObjectStoreScaleRefused({
73
+ message: `the object store still keeps its data on the volume of its one pod, the claim ${ALL_IN_ONE_CLAIM}, which this release's parts do not use: ` +
74
+ "they would start the stack on an empty store, so alasio does not apply them; move the data onto them first with the release's cut-over, " +
75
+ `which deletes ${ALL_IN_ONE_CLAIM} once it has`,
76
+ });
77
+ });
78
+ /** The claim of the volume the object store kept its data on while it ran all in one. */
79
+ const ALL_IN_ONE_CLAIM = "data-alasio-seaweedfs-0";
80
+ /** Refuses `objects`' scale of the object store's masters and volume servers where the cluster's would be lowered as alasio does not. */
81
+ export const checkObjectStoreScale = Effect.fnUntraced(function* (objects) {
82
+ const kube = yield* KubeApi;
83
+ const running = (name) => kube.get({ ...kind("StatefulSet"), name, namespace: NAMESPACE }).pipe(Effect.map((found) => found?.spec?.replicas));
84
+ const masters = { now: yield* running(MASTER), then: rendered(objects, MASTER) };
85
+ if (masters.now !== undefined && masters.then !== undefined && masters.then < masters.now) {
86
+ return yield* new ObjectStoreScaleRefused({
87
+ message: `the object store runs ${masters.now} masters, whose Raft keeps where every volume is: fewer would lose its quorum, and that with it, so alasio does not lower their count; objectStore.bundled.masters.scaling stays ${masters.now}`,
88
+ });
89
+ }
90
+ if (masters.now !== undefined && masters.then !== undefined && masters.now > 0 && masters.then > masters.now) {
91
+ return yield* new ObjectStoreScaleRefused({
92
+ message: `the object store runs ${masters.now} master, whose state, made without peers, is no Raft's that more masters could join, so alasio does not raise their count; ` +
93
+ `objectStore.bundled.masters.scaling stays ${masters.now}, as the count of masters is set as the store is made`,
94
+ });
95
+ }
96
+ const now = yield* running(VOLUME_SERVER);
97
+ const then = rendered(objects, VOLUME_SERVER);
98
+ if (now === undefined || then === undefined || then >= now)
99
+ return;
100
+ const removed = Array.from({ length: now - then }, (_, index) => `${VOLUME_SERVER}-${then + index}.`);
101
+ const status = yield* dirStatus;
102
+ const holding = status === null ? null : dataNodes(status).filter(({ Url, Volumes = 0, EcShards = 0 }) => removed.some((name) => Url.startsWith(name)) && Volumes + EcShards > 0);
103
+ if (holding === null) {
104
+ return yield* new ObjectStoreScaleRefused({
105
+ message: `objectStore.bundled.volumeServers.scaling would remove volume servers whose volumes no running master says: alasio lowers their count only once they hold none`,
106
+ });
107
+ }
108
+ if (holding.length > 0) {
109
+ const nodes = holding.map(({ Url }) => Url);
110
+ return yield* new ObjectStoreScaleRefused({
111
+ message: `objectStore.bundled.volumeServers.scaling would remove volume servers that still hold volumes, ${nodes.join(", ")}: move them to the others first, in weed shell in a gateway's buckets container, ` +
112
+ `with lock, then ${nodes.map((node) => `volume.server.evacuate -node ${node} -apply`).join(", ")}, then unlock; then lower their count`,
113
+ });
114
+ }
115
+ });
116
+ //# sourceMappingURL=object-store-scale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-store-scale.js","sourceRoot":"","sources":["../../../../src/kube/object-store-scale.ts"],"names":[],"mappings":"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"}
@@ -189,6 +189,8 @@ const current = (ref) => Effect.flatMap(KubeApi, (kube) => kube.get(ref));
189
189
  export const awaitReady = (refs, options) => awaitAll(refs, (ref) => Effect.map(current(ref), (object) => (object ? readiness(object) : waiting("not found"))), diagnose, options);
190
190
  /** Waits until every ref is gone, its deletion done. */
191
191
  export const awaitGone = (refs, options) => awaitAll(refs, (ref) => Effect.map(current(ref), (object) => (object ? waiting("being deleted") : READY)), (ref) => Effect.map(current(ref), (object) => (object?.metadata?.finalizers?.length ? [`waits on its finalizers: ${object.metadata.finalizers.join(", ")}`] : [])), options);
192
+ /** Waits until every Job ref has ended, complete or failed, or is gone. */
193
+ export const awaitEnded = (refs, options) => awaitAll(refs, (ref) => Effect.map(current(ref), (job) => (job === null || readiness(job)._tag !== "Waiting" ? READY : waiting("running"))), diagnose, options);
192
194
  /** Waits until every volume ref, its claim deleted, is let go of (reclamation). */
193
195
  export const awaitReclaimed = (refs, options) => awaitAll(refs, (ref) => Effect.flatMap(KubeApi, (kube) => Effect.map(kube.get(ref), (volume) => (volume ? reclamation(volume) : READY))), diagnose, options);
194
196
  //# sourceMappingURL=rollout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rollout.js","sourceRoot":"","sources":["../../../../src/kube/rollout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollout.js","sourceRoot":"","sources":["../../../../src/kube/rollout.ts"],"names":[],"mappings":"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"}