Skip to content

Commit fe9f122

Browse files
committed
Create the .ssh folder if it doesn't exist
1 parent 09ff747 commit fe9f122

File tree

3 files changed

+12
-2
lines changed

3 files changed

+12
-2
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"description": "Open any workspace with a single click.",
66
"repository": "https://github.com/coder/vscode-coder",
77
"preview": true,
8-
"version": "0.1.1",
8+
"version": "0.1.2",
99
"engines": {
1010
"vscode": "^1.73.0"
1111
},

src/extension.ts

+9-1
Original file line numberDiff line numberDiff line change
@@ -82,5 +82,13 @@ export async function activate(ctx: vscode.ExtensionContext): Promise<void> {
8282
return
8383
}
8484
const remote = new Remote(vscodeProposed, storage, ctx.extensionMode)
85-
await remote.setup(vscodeProposed.env.remoteAuthority)
85+
try {
86+
await remote.setup(vscodeProposed.env.remoteAuthority)
87+
} catch (ex) {
88+
await vscodeProposed.window.showErrorMessage("Failed to open workspace", {
89+
detail: ex as string,
90+
modal: true,
91+
useCustom: true,
92+
})
93+
}
8694
}

src/remote.ts

+2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import {
99
import { ProvisionerJobLog, Workspace, WorkspaceAgent } from "coder/site/src/api/typesGenerated"
1010
import EventSource from "eventsource"
1111
import find from "find-process"
12+
import { ensureDir } from "fs-extra"
1213
import * as fs from "fs/promises"
1314
import * as jsonc from "jsonc-parser"
1415
import * as os from "os"
@@ -409,6 +410,7 @@ export class Remote {
409410
LogLevel: "ERROR",
410411
})
411412

413+
await ensureDir(path.dirname(sshConfigFile))
412414
await fs.writeFile(sshConfigFile, parsedConfig.toString())
413415
}
414416

0 commit comments

Comments
 (0)