feat: retain Kratos identities during management handoff #70

Merged
binjovi-bot merged 2 commits from feat/retain-identity-on-delete into trunk 2026-09-06 02:41:19 +00:00
Owner

Add spec.deletionPolicy with Delete as the backward-compatible default. Retain removes the Kubernetes finalizer without resolving the Kratos client, reading a password Secret, or calling the Kratos API. This allows transfer of identity management while preserving the live account and credentials.

The field uses the existing shared reconciliation policy. The generated CRD admits only Delete or Retain. Tests cover retained identities with and without a saved ID, absent client configuration and Secret, and continued finalizer retention for default or explicit Delete during a Kratos outage.

Validation: failing tests against the old behavior, passing focused tests, make manifests generate, make lint-fix (0 issues), and make test with Kubernetes envtest.

Add spec.deletionPolicy with Delete as the backward-compatible default. Retain removes the Kubernetes finalizer without resolving the Kratos client, reading a password Secret, or calling the Kratos API. This allows transfer of identity management while preserving the live account and credentials. The field uses the existing shared reconciliation policy. The generated CRD admits only Delete or Retain. Tests cover retained identities with and without a saved ID, absent client configuration and Secret, and continued finalizer retention for default or explicit Delete during a Kratos outage. Validation: failing tests against the old behavior, passing focused tests, make manifests generate, make lint-fix (0 issues), and make test with Kubernetes envtest.
feat: retain Kratos identities during management handoff
Some checks reported errors
binjovi/ci A newer pull-request head superseded this plan
ae6b8031df
docs: show the retained identity handoff sequence
All checks were successful
binjovi/ci Binjovi completed the frozen plan
e7b5a2993d
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
sean/kratos-identity-operator!70
No description provided.