Skip to content

[Spike] Migration from Current Architecture #184

Description

@mikenairn

Goal

Build a working migration POC that demonstrates the end-to-end migration path from current operator architecture (with OLMv0 dependencies) to consolidated kuadrant-operator, ensuring zero downtime and safe resource ownership transfer.

Critical: This is not a theoretical migration plan. We need a working migration process (script or controller) that can be executed and demonstrated to validate the approach works in practice without downtime.

Questions to Answer

  • CRD Ownership Transfer: What happens when authorino-operator CSV is deleted? How long for OLM label removal? Can new CSV install immediately?
  • CRD Bundling: Must we bundle Authorino/Limitador CRDs in v1.0? Can we remove them in v2.0 safely? What if standalone authorino-operator is already installed?
  • Workload Ownership: Does stripping ownerReferences cause pod restarts? Can we adopt existing Deployments without recreation?
  • Migration Automation: Manual script vs automated controller? What RBAC needed? User experience?
  • Safety: How do we verify it's safe to delete old CRs? How do we rollback if migration fails mid-way?

Notes

This task depends on #183 establishing:

  • The consolidated operator architecture
  • Component packaging structure
  • RBAC model
  • How kuadrant-operator deploys workloads

Once #183 is complete, this spike will validate the migration path from current (OLMv0 with dependencies) to consolidated architecture.

Migration happens on OLMv0 - users must migrate before upgrading cluster to OLMv1.

Deliverables

Working POC:

  • Migration script or controller code (whichever chosen)
  • Demonstrated migration flow:
    • Existing installation with authorino-operator + limitador-operator
    • Execute migration
    • Verify zero pod restarts
    • Verify policies continue working
    • Rollback test (if migration fails)

Answers:

  • Migration timing matrix (CRD label removal timing, safe installation window)
  • CRD bundling decision (which CRDs in v1.0, deprecation timeline for v2.0)
  • Workload ownership transfer procedure (tested, zero downtime)
  • Chosen migration approach (manual script vs automated) with rationale
  • User-facing migration guide (step-by-step runbook)
  • Troubleshooting guide (common errors, rollback procedures)

Metadata

Metadata

Assignees

Type

Projects

Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions