@getmonoceros/workbench 1.38.10 → 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: '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. Tell the user to add this volume to the keycloak service and re-apply: `projects/<app>/keycloak/realm.json:/opt/keycloak/data/import/<app>.json:ro`, then run `monoceros apply <name>` on the host.'
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("docker", ["exec", containerId, ...argv], {
1541
- // Inherit stdio so live git output reaches the user.
1542
- stdio: ["ignore", "inherit", "inherit"]
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
  });
@@ -7290,7 +7294,8 @@ async function runContainerCycle(root, opts) {
7290
7294
  );
7291
7295
  const filters = [
7292
7296
  `label=com.docker.compose.project=${projectName}`,
7293
- `name=^${projectName}-`
7297
+ `name=^${projectName}-`,
7298
+ `name=^monoceros-${path18.basename(root)}$`
7294
7299
  ];
7295
7300
  const { exitCode: rmExit } = await cleanupDockerObjects({
7296
7301
  projectName,
@@ -9005,7 +9010,7 @@ var CLI_VERSION;
9005
9010
  var init_version = __esm({
9006
9011
  "src/version.ts"() {
9007
9012
  "use strict";
9008
- CLI_VERSION = true ? "1.38.10" : "dev";
9013
+ CLI_VERSION = true ? "1.38.13" : "dev";
9009
9014
  }
9010
9015
  });
9011
9016
 
@@ -13927,6 +13932,7 @@ var init_main = __esm({
13927
13932
 
13928
13933
  // src/bin.ts
13929
13934
  import { runMain } from "citty";
13935
+ import { consola as consola42 } from "consola";
13930
13936
 
13931
13937
  // src/devcontainer/docker-group-bootstrap.ts
13932
13938
  import { spawnSync } from "child_process";
@@ -14212,6 +14218,7 @@ init_main();
14212
14218
  init_notifier();
14213
14219
  init_version();
14214
14220
  bootstrapDockerGroup();
14221
+ consola42.options.formatOptions.date = false;
14215
14222
  consumeInnerArgsFromProcessArgv();
14216
14223
  async function entry() {
14217
14224
  scheduleUpdateNotice({