-
Notifications
You must be signed in to change notification settings - Fork 371
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
Remote content is deleted when client is reinstalled and workspace is re-created #1459
Comments
Thanks for raising your issue @ADRFranklin. Devpod persists the workspaces in your local folder |
Recently I had a system failure and was unable to fully recover (lost all local files). I made the assumption that my data would be okay since it was on a remote machine, however I almost lost the changes (I ssh'ed in to the remote machine and backed up the .devpod folder), because I was not aware that reinstalling and re-creating the workspace would in fact delete my remote data (though backing up the folder was just something I did just in case). Devpod didn't warn me the data would be deleted and just went ahead and deleted it, if anything a confirmation should be given or some other way to handle that with user input.
I would say that for most applications, however sometimes you are forced to, because of weird linux things. Sometimes it is unavoidable. Would it not make sense to store some data on the remote to help with recreating the workspace? As if anything goes wrong on the client, it is then expected that all data is lost from that point on, which seems dangerous. I just think more measures should be in place to safe guard the data. One question I do have is, is there a way to manually re-create the workspace locally in a way were devpod skips uploading folder data, and that and treats the workspace as if it's already been initialised? I would prefer this method for now, since there isn't currently a way to continue a workspace. |
Hi @ADRFranklin thanks for providing more info on your use case. I agree that we should make it clearer when recreating the workspace that data could be lost. Your solution of backing up the remote I'll keep this issue open and if you have any specific ideas on how / what changes would need to be made to persistence of the remote .devpod then I'll be happy to review. But I think at the moment this is a lower priority as it occurs after a reinstall of devpod. Otherwise I think we should just improve the logs and docs to make what is happening clearer. |
What happened?
So if the client happens to need to reinstall (due to system failure or similar issues) there is no way to re-import an already existing project on a remote machine. An attempt to re-create the project will in fact make devpod delete the currently existing data, meaning if you were not using git, or had unstaged changes those files are now gone and devpod will now try to re-upload the files what you currently have, and because devpod does not sync file changes down, you end up with lost progression.
What did you expect to happen instead?
I would expect devpod to figure out if an already existing project with the same name exists, and if so, ask the client if they would prefer to use it, or change the workspace name to something else. I also think that when an ssh provider is added, it should go ahead and check if any workspaces already exist on the provider and import those workspaces for the client so they can just continue.
How can we reproduce the bug? (as minimally and precisely as possible)
Local Environment:
DevPod Provider:
Anything else we need to know?
This might need to be another issue, but when you create a workspace using ssh, devpod sometimes fail to create a workspace due to permission issues.
The text was updated successfully, but these errors were encountered: