Improve CI by adding controller reconciliation and end-to-end tests
The current CI pipeline has unit and API test coverage (config, diff, storage, server) and UI build validation, but the controller reconciliation loop is not checked.
I’d like to improve the CI pipeline by adding:
1. Controller reconciliation tests
Create a FlashbackPolicy for a resource (e.g. Deployment)
Create the tracked resource
Update the resource
Verify a new revision is stored
Verify a diff/patch is created for the update
This ensures the reconciliation loop correctly triggers tracking, diff computation, and storage updates.
2. End-to-end tests
This test will help understand the user flow.
The test contains:
- Spin up a KIND cluster
- Deploy kflashback
- Create a FlashbackPolicy
- Create and update a tracked resource
- Verify revisions are stored
- Reconstruct resource at a specific revision
- Diff between revisions
- Verify API/dashboard is accessible
I'd like to take this up. I'm familiarising myself with testing the CRDs. Please give me some time to come up with a PR. Thanks:)
Improve CI by adding controller reconciliation and end-to-end tests
The current CI pipeline has unit and API test coverage (config, diff, storage, server) and UI build validation, but the controller reconciliation loop is not checked.
I’d like to improve the CI pipeline by adding:
1. Controller reconciliation tests
Create a FlashbackPolicy for a resource (e.g. Deployment)
Create the tracked resource
Update the resource
Verify a new revision is stored
Verify a diff/patch is created for the update
This ensures the reconciliation loop correctly triggers tracking, diff computation, and storage updates.
2. End-to-end tests
This test will help understand the user flow.
The test contains:
I'd like to take this up. I'm familiarising myself with testing the CRDs. Please give me some time to come up with a PR. Thanks:)