@getmonoceros/workbench 1.38.12 → 1.38.13
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.
|
@@ -52,5 +52,13 @@ usageNotes:
|
|
|
52
52
|
briefing:
|
|
53
53
|
- text: 'Identity & access management, reached in-container as host `keycloak`. Admin console + API at `$KEYCLOAK_URL` (admin `$KEYCLOAK_USER` / `$KEYCLOAK_PASSWORD`).'
|
|
54
54
|
- text: 'Keycloak auto-imports realms at startup (`--import-realm`) from `/opt/keycloak/data/import`, and its database is ephemeral - it re-seeds from those files on every apply. So keep the realm as a file in the repo at `projects/<app>/keycloak/realm.json`; do NOT configure it by hand in the admin UI, that is lost on the next apply.'
|
|
55
|
-
- text:
|
|
55
|
+
- text: |-
|
|
56
|
+
You can create/edit that realm.json, but the bind-mount that feeds it to Keycloak lives in the container yml on the host, which you cannot edit from inside. Give the user this exact block to add under the `keycloak` service in the container yml, with `<app>` replaced by the real project name in BOTH places (the source path and the import target filename):
|
|
57
|
+
|
|
58
|
+
```yaml
|
|
59
|
+
volumes:
|
|
60
|
+
- projects/<app>/keycloak/realm.json:/opt/keycloak/data/import/<app>.json:ro
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Mount the single realm.json to a distinctly-named `*.json` target under the import dir. Do NOT mount the whole `keycloak/` directory onto `/opt/keycloak/data/import`, and do NOT prefix the source with `./`. Then have the user run `monoceros apply <name>` on the host.
|
|
56
64
|
- text: "In the realm, define a public client (e.g. `<app>-web`) with your app's redirect URIs, and have the frontend reach Keycloak same-origin under `/realms/<realm>` so the issuer follows the request host (works on `.localhost` and over `monoceros share`)."
|
package/dist/bin.js
CHANGED
|
@@ -1537,10 +1537,14 @@ var init_locate_running = __esm({
|
|
|
1537
1537
|
};
|
|
1538
1538
|
realContainerExec = (containerId, argv) => {
|
|
1539
1539
|
return new Promise((resolve, reject) => {
|
|
1540
|
-
const child = spawn(
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1540
|
+
const child = spawn(
|
|
1541
|
+
"docker",
|
|
1542
|
+
["exec", "-u", "node", containerId, ...argv],
|
|
1543
|
+
{
|
|
1544
|
+
// Inherit stdio so live git output reaches the user.
|
|
1545
|
+
stdio: ["ignore", "inherit", "inherit"]
|
|
1546
|
+
}
|
|
1547
|
+
);
|
|
1544
1548
|
child.on("error", reject);
|
|
1545
1549
|
child.on("exit", (code) => resolve({ exitCode: code ?? 0 }));
|
|
1546
1550
|
});
|
|
@@ -9006,7 +9010,7 @@ var CLI_VERSION;
|
|
|
9006
9010
|
var init_version = __esm({
|
|
9007
9011
|
"src/version.ts"() {
|
|
9008
9012
|
"use strict";
|
|
9009
|
-
CLI_VERSION = true ? "1.38.
|
|
9013
|
+
CLI_VERSION = true ? "1.38.13" : "dev";
|
|
9010
9014
|
}
|
|
9011
9015
|
});
|
|
9012
9016
|
|