alasio 5.1.0 → 7.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 (132) hide show
  1. package/dist/cli/src/branches.js +53 -22
  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/docker-engine.js +6 -4
  6. package/dist/cli/src/cluster/docker-engine.js.map +1 -1
  7. package/dist/cli/src/cluster/docker.js +49 -10
  8. package/dist/cli/src/cluster/docker.js.map +1 -1
  9. package/dist/cli/src/cluster/host.js +45 -19
  10. package/dist/cli/src/cluster/host.js.map +1 -1
  11. package/dist/cli/src/cluster/k3s.js +109 -9
  12. package/dist/cli/src/cluster/k3s.js.map +1 -1
  13. package/dist/cli/src/cluster/node.js +94 -50
  14. package/dist/cli/src/cluster/node.js.map +1 -1
  15. package/dist/cli/src/cluster/tar.js +43 -1
  16. package/dist/cli/src/cluster/tar.js.map +1 -1
  17. package/dist/cli/src/commands/branch.js +9 -4
  18. package/dist/cli/src/commands/branch.js.map +1 -1
  19. package/dist/cli/src/commands/restore-filer-store.js +247 -0
  20. package/dist/cli/src/commands/restore-filer-store.js.map +1 -0
  21. package/dist/cli/src/commands/status.js +141 -12
  22. package/dist/cli/src/commands/status.js.map +1 -1
  23. package/dist/cli/src/commands/uninstall.js +1 -1
  24. package/dist/cli/src/commands/uninstall.js.map +1 -1
  25. package/dist/cli/src/commands/up.js +42 -4
  26. package/dist/cli/src/commands/up.js.map +1 -1
  27. package/dist/cli/src/commands/upgrade.js +22 -6
  28. package/dist/cli/src/commands/upgrade.js.map +1 -1
  29. package/dist/cli/src/commands.js +2 -1
  30. package/dist/cli/src/commands.js.map +1 -1
  31. package/dist/cli/src/config.js +13 -4
  32. package/dist/cli/src/config.js.map +1 -1
  33. package/dist/cli/src/cpu-baseline.js +97 -0
  34. package/dist/cli/src/cpu-baseline.js.map +1 -0
  35. package/dist/cli/src/install.js +44 -11
  36. package/dist/cli/src/install.js.map +1 -1
  37. package/dist/cli/src/kept-releases.js +59 -0
  38. package/dist/cli/src/kept-releases.js.map +1 -0
  39. package/dist/cli/src/kube/api.js +13 -5
  40. package/dist/cli/src/kube/api.js.map +1 -1
  41. package/dist/cli/src/kube/apply.js +116 -13
  42. package/dist/cli/src/kube/apply.js.map +1 -1
  43. package/dist/cli/src/kube/autoscalers.js +48 -0
  44. package/dist/cli/src/kube/autoscalers.js.map +1 -0
  45. package/dist/cli/src/kube/object-store-scale.js +116 -0
  46. package/dist/cli/src/kube/object-store-scale.js.map +1 -0
  47. package/dist/cli/src/kube/rollout.js +23 -0
  48. package/dist/cli/src/kube/rollout.js.map +1 -1
  49. package/dist/cli/src/manifests/admission.js +416 -0
  50. package/dist/cli/src/manifests/admission.js.map +1 -0
  51. package/dist/cli/src/manifests/agent-sandbox.js +6 -3
  52. package/dist/cli/src/manifests/agent-sandbox.js.map +1 -1
  53. package/dist/cli/src/manifests/alasio.js +165 -25
  54. package/dist/cli/src/manifests/alasio.js.map +1 -1
  55. package/dist/cli/src/manifests/branch.js +2 -1
  56. package/dist/cli/src/manifests/branch.js.map +1 -1
  57. package/dist/cli/src/manifests/cloudeventsources.eventing.keda.sh.json +219 -0
  58. package/dist/cli/src/manifests/clustercloudeventsources.eventing.keda.sh.json +218 -0
  59. package/dist/cli/src/manifests/clustertriggerauthentications.keda.sh.json +997 -0
  60. package/dist/cli/src/manifests/collector.js +92 -45
  61. package/dist/cli/src/manifests/collector.js.map +1 -1
  62. package/dist/cli/src/manifests/common.js +34 -8
  63. package/dist/cli/src/manifests/common.js.map +1 -1
  64. package/dist/cli/src/manifests/config.js +273 -35
  65. package/dist/cli/src/manifests/config.js.map +1 -1
  66. package/dist/cli/src/manifests/controllers.js +39 -0
  67. package/dist/cli/src/manifests/controllers.js.map +1 -0
  68. package/dist/cli/src/manifests/disruption.js +47 -0
  69. package/dist/cli/src/manifests/disruption.js.map +1 -0
  70. package/dist/cli/src/manifests/grafana.js +66 -10
  71. package/dist/cli/src/manifests/grafana.js.map +1 -1
  72. package/dist/cli/src/manifests/headroom.js +40 -0
  73. package/dist/cli/src/manifests/headroom.js.map +1 -0
  74. package/dist/cli/src/manifests/index.js +20 -6
  75. package/dist/cli/src/manifests/index.js.map +1 -1
  76. package/dist/cli/src/manifests/juicefs-csi.js +9 -6
  77. package/dist/cli/src/manifests/juicefs-csi.js.map +1 -1
  78. package/dist/cli/src/manifests/keda.js +271 -0
  79. package/dist/cli/src/manifests/keda.js.map +1 -0
  80. package/dist/cli/src/manifests/lake.js +13 -5
  81. package/dist/cli/src/manifests/lake.js.map +1 -1
  82. package/dist/cli/src/manifests/neon.js +196 -51
  83. package/dist/cli/src/manifests/neon.js.map +1 -1
  84. package/dist/cli/src/manifests/network-policies.js +177 -28
  85. package/dist/cli/src/manifests/network-policies.js.map +1 -1
  86. package/dist/cli/src/manifests/node-agent.js +107 -0
  87. package/dist/cli/src/manifests/node-agent.js.map +1 -0
  88. package/dist/cli/src/manifests/object-store.js +543 -82
  89. package/dist/cli/src/manifests/object-store.js.map +1 -1
  90. package/dist/cli/src/manifests/priorities.js +31 -0
  91. package/dist/cli/src/manifests/priorities.js.map +1 -0
  92. package/dist/cli/src/manifests/scaledjobs.keda.sh.json +7507 -0
  93. package/dist/cli/src/manifests/scaledobjects.keda.sh.json +564 -0
  94. package/dist/cli/src/manifests/scalers.js +24 -0
  95. package/dist/cli/src/manifests/scalers.js.map +1 -0
  96. package/dist/cli/src/manifests/sizing.js +40 -0
  97. package/dist/cli/src/manifests/sizing.js.map +1 -0
  98. package/dist/cli/src/manifests/triggerauthentications.keda.sh.json +992 -0
  99. package/dist/cli/src/manifests/valkey.js +63 -35
  100. package/dist/cli/src/manifests/valkey.js.map +1 -1
  101. package/dist/cli/src/manifests/verticalpodautoscalercheckpoints.autoscaling.k8s.io.json +250 -0
  102. package/dist/cli/src/manifests/verticalpodautoscalers.autoscaling.k8s.io.json +837 -0
  103. package/dist/cli/src/manifests/vpa.js +220 -0
  104. package/dist/cli/src/manifests/vpa.js.map +1 -0
  105. package/dist/cli/src/manifests/workspace-storage.js +12 -2
  106. package/dist/cli/src/manifests/workspace-storage.js.map +1 -1
  107. package/dist/cli/src/object-store.js +57 -0
  108. package/dist/cli/src/object-store.js.map +1 -0
  109. package/dist/cli/src/release.js +6 -6
  110. package/dist/cli/src/target.js +1 -1
  111. package/dist/cli/src/target.js.map +1 -1
  112. package/dist/cluster/node/pins.json +6 -2
  113. package/dist/neon/control/branches.js +31 -12
  114. package/dist/neon/control/branches.js.map +1 -1
  115. package/dist/neon/control/endpoints.js +108 -0
  116. package/dist/neon/control/endpoints.js.map +1 -0
  117. package/dist/neon/control/scram.js +13 -1
  118. package/dist/neon/control/scram.js.map +1 -1
  119. package/dist/neon/control/secrets.js +52 -8
  120. package/dist/neon/control/secrets.js.map +1 -1
  121. package/dist/src/kube/busy-label.js +13 -0
  122. package/dist/src/kube/busy-label.js.map +1 -0
  123. package/dist/src/kube/config.js +30 -4
  124. package/dist/src/kube/config.js.map +1 -1
  125. package/dist/src/kube/sandbox-shape.js +98 -0
  126. package/dist/src/kube/sandbox-shape.js.map +1 -0
  127. package/dist/src/node-agent/names.js +74 -0
  128. package/dist/src/node-agent/names.js.map +1 -0
  129. package/dist/src/sandbox/names.js +44 -0
  130. package/dist/src/sandbox/names.js.map +1 -0
  131. package/package.json +2 -2
  132. package/dist/cluster/node/config-v3.toml.tmpl +0 -12
@@ -1,6 +1,23 @@
1
+ /**
2
+ * alasio itself: its Deployment, its telemetry receiver's Service, the
3
+ * namespaces its workspaces run in, its identity in them, and the templates it makes
4
+ * its workspaces' Sandboxes from (src/kube/config.ts); main's, or a branch environment's
5
+ * in its own namespaces (./branch.ts), and main's Service of the forks it makes for them.
6
+ */
7
+ import { isDeepStrictEqual } from "node:util";
8
+ import { Result } from "effect";
1
9
  import { BRANCH_FORK_PORT, branchSessionsNamespace } from "../../../src/branch/names.js";
10
+ import { decodeKubeTemplates } from "../../../src/kube/config.js";
11
+ import { CPU_FEATURES_ANNOTATION } from "../../../src/kube/sandbox-shape.js";
12
+ import { gvisorRuntimeClass, NODE_AGENT_PORT, NODE_AGENT_TOKEN_VARIABLE } from "../../../src/node-agent/names.js";
13
+ import { gvisorReleases, NODE_PINS } from "../cluster/node.js";
2
14
  import { imageReference } from "../images.js";
3
- import { BRANCH_FORK_SECRET, BRANCH_LABEL, componentName, databaseSecret, envOf, given, goJson, helperResources, hostVolumeMounts, hostVolumes, imagePullSecrets, labels, MAIN_ENVIRONMENT, NAMESPACE, otelEnv, RELEASE, restrictedContainer, restrictedPod, rolePasswords, selectorLabels, sha256, } from "./common.js";
15
+ import { alasioAccount, busyLabelPolicy, cloneJobPolicy, resumedConditionPolicy, sandboxPolicy, sandboxPolicyName, secretPolicy } from "./admission.js";
16
+ import { BRANCH_FORK_SECRET, BRANCH_LABEL, componentName, databaseSecret, envOf, given, goJson, helperResources, hostVolumeMounts, hostVolumes, imagePullSecrets, labels, MAIN_ENVIRONMENT, NAMESPACE, nodeAgentRuns, ONE, otelEnv, RELEASE, replicasOf, restrictedContainer, restrictedPod, roleVerifiers, selectorLabels, sha256, } from "./common.js";
17
+ import { durationSeconds } from "./config.js";
18
+ import { busyBudget } from "./disruption.js";
19
+ import { priority } from "./priorities.js";
20
+ import { verticalPodAutoscaler } from "./sizing.js";
4
21
  import { cloneJob } from "./workspace-storage.js";
