@intentic/providers 1.309.0 → 1.311.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.
- package/README.md +24 -23
- package/dist/auth/authentik-api.d.ts.map +1 -1
- package/dist/auth/authentik-api.js +18 -11
- package/dist/auth/authentik-api.js.map +1 -1
- package/dist/backings/garage-bucket.d.ts.map +1 -1
- package/dist/backings/garage-bucket.js +17 -17
- package/dist/backings/garage-bucket.js.map +1 -1
- package/dist/backings/garage.d.ts +3 -1
- package/dist/backings/garage.d.ts.map +1 -1
- package/dist/backings/garage.js +13 -7
- package/dist/backings/garage.js.map +1 -1
- package/dist/backup/backup.d.ts.map +1 -1
- package/dist/backup/backup.js +8 -5
- package/dist/backup/backup.js.map +1 -1
- package/dist/core/host-files.d.ts +1 -0
- package/dist/core/host-files.d.ts.map +1 -1
- package/dist/core/host-files.js +5 -5
- package/dist/core/host-files.js.map +1 -1
- package/dist/integrations/discord.d.ts.map +1 -1
- package/dist/integrations/discord.js +4 -3
- package/dist/integrations/discord.js.map +1 -1
- package/dist/komodo/komodo-periphery.d.ts.map +1 -1
- package/dist/komodo/komodo-periphery.js +2 -9
- package/dist/komodo/komodo-periphery.js.map +1 -1
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -1,31 +1,32 @@
|
|
|
1
|
-
#
|
|
1
|
+
# providers
|
|
2
2
|
|
|
3
|
-
The
|
|
3
|
+
The deploy tool's providers: one implementation of the engine's `Provider` contract per resource kind, reaching hosts over SSH and vendors over their HTTP APIs.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
```mermaid
|
|
6
|
+
flowchart LR
|
|
7
|
+
engine["engine<br/>read · diff · apply · delete"] --> providers(["providers<br/>createProviders"])
|
|
8
|
+
providers -- "SSH + Docker" --> host["Hosts<br/>Forgejo · Komodo · backings · services"]
|
|
9
|
+
providers -- "SSH port-forward" --> cp["Forgejo · Komodo APIs"]
|
|
10
|
+
providers -- "HTTPS" --> vendors["Cloudflare · GitHub · GitLab<br/>Discord · Stripe"]
|
|
11
|
+
```
|
|
6
12
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
13
|
+
- `createProviders` assembles the full kind-to-provider map over injectable dependencies: the SSH executor and each vendor API client. Tests pass fakes and drive the whole suite in memory.
|
|
14
|
+
- Every container intentic starts on a host carries `intentic.id` and `intentic.type` labels, so `list` finds orphans with one `docker ps` per host.
|
|
15
|
+
- Forgejo and Komodo APIs are reached through a loopback port-forward over SSH, because the Cloudflare tunnel behind their public routes may be the very thing an apply is changing.
|
|
16
|
+
- A NAT'd host is reached through its own Cloudflare tunnel (`via: "cloudflared"`). Host keys are trusted on first use and pinned.
|
|
17
|
+
- Stateful services on a host with the `guarded` update policy snapshot their volumes with restic before an image bump and roll back if the new image fails its health check.
|
|
11
18
|
|
|
12
19
|
## Key files
|
|
13
20
|
|
|
14
|
-
- [src/
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
- [src/
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
- [src/core/instance-binding.ts](src/core/instance-binding.ts) — an app's slice INSIDE a backing (a database, an ACL user, a bucket), reached with `docker exec`.
|
|
21
|
-
- [src/services/compose-service.ts](src/services/compose-service.ts) — one singleton stack per kind (the catalog services, signoz), diffed per compose service.
|
|
22
|
-
- [src/core/host-files.ts](src/core/host-files.ts) is the writing the three share: rewritten config files, and the write-once `.env` whose two quoting layers are the part that used to be got wrong.
|
|
21
|
+
- [src/providers.ts](src/providers.ts) — `createProviders`, the map the engine reconciles against.
|
|
22
|
+
- [src/core/ssh.ts](src/core/ssh.ts) — the SSH executor, cloudflared forwarding and host-key pinning.
|
|
23
|
+
- [src/core/over-ssh.ts](src/core/over-ssh.ts) — why and how control-plane APIs go over SSH.
|
|
24
|
+
- [src/core/backing-provider.ts](src/core/backing-provider.ts) — the shared shape of Postgres, Valkey, Garage and Authentik.
|
|
25
|
+
- [src/komodo/deployment.ts](src/komodo/deployment.ts) — one Komodo deployment per app environment.
|
|
26
|
+
- [src/suite.engine.test.ts](src/suite.engine.test.ts) — the whole provider stack reconciling an app over fakes, then again as a noop.
|
|
23
27
|
|
|
24
|
-
##
|
|
28
|
+
## Commands
|
|
25
29
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
- Providers are constructed from injected deps/adapters: never reach for ambient globals; pass a fake adapter in tests.
|
|
31
|
-
- Keep `diff` pure: do all reads in `read`, all mutations in `apply`. Stamp created resources (`intentic.id=<id>`) for future orphan detection. See [ARCHITECTURE.md](../../ARCHITECTURE.md).
|
|
30
|
+
```sh
|
|
31
|
+
pnpm --filter @intentic/providers test
|
|
32
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentik-api.d.ts","sourceRoot":"","sources":["../../src/auth/authentik-api.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAEzB,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAElI,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/H;
|
|
1
|
+
{"version":3,"file":"authentik-api.d.ts","sourceRoot":"","sources":["../../src/auth/authentik-api.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,YAAY;IAEzB,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAElI,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/H;AAqDD,eAAO,MAAM,YAAY,EAAE,YAuC1B,CAAC"}
|
|
@@ -2,17 +2,24 @@ import { z } from "zod";
|
|
|
2
2
|
import { parseResponse } from "../core/inputs.js";
|
|
3
3
|
const listSchema = z.object({ results: z.array(z.object({ pk: z.union([z.number(), z.string()]) })) });
|
|
4
4
|
const scopeListSchema = z.object({ results: z.array(z.object({ pk: z.string(), scope_name: z.string() })) });
|
|
5
|
+
const send = async (method, baseUrl, token, path, body) => fetch(`${baseUrl}/api/v3${path}`, {
|
|
6
|
+
method,
|
|
7
|
+
headers: { Authorization: `Bearer ${token}`, ...(body !== undefined ? { "Content-Type": "application/json" } : {}) },
|
|
8
|
+
...(body !== undefined ? { body: JSON.stringify(body) } : {}),
|
|
9
|
+
signal: AbortSignal.timeout(30_000),
|
|
10
|
+
});
|
|
11
|
+
const fail = async (method, path, response) => {
|
|
12
|
+
throw new Error(`authentik ${method} ${path} failed (${response.status}): ${(await response.text()).slice(0, 500)}`);
|
|
13
|
+
};
|
|
5
14
|
const call = async (method, baseUrl, token, path, body) => {
|
|
6
|
-
const response = await
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
throw new Error(`authentik ${method} ${path} failed (${response.status}): ${(await response.text()).slice(0, 500)}`);
|
|
15
|
+
const response = await send(method, baseUrl, token, path, body);
|
|
16
|
+
return response.ok ? response : fail(method, path, response);
|
|
17
|
+
};
|
|
18
|
+
const remove = async (baseUrl, token, path) => {
|
|
19
|
+
const response = await send("DELETE", baseUrl, token, path);
|
|
20
|
+
if (!response.ok && response.status !== 404) {
|
|
21
|
+
await fail("DELETE", path, response);
|
|
14
22
|
}
|
|
15
|
-
return response;
|
|
16
23
|
};
|
|
17
24
|
const get = async (baseUrl, token, path) => (await call("GET", baseUrl, token, path)).json();
|
|
18
25
|
const flowPk = async (baseUrl, token, slug) => {
|
|
@@ -58,10 +65,10 @@ export const authentikApi = {
|
|
|
58
65
|
}
|
|
59
66
|
},
|
|
60
67
|
deleteClient: async ({ baseUrl, token, slug }) => {
|
|
61
|
-
await
|
|
68
|
+
await remove(baseUrl, token, `/core/applications/${slug}/`);
|
|
62
69
|
const providerPk = firstPk(await get(baseUrl, token, `/providers/oauth2/?name=${slug}`));
|
|
63
70
|
if (providerPk !== undefined) {
|
|
64
|
-
await
|
|
71
|
+
await remove(baseUrl, token, `/providers/oauth2/${providerPk}/`);
|
|
65
72
|
}
|
|
66
73
|
},
|
|
67
74
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentik-api.js","sourceRoot":"","sources":["../../src/auth/authentik-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAwBlD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACvG,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"authentik-api.js","sourceRoot":"","sources":["../../src/auth/authentik-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"garage-bucket.d.ts","sourceRoot":"","sources":["../../src/backings/garage-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"garage-bucket.d.ts","sourceRoot":"","sources":["../../src/backings/garage-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AAoC9D,eAAO,MAAM,0BAA0B,cAAc,WAAW,KAAiB,QA2B5E,CAAC"}
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { bindingSchema, createInstanceBindingProvider } from "../core/instance-binding.js";
|
|
3
3
|
import { sshExecutor } from "../core/ssh.js";
|
|
4
|
-
|
|
4
|
+
import { GARAGE_BIN, runGarage } from "./garage.js";
|
|
5
5
|
const bucketSchema = bindingSchema.extend({
|
|
6
6
|
endpoint: z.string(),
|
|
7
7
|
bucket: z.string(),
|
|
8
8
|
keyName: z.string(),
|
|
9
9
|
});
|
|
10
|
-
const garage = async (session, cid, args) => {
|
|
11
|
-
const result = await session.exec(`docker exec ${cid} ${BIN} ${args}`);
|
|
12
|
-
if (result.code !== 0) {
|
|
13
|
-
throw new Error(`garage ${args.split(" ")[0]} failed (${result.code}): ${result.stderr.trim()}`);
|
|
14
|
-
}
|
|
15
|
-
return result.stdout.trim();
|
|
16
|
-
};
|
|
17
10
|
const readKey = async (session, cid, keyName) => {
|
|
18
|
-
const info =
|
|
19
|
-
const field = (label) =>
|
|
11
|
+
const info = await runGarage(session, cid, `key info --show-secret ${keyName}`);
|
|
12
|
+
const field = (label) => {
|
|
13
|
+
const value = info.match(new RegExp(`${label}:\\s*(\\S+)`))?.[1];
|
|
14
|
+
if (value === undefined) {
|
|
15
|
+
throw new Error(`garage key info ${keyName}: no "${label}:" line in its output`);
|
|
16
|
+
}
|
|
17
|
+
return value;
|
|
18
|
+
};
|
|
20
19
|
return { accessKey: field("Key ID"), secretKey: field("Secret key") };
|
|
21
20
|
};
|
|
22
21
|
const outputsFor = (parsed, key) => ({
|
|
@@ -30,18 +29,19 @@ export const createGarageBucketProvider = (executor = sshExecutor) => createInst
|
|
|
30
29
|
schema: bucketSchema,
|
|
31
30
|
pendingRefs: ["endpoint"],
|
|
32
31
|
present: async (session, cid, parsed) => {
|
|
33
|
-
const
|
|
34
|
-
|
|
32
|
+
const bucket = await session.exec(`docker exec ${cid} ${GARAGE_BIN} bucket info ${parsed.bucket}`);
|
|
33
|
+
const key = bucket.code === 0 ? await session.exec(`docker exec ${cid} ${GARAGE_BIN} key info ${parsed.keyName}`) : undefined;
|
|
34
|
+
return key?.code === 0 ? outputsFor(parsed, await readKey(session, cid, parsed.keyName)) : undefined;
|
|
35
35
|
},
|
|
36
36
|
create: async (session, cid, parsed) => {
|
|
37
|
-
await session.exec(`docker exec ${cid} ${
|
|
38
|
-
await session.exec(`docker exec ${cid} ${
|
|
39
|
-
await
|
|
37
|
+
await session.exec(`docker exec ${cid} ${GARAGE_BIN} bucket create ${parsed.bucket} 2>/dev/null || true`);
|
|
38
|
+
await session.exec(`docker exec ${cid} ${GARAGE_BIN} key create ${parsed.keyName} 2>/dev/null || true`);
|
|
39
|
+
await runGarage(session, cid, `bucket allow --read --write ${parsed.bucket} --key ${parsed.keyName}`);
|
|
40
40
|
return outputsFor(parsed, await readKey(session, cid, parsed.keyName));
|
|
41
41
|
},
|
|
42
42
|
drop: async (session, cid, parsed) => {
|
|
43
|
-
await session.exec(`docker exec ${cid} ${
|
|
44
|
-
await session.exec(`docker exec ${cid} ${
|
|
43
|
+
await session.exec(`docker exec ${cid} ${GARAGE_BIN} bucket delete --yes ${parsed.bucket} 2>/dev/null || true`);
|
|
44
|
+
await session.exec(`docker exec ${cid} ${GARAGE_BIN} key delete --yes ${parsed.keyName} 2>/dev/null || true`);
|
|
45
45
|
},
|
|
46
46
|
}, executor);
|
|
47
47
|
//# sourceMappingURL=garage-bucket.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"garage-bucket.js","sourceRoot":"","sources":["../../src/backings/garage-bucket.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"garage-bucket.js","sourceRoot":"","sources":["../../src/backings/garage-bucket.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Provider } from "@intentic/engine";
|
|
2
|
-
import type { SshExecutor } from "../core/ssh.js";
|
|
2
|
+
import type { SshExecutor, SshSession } from "../core/ssh.js";
|
|
3
|
+
export declare const GARAGE_BIN = "/garage";
|
|
4
|
+
export declare const runGarage: (session: SshSession, cid: string, args: string) => Promise<string>;
|
|
3
5
|
export declare const createGarageProvider: (executor?: SshExecutor) => Provider;
|
|
4
6
|
//# sourceMappingURL=garage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"garage.d.ts","sourceRoot":"","sources":["../../src/backings/garage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"garage.d.ts","sourceRoot":"","sources":["../../src/backings/garage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAK9D,eAAO,MAAM,UAAU,YAAY,CAAC;AA8CpC,eAAO,MAAM,SAAS,YAAmB,UAAU,OAAO,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,MAAM,CAM9F,CAAC;AAmBF,eAAO,MAAM,oBAAoB,cAAc,WAAW,KAAiB,QAqBtE,CAAC"}
|
package/dist/backings/garage.js
CHANGED
|
@@ -3,7 +3,7 @@ import { backingSchema, createBackingProvider } from "../core/backing-provider.j
|
|
|
3
3
|
import { containerId, execProbe, stampLabels } from "../core/backing-ssh.js";
|
|
4
4
|
import { sshExecutor } from "../core/ssh.js";
|
|
5
5
|
const KIND = "garage";
|
|
6
|
-
const
|
|
6
|
+
export const GARAGE_BIN = "/garage";
|
|
7
7
|
const garageSchema = backingSchema.extend({
|
|
8
8
|
region: z.string(),
|
|
9
9
|
domain: z.string().optional(),
|
|
@@ -36,18 +36,24 @@ const garageToml = (parsed) => [
|
|
|
36
36
|
'api_bind_addr = "[::]:3900"',
|
|
37
37
|
"",
|
|
38
38
|
].join("\n");
|
|
39
|
+
export const runGarage = async (session, cid, args) => {
|
|
40
|
+
const result = await session.exec(`docker exec ${cid} ${GARAGE_BIN} ${args}`);
|
|
41
|
+
if (result.code !== 0) {
|
|
42
|
+
throw new Error(`garage ${args.split(" ")[0]} failed (${result.code}): ${result.stderr.trim()}`);
|
|
43
|
+
}
|
|
44
|
+
return result.stdout.trim();
|
|
45
|
+
};
|
|
39
46
|
const ensureLayout = async (session, id) => {
|
|
40
47
|
const cid = await containerId(session, id);
|
|
41
|
-
const nodeId = (await session
|
|
48
|
+
const nodeId = (await runGarage(session, cid, "node id -q")).split("@")[0] ?? "";
|
|
42
49
|
if (nodeId === "") {
|
|
43
50
|
throw new Error(`garage "${id}": could not read node id`);
|
|
44
51
|
}
|
|
45
|
-
|
|
46
|
-
if (layout.stdout.includes(nodeId)) {
|
|
52
|
+
if ((await runGarage(session, cid, "layout show")).includes(nodeId.slice(0, 16))) {
|
|
47
53
|
return;
|
|
48
54
|
}
|
|
49
|
-
await session
|
|
50
|
-
await session
|
|
55
|
+
await runGarage(session, cid, `layout assign -z dc1 -c 1G ${nodeId}`);
|
|
56
|
+
await runGarage(session, cid, "layout apply --version 1");
|
|
51
57
|
};
|
|
52
58
|
export const createGarageProvider = (executor = sshExecutor) => createBackingProvider({
|
|
53
59
|
kind: KIND,
|
|
@@ -61,7 +67,7 @@ export const createGarageProvider = (executor = sshExecutor) => createBackingPro
|
|
|
61
67
|
prepare: async (session, _parsed, dir) => {
|
|
62
68
|
await session.exec(`test -f ${dir}/rpc_secret || { openssl rand -hex 32 > ${dir}/rpc_secret && chmod 600 ${dir}/rpc_secret; }`);
|
|
63
69
|
},
|
|
64
|
-
probe: (_parsed, id) => execProbe(id, `${
|
|
70
|
+
probe: (_parsed, id) => execProbe(id, `${GARAGE_BIN} status`),
|
|
65
71
|
ready: (session, _parsed, id) => ensureLayout(session, id),
|
|
66
72
|
}, executor);
|
|
67
73
|
//# sourceMappingURL=garage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"garage.js","sourceRoot":"","sources":["../../src/backings/garage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,IAAI,GAAG,QAAQ,CAAC;AAEtB,MAAM,
|
|
1
|
+
{"version":3,"file":"garage.js","sourceRoot":"","sources":["../../src/backings/garage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/backup/backup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/backup/backup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAMjE,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AA6D9D,eAAO,MAAM,WAAW,yBAAyB,CAAC;AAClD,eAAO,MAAM,WAAW,SAAU,MAAM,KAAG,OAA+B,CAAC;AAmG3E,eAAO,MAAM,oBAAoB,cAAc,WAAW,KAAiB,QA+EzE,CAAC"}
|
package/dist/backup/backup.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { basename } from "node:path";
|
|
1
2
|
import { HOST_STATE_ROOT } from "@intentic/constants";
|
|
2
3
|
import { dockerEnvLine, shellQuote } from "@intentic/sandbox-run/quote";
|
|
3
4
|
import { z } from "zod";
|
|
5
|
+
import { execChecked, writeHostFiles } from "../core/host-files.js";
|
|
4
6
|
import { parseInputs, sshSchema, sshTarget } from "../core/inputs.js";
|
|
5
7
|
import { listStampedContainers } from "../core/list-stamped.js";
|
|
6
8
|
import { sshExecutor } from "../core/ssh.js";
|
|
@@ -82,17 +84,18 @@ const observe = async (session) => {
|
|
|
82
84
|
return { image, schedule, repo, timezone: timezone === "" ? "UTC" : timezone };
|
|
83
85
|
};
|
|
84
86
|
const ensureFiles = async (session, parsed) => {
|
|
85
|
-
await session
|
|
87
|
+
await writeHostFiles(session, "backup", STATE_DIR, {
|
|
88
|
+
[basename(SCRIPT_FILE)]: backupScript(parsed),
|
|
89
|
+
[basename(CRONTAB_FILE)]: `${parsed.schedule} /bin/sh ${SCRIPT_FILE}\n`,
|
|
90
|
+
});
|
|
91
|
+
await execChecked(session, "backup", `chmod +x ${SCRIPT_FILE}`, `chmod ${SCRIPT_FILE}`);
|
|
86
92
|
const envLines = [
|
|
87
93
|
dockerEnvLine("RESTIC_PASSWORD", parsed.password),
|
|
88
94
|
...Object.entries(parsed.credentials).map(([key, value]) => dockerEnvLine(key, value)),
|
|
89
95
|
]
|
|
90
96
|
.map((line) => shellQuote(line))
|
|
91
97
|
.join(" ");
|
|
92
|
-
await session
|
|
93
|
-
await session.exec(`cat > ${SCRIPT_FILE} <<'BACKUP_EOF'\n${backupScript(parsed)}BACKUP_EOF`);
|
|
94
|
-
await session.exec(`chmod +x ${SCRIPT_FILE}`);
|
|
95
|
-
await session.exec(`cat > ${CRONTAB_FILE} <<'CRON_EOF'\n${parsed.schedule} /bin/sh ${SCRIPT_FILE}\nCRON_EOF`);
|
|
98
|
+
await execChecked(session, "backup", `test -f ${ENV_FILE} || { printf '%s' ${envLines} > ${ENV_FILE} && chmod 600 ${ENV_FILE}; }`, `write ${ENV_FILE}`);
|
|
96
99
|
};
|
|
97
100
|
const mountArgs = (parsed, dockerBin) => {
|
|
98
101
|
const volumes = Object.entries(volumeMounts(parsed.signoz))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/backup/backup.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/backup/backup.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export interface HostFile {
|
|
|
7
7
|
readonly content: string;
|
|
8
8
|
readonly secret?: boolean;
|
|
9
9
|
}
|
|
10
|
+
export declare const execChecked: (session: SshSession, kind: string, command: string, what: string) => Promise<void>;
|
|
10
11
|
export declare const writeHostFiles: (session: SshSession, kind: string, dir: string, files: Readonly<Record<string, string | HostFile>>) => Promise<void>;
|
|
11
12
|
export declare const envArg: (key: string, value: string) => string;
|
|
12
13
|
export declare const writeEnvOnce: (session: SshSession, kind: string, dir: string, entries: readonly EnvEntry[]) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-files.d.ts","sourceRoot":"","sources":["../../src/core/host-files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQ3C,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"host-files.d.ts","sourceRoot":"","sources":["../../src/core/host-files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQ3C,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,eAAO,MAAM,WAAW,YAAmB,UAAU,QAAQ,MAAM,WAAW,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,IAAI,CAKhH,CAAC;AAIF,eAAO,MAAM,cAAc,YACd,UAAU,QACb,MAAM,OACP,MAAM,SACJ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,KACnD,OAAO,CAAC,IAAI,CAYd,CAAC;AAIF,eAAO,MAAM,MAAM,QAAS,MAAM,SAAS,MAAM,KAAG,MAAsD,CAAC;AAI3G,eAAO,MAAM,YAAY,YAAmB,UAAU,QAAQ,MAAM,OAAO,MAAM,WAAW,SAAS,QAAQ,EAAE,KAAG,OAAO,CAAC,IAAI,CAc7H,CAAC"}
|
package/dist/core/host-files.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { envLine, shellQuote } from "@intentic/sandbox-run/quote";
|
|
2
|
-
const
|
|
2
|
+
export const execChecked = async (session, kind, command, what) => {
|
|
3
3
|
const result = await session.exec(command);
|
|
4
4
|
if (result.code !== 0) {
|
|
5
5
|
throw new Error(`${kind}: ${what} failed (exit ${result.code}): ${result.stderr.trim()}`);
|
|
6
6
|
}
|
|
7
7
|
};
|
|
8
8
|
export const writeHostFiles = async (session, kind, dir, files) => {
|
|
9
|
-
await
|
|
9
|
+
await execChecked(session, kind, `mkdir -p ${dir}`, `create ${dir}`);
|
|
10
10
|
const marker = `${kind.toUpperCase().replaceAll(/[^A-Z0-9]/gu, "_")}_FILE_EOF`;
|
|
11
11
|
for (const [name, file] of Object.entries(files)) {
|
|
12
12
|
const content = typeof file === "string" ? file : file.content;
|
|
13
|
-
await
|
|
13
|
+
await execChecked(session, kind, `cat > ${dir}/${name} <<'${marker}'\n${content}${marker}`, `write ${dir}/${name}`);
|
|
14
14
|
if (typeof file !== "string" && file.secret === true) {
|
|
15
|
-
await
|
|
15
|
+
await execChecked(session, kind, `chmod 600 ${dir}/${name}`, `chmod ${dir}/${name}`);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
};
|
|
@@ -22,6 +22,6 @@ export const writeEnvOnce = async (session, kind, dir, entries) => {
|
|
|
22
22
|
?
|
|
23
23
|
`"${entry.key}='$(openssl rand -hex 32)'"`
|
|
24
24
|
: envArg(entry.key, entry.value));
|
|
25
|
-
await
|
|
25
|
+
await execChecked(session, kind, `test -f ${dir}/.env || { printf '%s\\n' ${args.join(" ")} > ${dir}/.env && chmod 600 ${dir}/.env; }`, `write ${dir}/.env`);
|
|
26
26
|
};
|
|
27
27
|
//# sourceMappingURL=host-files.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-files.js","sourceRoot":"","sources":["../../src/core/host-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAqBlE,MAAM,
|
|
1
|
+
{"version":3,"file":"host-files.js","sourceRoot":"","sources":["../../src/core/host-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAqBlE,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAmB,EAAE,IAAY,EAAE,OAAe,EAAE,IAAY,EAAiB,EAAE;IACjH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,IAAI,iBAAiB,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;AACL,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAC/B,OAAmB,EACnB,IAAY,EACZ,GAAW,EACX,KAAkD,EACrC,EAAE;IACf,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,WAAW,CAAC;IAC/E,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAE/D,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,IAAI,OAAO,MAAM,MAAM,OAAO,GAAG,MAAM,EAAE,EAAE,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;QACpH,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAEnD,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI,EAAE,EAAE,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;QACzF,CAAC;IACL,CAAC;AACL,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,KAAa,EAAU,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAI3G,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,OAAmB,EAAE,IAAY,EAAE,GAAW,EAAE,OAA4B,EAAiB,EAAE;IAC9H,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC1F,KAAK,CAAC,KAAK,KAAK,SAAS;QACrB,CAAC;YAEC,IAAI,KAAK,CAAC,GAAG,6BAA6B;QAC5C,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CACvC,CAAC;IACF,MAAM,WAAW,CACb,OAAO,EACP,IAAI,EACJ,WAAW,GAAG,6BAA6B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,sBAAsB,GAAG,UAAU,EACrG,SAAS,GAAG,OAAO,CACtB,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/integrations/discord.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/integrations/discord.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAGjE,OAAO,KAAK,EAAE,UAAU,EAAkC,MAAM,kBAAkB,CAAC;AAwDnF,eAAO,MAAM,qBAAqB,SAAS,UAAU,KAAgB,QA4HnE,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { errorMessage } from "@intentic/base/errors";
|
|
1
2
|
import { z } from "zod";
|
|
2
3
|
import { parseInputs } from "../core/inputs.js";
|
|
3
4
|
import { CHANNEL_TYPE_CATEGORY, CHANNEL_TYPE_TEXT, discordApi } from "./discord-api.js";
|
|
@@ -107,9 +108,9 @@ export const createDiscordProvider = (api = discordApi) => ({
|
|
|
107
108
|
ctx.log(`discord "${ctx.id}": creating guild "${name}"`);
|
|
108
109
|
guild = await api.createGuild(parsed.botToken, name);
|
|
109
110
|
}
|
|
110
|
-
catch {
|
|
111
|
-
throw new Error(`discord "${ctx.id}": the bot is not in any guild and cannot create one. ` +
|
|
112
|
-
"Invite the bot to a Discord server first, then re-run apply.");
|
|
111
|
+
catch (error) {
|
|
112
|
+
throw new Error(`discord "${ctx.id}": the bot is not in any guild and cannot create one (${errorMessage(error)}). ` +
|
|
113
|
+
"Invite the bot to a Discord server first, then re-run apply.", { cause: error });
|
|
113
114
|
}
|
|
114
115
|
}
|
|
115
116
|
let channels = await api.getGuildChannels(parsed.botToken, guild.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/integrations/discord.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/integrations/discord.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"komodo-periphery.d.ts","sourceRoot":"","sources":["../../src/komodo/komodo-periphery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAGjE,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AA4B9D,eAAO,MAAM,6BAA6B,cAAc,WAAW,KAAiB,
|
|
1
|
+
{"version":3,"file":"komodo-periphery.d.ts","sourceRoot":"","sources":["../../src/komodo/komodo-periphery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAGjE,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AA4B9D,eAAO,MAAM,6BAA6B,cAAc,WAAW,KAAiB,QAwElF,CAAC"}
|
|
@@ -75,16 +75,9 @@ export const createKomodoPeripheryProvider = (executor = sshExecutor) => ({
|
|
|
75
75
|
await session.dispose();
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
|
-
delete: async (inputs
|
|
78
|
+
delete: async (inputs) => {
|
|
79
79
|
const parsed = parse(inputs);
|
|
80
|
-
|
|
81
|
-
try {
|
|
82
|
-
session = await executor.connect(sshTarget(parsed));
|
|
83
|
-
}
|
|
84
|
-
catch (error) {
|
|
85
|
-
ctx.log(`komodo-periphery "${ctx.id}": host not reachable for delete: ${String(error)}`);
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
80
|
+
const session = await executor.connect(sshTarget(parsed));
|
|
88
81
|
try {
|
|
89
82
|
await session.exec(`docker rm -f ${containerName(parsed.serverName)} 2>/dev/null || true`);
|
|
90
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"komodo-periphery.js","sourceRoot":"","sources":["../../src/komodo/komodo-periphery.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"komodo-periphery.js","sourceRoot":"","sources":["../../src/komodo/komodo-periphery.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intentic/providers",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.311.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -30,18 +30,18 @@
|
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@intentic/base": "1.
|
|
34
|
-
"@intentic/constants": "1.
|
|
35
|
-
"@intentic/engine": "1.
|
|
36
|
-
"@intentic/graph": "1.
|
|
37
|
-
"@intentic/sandbox-run": "1.
|
|
33
|
+
"@intentic/base": "1.311.0",
|
|
34
|
+
"@intentic/constants": "1.311.0",
|
|
35
|
+
"@intentic/engine": "1.311.0",
|
|
36
|
+
"@intentic/graph": "1.311.0",
|
|
37
|
+
"@intentic/sandbox-run": "1.311.0",
|
|
38
38
|
"bcryptjs": "3.0.3",
|
|
39
39
|
"ssh2": "1.17.0",
|
|
40
40
|
"tslib": "2.8.1",
|
|
41
41
|
"zod": "4.5.4"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@intentic/sdk": "1.
|
|
44
|
+
"@intentic/sdk": "1.311.0",
|
|
45
45
|
"@intentic/testing": "0.0.0",
|
|
46
46
|
"@intentic/tsconfig": "0.0.0",
|
|
47
47
|
"@types/bun": "1.4.0",
|