Skip to content

Allow a workspace to be "frozen" #5660

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
mattlqx opened this issue Jan 10, 2023 · 5 comments
Closed

Allow a workspace to be "frozen" #5660

mattlqx opened this issue Jan 10, 2023 · 5 comments
Labels
needs decision Needs a higher-level decision to be unblocked.

Comments

@mattlqx
Copy link

mattlqx commented Jan 10, 2023

I'm thinking of a few situations where it might be desirable to keep a workspace in Coder, but ensure that Coder will not take any actions on it. Meaning Coder wouldn't stop or start it based on schedule, would disable the start button, and would make the workspace undeletable for as long as the workspace is in this "frozen" state. As part of freezing a workspace, the stop lifecycle would be run first to turn down compute resources (or this could be an option and by default leave everything its current state). I'm mostly thinking about this from the POV of an admin, but there may be cases where an end-user may desire this.

Possible Use-Cases

  1. Extended leave - We could ensure that when a person goes on leave, that their data will not be deleted by inactivity deletion automation and clean up the workspace's compute resources. Once they return, unfreezing their workspaces will allow them to return to being controlled by a start/stop schedule. In many cases, our engineers take leave in chunks larger than our deletion window.
  2. Terminations - There may be scenarios where an employee leaves abruptly and for security or HR reasons, we want to retain their data for a period. Freezing a workspace would prevent the SCIM provisioned user deletion event from cleaning up the workspace.
  3. Maintenance - I haven't thought too much about this one, but suppose I have an EBS volume defined as part of a template and I want to expand the size. I'd rather apply this change through a script so that I can expand the filesystem on the volume at the same time. During this process, I would want to ensure that Coder cannot make changes/run Terraform against the workspaces using this template. I could freeze and unfreeze to accomplish this. This is a contrived example, but this is the spirit of what I'm talking about.
@ammario
Copy link
Member

ammario commented Jan 10, 2023

Related #4504

@github-actions
Copy link

This issue is becoming stale. In order to keep the tracker readable and actionable, I'm going close to this issue in 7 days if there isn't more activity.

@github-actions github-actions bot added the stale This issue is like stale bread. label Apr 11, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 18, 2023
@bpmct bpmct reopened this May 9, 2023
@github-actions github-actions bot removed the stale This issue is like stale bread. label May 10, 2023
@matifali
Copy link
Member

matifali commented Sep 3, 2023

@bpmct, is it the same as locked workspaces in #8174?

@bpmct
Copy link
Member

bpmct commented Sep 5, 2023

Different, actually. We ended up renaming "locked" to "dormant" as it was a better description for how it works with our "workspace actions cleanup" feature.

Dormant workspaces: Workspaces are moved to dormant after n (configurable) days of inactivity and may be auto-deleted or recovered/triaged by the user/admin.

Frozen workspaces: An admin can mark a workspace as frozen (or locked, we haven't figured out the terminology) to prevent deletion or changes (such as it being auto-deleted)! Perhaps somebody goes on extended leave and they want to make sure their workspaces aren't marked as dormant.

@github-actions github-actions bot added the stale This issue is like stale bread. label Mar 4, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 11, 2024
@matifali matifali removed the stale This issue is like stale bread. label Mar 11, 2024
@matifali matifali reopened this Mar 11, 2024
@coder-labeler coder-labeler bot added the needs decision Needs a higher-level decision to be unblocked. label Mar 11, 2024
@sreya
Copy link
Collaborator

sreya commented Apr 4, 2024

You can achieve this by setting a dormancy threshold without setting an auto-deletion threshold

@sreya sreya closed this as completed Apr 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs decision Needs a higher-level decision to be unblocked.
Projects
None yet
Development

No branches or pull requests

5 participants