Skip to content

docs(runbook): Keycloak realm rename 0mpc -> 0mcp#21

Merged
baditaflorin merged 1 commit into
mainfrom
claude/keycloak-realm-rename-runbook
May 31, 2026
Merged

docs(runbook): Keycloak realm rename 0mpc -> 0mcp#21
baditaflorin merged 1 commit into
mainfrom
claude/keycloak-realm-rename-runbook

Conversation

@baditaflorin
Copy link
Copy Markdown
Owner

Summary

Adds a runbook for reconciling note #2: the live Keycloak realm is still 0mpc while config now derives 0mcp from the migrated domain.

Verified live before writing: https://sso.0mcp.com/realms/0mpc/...200, /realms/0mcp/...404. Verified the create-vs-rename hazard by reading roles/keycloak_runtime/tasks/main.yml (uses community.general.keycloak_realm with id: {{ keycloak_realm_name }}, which would create an empty 0mcp realm and orphan 0mpc).

The runbook documents the safe in-place PUT rename (Option A, preserves users/clients) vs fresh-import (Option B), with backup, maintenance window, reconcile-converge, verify, and rollback.

Why docs-only (not executed)

The rename is a platform-wide SSO outage touching authentication and requires live admin credentials. It is deferred to an operator-run maintenance window rather than executed autonomously.

Test plan

  • Docs only; no code paths changed.

After the 0mpc.com -> 0mcp.com domain migration, keycloak_realm_name now
derives '0mcp' but the live realm is still '0mpc'. A naive converge-keycloak
would create an empty '0mcp' realm and orphan the populated '0mpc' one
(community.general.keycloak_realm creates by id; realm id is immutable).

Document the safe in-place PUT rename (Option A, preserves users/clients) vs
fresh-import (Option B), with backup, maintenance-window, reconcile-converge,
verify, and rollback steps. Execution is deferred to a maintenance window.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@baditaflorin baditaflorin merged commit 0824bd4 into main May 31, 2026
@baditaflorin baditaflorin deleted the claude/keycloak-realm-rename-runbook branch May 31, 2026 21:13
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