Skip to content

[PVC] trigger prebuild affected all the users without PVC feature flag enabled #11769

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Tracked by #7901
jenting opened this issue Aug 1, 2022 · 5 comments · Fixed by #12165
Closed
Tracked by #7901

[PVC] trigger prebuild affected all the users without PVC feature flag enabled #11769

jenting opened this issue Aug 1, 2022 · 5 comments · Fixed by #12165
Labels
team: workspace Issue belongs to the Workspace team type: bug Something isn't working

Comments

@jenting
Copy link
Contributor

jenting commented Aug 1, 2022

Bug description

While testing PVC + prebuild, we enable the PVC feature flag internally (without enabling PVC on the project).
image
image

Then force the trigger to prebuild on repos. For example

After that, all the users open the above repos https://gitlab.com/gitpod-io/template-python-flask, https://gitlab.com/gitpod-io/template-python-django makes the user use the PVC feature as well, which means the PVC and VolumeSnapshot object be created within the cluster. Furthermore, since we internal use the XL pool (PVC size is 50Gi), the normal user can't start the workspace because the user's PVC size is 30Gi which causes the PVC restore failure.

Steps to reproduce

  1. Enable PVC feature flag.
  2. Manually retrigger prebuild.

Workspace affected

No response

Expected behavior

No response

Example repository

No response

Anything else?

#7901

@jenting jenting added the type: bug Something isn't working label Aug 1, 2022
@jenting jenting added the team: workspace Issue belongs to the Workspace team label Aug 1, 2022
@kylos101
Copy link
Contributor

kylos101 commented Aug 2, 2022

@sagor999 I think this was expected, that if a prebuild is done with PVC enabled, workspaces that are created from it will also use PVC? wdyt? In this case, it seems like a manual prebuild was done (as a user), and the feature flag was set at the user level (rather than in config cat or on the project itself in Gitpod).

@sagor999
Copy link
Contributor

sagor999 commented Aug 2, 2022

Yeah. It is kind of working as designed, except that I did not think that manual prebuild (via url link) would be handled by server like normal prebuild, meaning anyone else opening a repo will now use that prebuild.

@jenting
Copy link
Contributor Author

jenting commented Aug 3, 2022

@sagor999 I think this was expected, that if a prebuild is done with PVC enabled, workspaces that are created from it will also use PVC? wdyt? In this case, it seems like a manual prebuild was done (as a user), and the feature flag was set at the user level (rather than in config cat or on the project itself in Gitpod).

I think it's not expected, but what I did last time was enable PVC on my account, but I did not enable PVC on the project.

@sagor999
Copy link
Contributor

sagor999 commented Aug 3, 2022

@jenting you are right, I think we should not be enabling PVC for prebuild if project does not have PVC enabled. So even though the user has flag enabled, but if prebuild is manually started for the project that doesn't have flag enabled, then it should not use PVC.

@jenting
Copy link
Contributor Author

jenting commented Aug 25, 2022

The PR is deployed by WebApp rather than Workspace, therefore, I changed the status from Awaiting Deployment to Done.

@jenting jenting moved this from Awaiting Deployment to Done in 🌌 Workspace Team Aug 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team: workspace Issue belongs to the Workspace team type: bug Something isn't working
Projects
No open projects
Status: Done
3 participants