5
22
  /** The port every workspace's bayma serves MCP on. */
6
23
  const BAYMA_PORT = 7290;
@@ -20,9 +37,11 @@ function workspaceNamespaces(config, environment) {
20
37
  * session (its parent does, src/branch/fork.ts) nor removes JuiceFS's mount pods, which
21
38
  * are main's to drive.
22
39
  */
23
- function sessionsProfile(config, environment) {
40
+ function sessionsProfile(config, environment, { cpuBaseline, gvisorReleases }) {
24
41
  const { sessions, workspaceStorage } = config;
25
42
  const main = environment.branch === null;
43
+ // Snapshotted once every node's CPU features are known, its sandboxes held to those all have.
44
+ const snapshotted = main && nodeAgentRuns(config) && cpuBaseline !== null;
26
45
  const agent = imageReference(config.images.agent);
27
46
  const storageClassName = sessions.storage.storageClassName || (workspaceStorage.enabled ? workspaceStorage.storageClassName : "");
28
47
  // On workspace storage, the volume's mounts follow its mount pod's, as upstream's
@@ -39,9 +58,24 @@ function sessionsProfile(config, environment) {
39
58
  fullModeNameservers: [...sessions.fullModeNameservers],
40
59
  ...(main && mountPodsRemoved(config) ? { mountPodNamespace: workspaceStorage.csi.namespace } : {}),
41
60
  podTemplate: {
42
- metadata: { labels: { "app.kubernetes.io/part-of": "alasio", "app.kubernetes.io/instance": RELEASE, "app.kubernetes.io/component": "session" } },
61
+ metadata: {
62
+ labels: { "app.kubernetes.io/part-of": "alasio", "app.kubernetes.io/instance": RELEASE, "app.kubernetes.io/component": "session" },
63
+ // Under gVisor, /tmp is a tmpfs of the sandbox's own, by gVisor's mount hints, rather
64
+ // than the emptyDir's directory on the node: a snapshot of the sandbox holds it, as it
65
+ // holds the files that bayma's runtimes keep open there.
66
+ annotations: {
67
+ "dev.gvisor.spec.mount.tmp.share": "container",
68
+ "dev.gvisor.spec.mount.tmp.type": "tmpfs",
69
+ "dev.gvisor.spec.mount.tmp.options": "rw",
70
+ ...(snapshotted ? { [CPU_FEATURES_ANNOTATION]: cpuBaseline.join(",") } : {}),
71
+ },
72
+ },
43
73
  spec: {
44
74
  ...(sessions.runtimeClassName ? { runtimeClassName: sessions.runtimeClassName } : {}),
75
+ ...priority("turn"),
76
+ // A pod that ends is ended: alasio brings the session up in a new one, and nothing
77
+ // starts bayma again in a sandbox that a snapshot has just ended.
78
+ restartPolicy: "Never",
45
79
  securityContext: { ...restrictedPod(1000, 1000), ...ownership },
46
80
  ...imagePullSecrets(config),
47
81
  ...given("nodeSelector", { ...sessions.nodeSelector }),
@@ -96,6 +130,26 @@ function sessionsProfile(config, environment) {
96
130
  },
97
131
  }],
98
132
  ...(main && sessionsForked(config) ? { clone: { claimTemplate: "data", job: cloneJob(config) } } : {}),
133
+ ...(snapshotted ? { snapshots: sessionSnapshots(config, gvisorReleases) } : {}),
134
+ };
135
+ }
136
+ /**
137
+ * How session sandboxes are snapshotted as they are released (src/sandbox/snapshots.ts),
138
+ * where the node agents run: once sessions.snapshots.releaseAfter has passed without an
139
+ * exec or a turn, under the gVisor `releases` alasio keeps (../kept-releases.ts), the
140
+ * current one first, each restored with a RuntimeClass of its own, by the agents in
141
+ * alasio's namespace.
142
+ */
143
+ function sessionSnapshots(config, releases) {
144
+ return {
145
+ // A duration, as the configuration checks it.
146
+ releaseAfterSeconds: durationSeconds(config.sessions.snapshots.releaseAfter) ?? 0,
147
+ releases: releases.map((release) => ({ release, runtimeClassName: gvisorRuntimeClass(release) })),
148
+ agents: {
149
+ namespace: NAMESPACE,
150
+ selector: Object.entries(selectorLabels("node-agent")).map(([label, value]) => `${label}=${value}`).join(","),
151
+ port: NODE_AGENT_PORT,
152
+ },
99
153
  };
100
154
  }
101
155
  /** Whether alasio forks sessions: where their volumes are workspace storage's, which JuiceFS clones. */
@@ -114,6 +168,7 @@ function hostProfile(config) {
114
168
  spec: {
115
169
  // May restart alasio, by rolling out its Deployment, as an agent restarts it.
116
170
  serviceAccountName: componentName("host-agent"),
171
+ ...priority("turn"),
117
172
  securityContext: {
118
173
  runAsUser: host.uid,
119
174
  runAsGroup: host.gid,
@@ -146,10 +201,59 @@ function hostProfile(config) {
146
201
  },
147
202
  };
148
203
  }
204
+ /** What a cluster keeps where up has found nothing of it yet: no baseline, and the releases pinned. */
205
+ export const NOTHING_KEPT = { cpuBaseline: null, gvisorReleases: gvisorReleases(NODE_PINS) };
206
+ /** Nothing carried forward: a first installation's, and a branch environment's. */
207
+ export const NOTHING_CARRIED = { previousSessions: null, ...NOTHING_KEPT };
208
+ /** The ConfigMap of the templates, by its name. */
209
+ export const SANDBOX_TEMPLATES = componentName("sandbox-templates");
210
+ /**
211
+ * What the installation `config` describes, with what the cluster keeps, `kept`, carries
212
+ * forward from `live`, the templates of the installation it replaces (its ConfigMap's
213
+ * `templates.json`, if it has one): the sessions' profile it ran, where their template
214
+ * changes, or else the one it carried. A profile is carried for one change of the
215
+ * template, and no more. Pure, for tests.
216
+ *
217
+ * What it carries is pinned whole into the Sandbox policy (./admission.ts) as a template
218
+ * alasio may make a Sandbox from, read back from the cluster rather than rendered from the
219
+ * config: the ConfigMap is the anchor of that trust. It is one as long as only the
220
+ * operator, by `alasio up`, writes it: alasio's ServiceAccount may write no ConfigMap
221
+ * (./alasio.ts identity). Were alasio given that, it could write any pod template into
222
+ * the ConfigMap, and the next `up` would let it make Sandboxes of it.
223
+ */
224
+ export function carriedFrom(config, live, kept) {
225
+ const nothing = { ...NOTHING_CARRIED, ...kept };
226
+ if (!config.sessions.enabled || live === undefined)
227
+ return nothing;
228
+ // Carried as the ConfigMap held them, which alasio read as they are: the profile a snapshot recorded the hash of.
229
+ if (Result.isFailure(decodeKubeTemplates(SANDBOX_TEMPLATES, live)))
230
+ return nothing;
231
+ const held = JSON.parse(live);
232
+ if (!held.sessions)
233
+ return nothing;
234
+ // The current profile as the ConfigMap holds it, to compare with what it held.
235
+ const current = JSON.parse(goJson(sessionsProfile(config, MAIN_ENVIRONMENT, kept), ""));
236
+ return { previousSessions: isDeepStrictEqual(held.sessions.podTemplate, current.podTemplate) ? (held.previousSessions ?? null) : held.sessions, ...kept };
237
+ }
238
+ /**
239
+ * The CPU baseline the installation whose templates are `live` (as carriedFrom takes
240
+ * them) holds sessions to: what its sessions' template sets, if anything.
241
+ */
242
+ export function recordedCpuBaseline(live) {
243
+ if (live === undefined || Result.isFailure(decodeKubeTemplates(SANDBOX_TEMPLATES, live)))
244
+ return null;
245
+ const held = JSON.parse(live);
246
+ const recorded = held.sessions?.podTemplate.metadata?.annotations?.[CPU_FEATURES_ANNOTATION];
247
+ return recorded ? recorded.split(",") : null;
248
+ }
149
249
  /** The ConfigMap of the templates, and their checksum, which alasio's pod carries so it is replaced when they change. */
150
- function sandboxTemplates(config, environment) {
151
- const name = componentName("sandbox-templates");
152
- const templates = goJson({ ...(config.sessions.enabled ? { sessions: sessionsProfile(config, environment) } : {}), ...(config.host.enabled ? { host: hostProfile(config) } : {}) }, " ");
250
+ function sandboxTemplates(config, environment, carried) {
251
+ const name = SANDBOX_TEMPLATES;
252
+ const templates = goJson({
253
+ ...(config.sessions.enabled ? { sessions: sessionsProfile(config, environment, carried) } : {}),
254
+ ...(config.sessions.enabled && carried.previousSessions ? { previousSessions: carried.previousSessions } : {}),
255
+ ...(config.host.enabled ? { host: hostProfile(config) } : {}),
256
+ }, " ");
153
257
  return {
154
258
  configMap: { apiVersion: "v1", kind: "ConfigMap", metadata: { name, namespace: environment.namespace, labels: labels("alasio") }, data: { "templates.json": templates } },
155
259
  checksum: sha256(templates),
@@ -185,11 +289,11 @@ export function forksForBranches(config) {
185
289
  }
186
290
  /**
187
291
  * The roles main's alasio makes for what reads its Neon beside it (common.ts
188
- * rolePasswords); a branch environment's makes none, as it has none of them, and is given
189
- * none of their passwords.
292
+ * roleVerifiers); a branch environment's makes none, as it has none of them, and is given
293
+ * none of their verifiers.
190
294
  */
191
295
  function readerRoles(config, { branch }) {
192
- return branch === null ? rolePasswords(config) : [];
296
+ return branch === null ? roleVerifiers(config) : [];
193
297
  }
194
298
  /** alasio's environment: where its templates, state, database and receiver are, and what the configuration adds. */
195
299
  function alasioEnv(config, home, operatorHome, environment) {
@@ -202,10 +306,11 @@ function alasioEnv(config, home, operatorHome, environment) {
202
306
  ...(operatorHome ? [] : [{ name: "ALASIO_KEEP_CODEX_LOGIN", value: "1" }]),
203
307
  { name: "ALASIO_DEPLOYMENT", value: RELEASE },
204
308
  { name: "ALASIO_NAMESPACE", valueFrom: { fieldRef: { fieldPath: "metadata.namespace" } } },
309
+ { name: "ALASIO_POD", valueFrom: { fieldRef: { fieldPath: "metadata.name" } } },
205
310
  { name: "TELEGRAM_BOT_TOKEN", valueFrom: { secretKeyRef: { name: alasio.telegram.existingSecret, key: "token" } } },
206
311
  { name: "TELEGRAM_ALLOWED_USER_IDS", valueFrom: { secretKeyRef: { name: alasio.telegram.existingSecret, key: "allowedUserIds" } } },
207
312
  { name: "ALASIO_DATABASE_URL_FILE", value: "/run/alasio/database/url" },
208
- { name: "ALASIO_LAKE_PASSWORD_FILE", value: "/run/alasio/database/lake-password" },
313
+ { name: "ALASIO_LAKE_VERIFIER_FILE", value: "/run/alasio/database/lake-verifier" },
209
314
  ...readerRoles(config, environment).map(({ key, variable }) => ({ name: variable, value: `/run/alasio/database/${key}` })),
210
315
  { name: "ALASIO_LAKE_ENABLED", value: config.lake.enabled && config.neon.enabled ? "1" : "0" },
211
316
  { name: "ALASIO_TELEMETRY_RECEIVER_SERVICE", value: `${componentName("telemetry")}.${environment.namespace}.svc` },
@@ -215,6 +320,10 @@ function alasioEnv(config, home, operatorHome, environment) {
215
320
  ...(alasio.claude.existingSecret
216
321
  ? [{ name: "CLAUDE_CODE_OAUTH_TOKEN", valueFrom: { secretKeyRef: { name: alasio.claude.existingSecret, key: alasio.claude.key } } }]
217
322
  : []),
323
+ // What it presents to the node agents, which snapshot its sessions.
324
+ ...(environment.branch === null && nodeAgentRuns(config)
325
+ ? [{ name: NODE_AGENT_TOKEN_VARIABLE, valueFrom: { secretKeyRef: { name: componentName("node-agent"), key: "token" } } }]
326
+ : []),
218
327
  ...branchEnv(config, environment),
219
328
  ...otelEnv(config, environment),
220
329
  ...envOf(alasio.env),
@@ -244,13 +353,14 @@ function deployment(config, templatesChecksum, environment) {
244
353
  kind: "Deployment",
245
354
  metadata: { name: RELEASE, namespace: environment.namespace, labels: labels("alasio") },
246
355
  spec: {
247
- replicas: 1,
356
+ ...replicasOf(ONE),
248
357
  strategy: { type: "Recreate" },
249
358
  selector: { matchLabels: selectorLabels("alasio") },
250
359
  template: {
251
360
  metadata: { labels: labels("alasio"), annotations: { "checksum/sandbox-templates": templatesChecksum } },
252
361
  spec: {
253
362
  serviceAccountName: RELEASE,
363
+ ...priority("turn"),
254
364
  // alasio finishes its turns' bookkeeping and records what it interrupts as it stops.
255
365
  terminationGracePeriodSeconds: 60,
256
366
  securityContext: { ...restrictedPod(uid, gid), ...given("supplementalGroups", groups) },
@@ -285,7 +395,7 @@ function deployment(config, templatesChecksum, environment) {
285
395
  name: "database",
286
396
  secret: {
287
397
  secretName: databaseSecret(config),
288
- items: ["url", "lake-password", ...readerRoles(config, environment).map(({ key }) => key)].map((key) => ({ key, path: key })),
398
+ items: ["url", "lake-verifier", ...readerRoles(config, environment).map(({ key }) => key)].map((key) => ({ key, path: key })),
289
399
  },
290
400
  },
291
401
  ...branchSecret,
@@ -364,10 +474,13 @@ function mountPodsRemoved({ workspaceStorage }) {
364
474
  }
365
475
  /**
366
476
  * alasio's identity: it drives its workspaces' Sandboxes, their token Secrets, and reads
367
- * files from sessions through exec, in the namespaces it owns; where it forks sessions,
368
- * reads sessions' volume claims and runs the Jobs that clone them in its own; and, where
369
- * it installs JuiceFS's driver, lists and deletes pods in the driver's namespace, its
370
- * mount pods; and nothing else.
477
+ * files from sessions through exec, in the namespaces it owns, labelling their pods busy
478
+ * while turns run in them, as it does its own in its namespace (src/kube/busy.ts); where
479
+ * it snapshots sessions, sets a restored session's readiness; where it forks
480
+ * sessions, reads sessions' volume claims and runs the Jobs that clone them in its own;
481
+ * where the node agents run, watches pods in its own, theirs among them; and, where it
482
+ * installs JuiceFS's driver, lists and deletes pods in the driver's namespace, its mount
483
+ * pods; and nothing else.
371
484
  */
372
485
  function identity(config, environment) {
373
486
  const main = environment.branch === null;
@@ -385,12 +498,16 @@ function identity(config, environment) {
385
498
  metadata: inDriverNamespace,
386
499
  rules: [{ apiGroups: [""], resources: ["pods"], verbs: ["list", "delete"] }],
387
500
  };
388
- const inOwnNamespace = { name: RELEASE, namespace: NAMESPACE, labels: labels("alasio") };
389
- const clones = {
501
+ const inOwnNamespace = { name: RELEASE, namespace: environment.namespace, labels: labels("alasio") };
502
+ const own = {
390
503
  apiVersion: "rbac.authorization.k8s.io/v1",
391
504
  kind: "Role",
392
505
  metadata: inOwnNamespace,
393
- rules: [{ apiGroups: ["batch"], resources: ["jobs"], verbs: ["create", "get", "delete"] }],
506
+ rules: [
507
+ // Its own pod's busy label; and each node's agent, found by its pod on the node.
508
+ { apiGroups: [""], resources: ["pods"], verbs: main && nodeAgentRuns(config) ? ["list", "watch", "patch"] : ["list", "patch"] },
509
+ ...(main && sessionsForked(config) ? [{ apiGroups: ["batch"], resources: ["jobs"], verbs: ["create", "get", "delete"] }] : []),
510
+ ],
394
511
  };
395
512
  const serviceAccount = { apiVersion: "v1", kind: "ServiceAccount", metadata: { name: RELEASE, namespace: environment.namespace, labels: labels("alasio") } };
396
513
  return [
@@ -398,6 +515,7 @@ function identity(config, environment) {
398
515
  ...workspaceNamespaces(config, environment).flatMap((namespace) => {
399
516
  const metadata = { name: RELEASE, namespace, labels: labels("alasio") };
400
517
  const forked = main && sessionsForked(config) && namespace === config.sessions.namespace;
518
+ const snapshotted = main && nodeAgentRuns(config) && namespace === config.sessions.namespace;
401
519
  const role = {
402
520
  apiVersion: "rbac.authorization.k8s.io/v1",
403
521
  kind: "Role",
@@ -405,14 +523,19 @@ function identity(config, environment) {
405
523
  rules: [
406
524
  { apiGroups: ["agents.x-k8s.io"], resources: ["sandboxes"], verbs: ["get", "list", "watch", "create", "patch", "delete"] },
407
525
  { apiGroups: [""], resources: ["secrets"], verbs: ["get", "create"] },
408
- { apiGroups: [""], resources: ["pods"], verbs: ["get"] },
526
+ { apiGroups: [""], resources: ["pods"], verbs: ["get", "list", "patch"] },
409
527
  { apiGroups: [""], resources: ["pods/exec"], verbs: ["create", "get"] },
410
528
  ...(forked ? [{ apiGroups: [""], resources: ["persistentvolumeclaims"], verbs: ["get"] }] : []),
529
+ // A restored session's readiness, once its sandbox is let run, and the network policies that must hold it first (src/sandbox/snapshots.ts).
530
+ ...(snapshotted
531
+ ? [{ apiGroups: [""], resources: ["pods/status"], verbs: ["patch"] }, { apiGroups: ["networking.k8s.io"], resources: ["networkpolicies"], verbs: ["list"] }]
532
+ : []),
411
533
  ],
412
534
  };
413
535
  return [role, binding(metadata)];
414
536
  }),
415
- ...(main && sessionsForked(config) ? [clones, binding(inOwnNamespace)] : []),
537
+ own,
538
+ binding(inOwnNamespace),
416
539
  ...(main && mountPodsRemoved(config) ? [mountPods, binding(inDriverNamespace)] : []),
417
540
  ...(config.host.enabled ? hostAgentIdentity(config) : []),
418
541
  ];
@@ -448,16 +571,33 @@ function hostAgentIdentity(config) {
448
571
  };
449
572
  return [serviceAccount, role, binding];
450
573
  }
451
- /** The objects of the alasio of `environment`, main's unless a branch environment's. */
452
- export function alasioObjects(config, environment = MAIN_ENVIRONMENT) {
453
- const templates = sandboxTemplates(config, environment);
574
+ /** The objects of the alasio of `environment`, main's unless a branch environment's, with what main's carries forward. */
575
+ export function alasioObjects(config, environment = MAIN_ENVIRONMENT, carried = NOTHING_CARRIED) {
576
+ const templates = sandboxTemplates(config, environment, carried);
577
+ const alasio = deployment(config, templates.checksum, environment);
454
578
  return [
455
579
  ...namespaces(config, environment),
456
580
  ...identity(config, environment),
457
581
  templates.configMap,
458
- deployment(config, templates.checksum, environment),
582
+ alasio,
583
+ // It runs turns, in its harnesses, which a recreation would end.
584
+ verticalPodAutoscaler(alasio, "Recommended"),
585
+ // A drain waits for the turns running in its pod and its workspaces' to end.
586
+ ...[environment.namespace, ...workspaceNamespaces(config, environment)].map(busyBudget),
459
587
  telemetryService(config, environment),
460
588
  ...(environment.branch === null && forksForBranches(config) ? [branchForksService()] : []),
589
+ // What alasio may do beyond what RBAC can say; the cluster's, but for its Sandboxes', made with main's.
590
+ ...(environment.branch === null ? [...busyLabelPolicy(), ...secretPolicy()] : []),
591
+ // Where sessions are snapshotted, what alasio may set of a restored session's pod's status.
592
+ ...(environment.branch === null && config.sessions.enabled && nodeAgentRuns(config)
593
+ ? resumedConditionPolicy(componentName("resumed-condition"), alasioAccount(environment.namespace), config.sessions.namespace)
594
+ : []),
595
+ ...(environment.branch === null && sessionsForked(config) ? cloneJobPolicy(cloneJob(config)) : []),
596
+ ...sandboxPolicy(sandboxPolicyName(environment.namespace), alasioAccount(environment.namespace), {
597
+ sessions: config.sessions.enabled ? sessionsProfile(config, environment, carried) : null,
598
+ previousSessions: config.sessions.enabled ? carried.previousSessions : null,
599
+ host: config.host.enabled ? hostProfile(config) : null,
600
+ }),
461
601
  ];
462
602
  }
463
603
  //# sourceMappingURL=alasio.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alasio.js","sourceRoot":"","sources":["../../../../src/manifests/alasio.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"alasio.js","sourceRoot":"","sources":["../../../../src/manifests/alasio.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { branchNamespace } from "../../../src/branch/names.js";
2
2
  import { alasioObjects, sessionsNamespace } from "./alasio.js";
3
3
  import { BRANCH_LABEL, componentName, labels, NAMESPACE, RELEASE } from "./common.js";
4
4
  import { lakeObjects } from "./lake.js";
5
- import { compute } from "./neon.js";
5
+ import { compute, computeScaling } from "./neon.js";
6
6
  import { networkPolicyObjects } from "./network-policies.js";
7
7
  /** The environment of the branch `name`. */
8
8
  export const branchEnvironment = (name) => ({ namespace: branchNamespace(name), branch: name });
@@ -37,6 +37,7 @@ export function branchObjects(config, name) {
37
37
  return [
38
38
  ...alasioObjects(config, environment),
39
39
  ...compute(config, environment),
40
+ ...computeScaling(environment.namespace),
40
41
  ...lakeObjects(config, environment),
41
42
  ...networkPolicyObjects(config, environment),
42
43
  ...(config.sessions.enabled ? parentAccess(config, environment) : []),
@@ -1 +1 @@
1
- {"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../../src/manifests/branch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../../src/manifests/branch.ts"],"names":[],"mappings":"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"}