Skip to content

Feat new snapshot controller - #1179

Draft
abellonioandrea wants to merge 19 commits into
netgroup-polito:masterfrom
abellonioandrea:feat-snapshot-controller
Draft

Feat new snapshot controller#1179
abellonioandrea wants to merge 19 commits into
netgroup-polito:masterfrom
abellonioandrea:feat-snapshot-controller

Conversation

@abellonioandrea

Copy link
Copy Markdown
Collaborator

Description

This PR introduces the new architecture for managing Instance Snapshots in CrownLabs, entirely replacing the legacy controller. The new design simplifies the snapshot lifecycle by leveraging CDI direct cloning (PVC-to-PVC).

This PR is related to project 5 about Cloud Programming course ay 2025-26.
Also related to #1172

@abellonioandrea abellonioandrea added the cloudprog This is a specification for a Cloud Programming course project label Jul 24, 2026
@kingmakerbot

Copy link
Copy Markdown
Collaborator

Hi @abellonioandrea. Thanks for your PR.

I am @kingmakerbot.
You can interact with me issuing a slash command in the first line of a comment.
Currently, I understand the following commands:

  • /rebase: Rebase this PR onto the master branch
  • /merge: Merge this PR into the master branch
  • /hold: Adds hold label to prevent merging with /merge
  • /unhold: Removes the hold label to allow merging with /merge
  • /deploy-staging: Deploy a staging environment to test this PR (the build-all flag enables user environments building)
  • /undeploy-staging: Manually undeploy the staging environment

Make sure this PR appears in the CrownLabs changelog, adding one of the following labels:

  • kind/breaking: 💥 Breaking Change
  • kind/feature: 🚀 New Feature
  • kind/bug: 🐛 Bug Fix
  • kind/cleanup: 🧹 Code Refactoring
  • kind/docs: 📝 Documentation

@abellonioandrea

Copy link
Copy Markdown
Collaborator Author

/deploy-staging

@kingmakerbot

Copy link
Copy Markdown
Collaborator

Your staging environment has been correctly deployed.
You can access the application frontend and Qlkube APIs using the following URLs:

@QcFe

QcFe commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator

Ciao @abellonioandrea, thanks for your PR!
Had a brief look at the changes, esp the types. Noticed you switched (esp, added) several things but iirc we eventually converged in keeping this as simple as possible. In particular, the only change I'd suggest is specifying the namespace of the source instance (currently the snapshot had to live in the same instance NS, while iirc we decided to give the user the possiblity to save it elsewhere to target where the new image should live).
Also I remind you that any CRD change needs a manual patch from a cluster admin in order to be tested on the cluster :)

@abellonioandrea

Copy link
Copy Markdown
Collaborator Author

Thanks a lot for your feedback @QcFe
I am working on reducing the complexity and making simpler.
Also thanks for the advice about the CRD changes, I wasn't remembering about it.

@abellonioandrea

Copy link
Copy Markdown
Collaborator Author

/rebase

@kingmakerbot
kingmakerbot force-pushed the feat-snapshot-controller branch from a0cbc7f to 1ce774f Compare July 28, 2026 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cloudprog This is a specification for a Cloud Programming course project sig/api sig/ui size/XXL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants