|
7 | 7 | getWorkspaceByOwnerAndName, |
8 | 8 | startWorkspace, |
9 | 9 | getDeploymentSSHConfig, |
| 10 | +getTemplateVersion, |
10 | 11 | }from"coder/site/src/api/api" |
11 | 12 | import{ProvisionerJobLog,Workspace,WorkspaceAgent}from"coder/site/src/api/typesGenerated" |
12 | 13 | importEventSourcefrom"eventsource" |
@@ -303,12 +304,20 @@ export class Remote { |
303 | 304 | if(newWorkspace.outdated){ |
304 | 305 | if(!this.storage.workspace?.outdated||!hasShownOutdatedNotification){ |
305 | 306 | hasShownOutdatedNotification=true |
306 | | -vscode.window |
307 | | -.showInformationMessage("A new version of your workspace is available.","Update") |
308 | | -.then((action)=>{ |
309 | | -if(action==="Update"){ |
310 | | -vscode.commands.executeCommand("coder.workspace.update",newWorkspace) |
| 307 | +getTemplate(newWorkspace.template_id) |
| 308 | +.then((template)=>{ |
| 309 | +returngetTemplateVersion(template.active_version_id) |
| 310 | +}) |
| 311 | +.then((version)=>{ |
| 312 | +letinfoMessage=`A new version of your workspace is available.` |
| 313 | +if(version.message){ |
| 314 | +infoMessage=`A new version of your workspace is available:${version.message}` |
311 | 315 | } |
| 316 | +vscode.window.showInformationMessage(infoMessage,"Update").then((action)=>{ |
| 317 | +if(action==="Update"){ |
| 318 | +vscode.commands.executeCommand("coder.workspace.update",newWorkspace) |
| 319 | +} |
| 320 | +}) |
312 | 321 | }) |
313 | 322 | } |
314 | 323 | } |
@@ -507,7 +516,14 @@ export class Remote { |
507 | 516 | if(this.mode===vscode.ExtensionMode.Production){ |
508 | 517 | binaryPath=awaitthis.storage.fetchBinary() |
509 | 518 | }else{ |
510 | | -binaryPath=path.join(os.tmpdir(),"coder") |
| 519 | +try{ |
| 520 | +// In development, try to use `/tmp/coder` as the binary path. |
| 521 | +// This is useful for debugging with a custom bin! |
| 522 | +binaryPath=path.join(os.tmpdir(),"coder") |
| 523 | +awaitfs.stat(binaryPath) |
| 524 | +}catch(ex){ |
| 525 | +binaryPath=awaitthis.storage.fetchBinary() |
| 526 | +} |
511 | 527 | } |
512 | 528 | if(!binaryPath){ |
513 | 529 | thrownewError("Failed to fetch the Coder binary!") |
|