Skip to content

Commit

Permalink
fix(cli): import legacy workspaces
Browse files Browse the repository at this point in the history
  • Loading branch information
pascalbreuninger committed Feb 5, 2025
1 parent 02a89b6 commit 8b37b09
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 9 deletions.
8 changes: 2 additions & 6 deletions cmd/pro/import_workspace.go
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ func (cmd *ImportCmd) Run(ctx context.Context, args []string) error {
return fmt.Errorf("resolve instance options: %w", err)
}

err = cmd.writeWorkspaceDefinition(devPodConfig, provider, instanceOpts, instance)
err = cmd.writeWorkspaceDefinition(devPodConfig, provider, instanceOpts)
if err != nil {
return errors.Wrap(err, "prepare workspace to import definition")
}
Expand Down Expand Up @@ -152,7 +152,7 @@ func (cmd *ImportCmd) writeNewWorkspaceDefinition(devPodConfig *config.Config, i
return provider2.SaveWorkspaceConfig(workspaceObj)
}

func (cmd *ImportCmd) writeWorkspaceDefinition(devPodConfig *config.Config, provider *provider2.ProviderConfig, instanceOpts map[string]string, instance *managementv1.DevPodWorkspaceInstance) error {
func (cmd *ImportCmd) writeWorkspaceDefinition(devPodConfig *config.Config, provider *provider2.ProviderConfig, instanceOpts map[string]string) error {
workspaceObj := &provider2.Workspace{
ID: cmd.WorkspaceId,
UID: cmd.WorkspaceUid,
Expand All @@ -162,10 +162,6 @@ func (cmd *ImportCmd) writeWorkspaceDefinition(devPodConfig *config.Config, prov
},
Context: devPodConfig.DefaultContext,
Imported: !cmd.Own,
Pro: &provider2.ProMetadata{
Project: instanceOpts[platform.ProjectEnv],
DisplayName: instance.Spec.DisplayName,
},
}

devPodConfig, err := options.ResolveOptions(context.Background(), devPodConfig, provider, instanceOpts, false, false, nil, cmd.log)
Expand Down
6 changes: 3 additions & 3 deletions pkg/workspace/delete.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,16 +44,16 @@ func Delete(ctx context.Context, devPodConfig *config.Config, args []string, ign
return workspaceID, nil
}

// skip deletion if imported
// only remove local folder if workspace is imported or pro
workspaceConfig := client.WorkspaceConfig()
if !force && workspaceConfig.Imported {
if !force && (workspaceConfig.Imported || workspaceConfig.IsPro()) {
// delete workspace folder
err = clientimplementation.DeleteWorkspaceFolder(devPodConfig.DefaultContext, client.Workspace(), workspaceConfig.SSHConfigPath, log)
if err != nil {
return "", err
}

log.Donef("Skip remote deletion of workspace %s as it is imported, if you really want to delete this workspace also remotely, run with --force", client.Workspace())
log.Donef("Skip remote deletion of workspace %s, if you really want to delete this workspace also remotely, run with --force", client.Workspace())
return client.Workspace(), nil
}

Expand Down

0 comments on commit 8b37b09

Please sign in to comment.