Skip to content

fix: generate trustee runner passwords and disable api-user (ovcs) - #3930

Open
xalsina-sequent wants to merge 3 commits into
ovcsfrom
fix/meta-13842-followup/ovcs
Open

xalsina-sequent wants to merge 3 commits into
ovcsfrom
fix/meta-13842-followup/ovcs

Conversation

@xalsina-sequent

Copy link
Copy Markdown
Contributor

Parent issue: https://github.com/sequentech/meta/issues/13842

Follow-up to #3566, from the review of its 9.0/10.0/10.1 backports (#3563, #3562, #3565).

Trustee runner passwords. Operators set each trustee's Keycloak password at its first login, and the unattended runner signs in with TRUSTEE_PASSWORD. The deployment files shipped TRUSTEE1_PASSWORD=trustee1 (and trustee2 and trustee3), which leads an operator to set password = username, the pattern meta#13842 removes.

  • Remote deployment: configure-environment.sh generates TRUSTEE1_PASSWORD and TRUSTEE2_PASSWORD, and the example file leaves them empty.
  • Air-gap bundle: .env ships generate-on-first-up, and up generates TRUSTEE1_PASSWORD to TRUSTEE3_PASSWORD once, the same way it handles MESSAGING_RELAY_SECRET.

api-user disabled in the template. It is in the admin group, has no credentials, and nothing signs in with it, so a password set on it later would give a working administrator account. A Windmill test next to the template's no-credentials test keeps it disabled.

Docs: developers_keycloak.md and trustee-configuration.md updated.

The committed sequent-core WASM package is rebuilt because the template is one of its recorded inputs.

Validation

  • scripts.test_tenant_bootstrap_configuration and scripts.dev.test_airgap_bundle pass on Linux, including new tests for the generated passwords. The air-gap up uses GNU sed -i, so the existing relay-secret test also fails on macOS.
  • sequent-core keycloak::realm and permissions tests pass.
  • step-dev wasm --check-package passes.
  • The Windmill test file is identical to the backports, where the focused realm_user_credentials and tenant_bootstrap_admin tests pass.

Not in this PR: gitops ensure_keycloak_trustee_users still creates trustee4+ with password = username (part of meta#13842's fix).

🤖 Generated with Claude Code

Parent issue: sequentech/meta#13842

Follow-up to #3566. The realm template no longer carries passwords, and
operators set each trustee's password at its first login. The deployment
files still shipped `TRUSTEE1_PASSWORD=trustee1` (and trustee2, trustee3)
for the unattended runners, which leads an operator to set password =
username, the pattern meta#13842 removes.

- Remote deployment: `configure-environment.sh` generates
  `TRUSTEE1_PASSWORD` and `TRUSTEE2_PASSWORD`; the example leaves them
  empty.
- Air-gap bundle: `.env` ships `generate-on-first-up` placeholders, and
  `up` generates `TRUSTEE1_PASSWORD`..`TRUSTEE3_PASSWORD` once, as it
  already does for `MESSAGING_RELAY_SECRET`.
- Realm template: `api-user` is disabled. It is in the admin group, has
  no credentials and nothing signs in with it, so a password set on it
  later would give a working administrator account. A Windmill test
  next to the template's no-credentials test keeps it disabled.
- Docs: the runner's `TRUSTEE_PASSWORD` is the password to set on the
  trustee account; `api-user` is disabled.

The committed sequent-core WASM package is rebuilt because the template
is one of its recorded inputs (`step-dev wasm --check-package` passes).

Validation: `scripts.test_tenant_bootstrap_configuration` and
`scripts.dev.test_airgap_bundle` pass on Linux (the air-gap `up` uses GNU
sed), including new tests for the generated passwords; sequent-core
`keycloak::realm` and `permissions` tests pass. The Windmill test file is
identical to the release backports, where the focused
`realm_user_credentials` and `tenant_bootstrap_admin` tests pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review: 2
  • release/10.0
  • feat/meta-12767/.*

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: sequentech/step/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: fa6e6cba-29d5-4a9c-b123-33395039aedd

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 17, 2026 •

Copy link
Copy Markdown
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://docs.sequentech.io/docusaurus/pr-preview/pr-3930/

Built to branch doc-previews at 2026-10-19 08:00 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

xalsina-sequent and others added 2 commits October 19, 2026 06:50
Conflicts were only in the generated sequent-core packages and yarn.lock;
rebuilt the package from the merged sources.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Conflicts were only in the generated sequent-core packages and yarn.lock;
rebuilt the package from the merged sources.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant