mirror of
https://github.com/coder/coder.git
synced 2026-10-24 01:26:25 +08:00
* refactor provisionersdk protocol
Signed-off-by: Spike Curtis <spike@coder.com>
* refactor provisioners to use new protocol
Signed-off-by: Spike Curtis <spike@coder.com>
* refactor provisionerd to use new protocol
Signed-off-by: Spike Curtis <spike@coder.com>
* refactor tests & proto renames
* Fixes from self-review
Signed-off-by: Spike Curtis <spike@coder.com>
* appease fmt & link
Signed-off-by: Spike Curtis <spike@coder.com>
* code review fixes & e2e fixes
Signed-off-by: Spike Curtis <spike@coder.com>
* More fmt
Signed-off-by: Spike Curtis <spike@coder.com>
* Code review fixes
Signed-off-by: Spike Curtis <spike@coder.com>
* new gen; use uuid for session workdir
Signed-off-by: Spike Curtis <spike@coder.com>
* Revert nix-based gen CI task until dogfood is on nix
Signed-off-by: Spike Curtis <spike@coder.com>
* revert deleting dogfood Docker stuff
Signed-off-by: Spike Curtis <spike@coder.com>
* Revert "revert deleting dogfood Docker stuff"
This reverts commit 9762158167.
---------
Signed-off-by: Spike Curtis <spike@coder.com>
53 lines
1.2 KiB
TypeScript
53 lines
1.2 KiB
TypeScript
import { test } from "@playwright/test"
|
|
import { randomUUID } from "crypto"
|
|
import {
|
|
createTemplate,
|
|
createWorkspace,
|
|
downloadCoderVersion,
|
|
sshIntoWorkspace,
|
|
startAgent,
|
|
} from "../helpers"
|
|
|
|
const clientVersion = "v0.14.0"
|
|
|
|
test("ssh with client " + clientVersion, async ({ page }) => {
|
|
const token = randomUUID()
|
|
const template = await createTemplate(page, {
|
|
apply: [
|
|
{
|
|
apply: {
|
|
resources: [
|
|
{
|
|
agents: [
|
|
{
|
|
token,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
},
|
|
],
|
|
})
|
|
const workspace = await createWorkspace(page, template)
|
|
await startAgent(page, token)
|
|
const binaryPath = await downloadCoderVersion(clientVersion)
|
|
|
|
const client = await sshIntoWorkspace(page, workspace, binaryPath)
|
|
await new Promise<void>((resolve, reject) => {
|
|
// We just exec a command to be certain the agent is running!
|
|
client.exec("exit 0", (err, stream) => {
|
|
if (err) {
|
|
return reject(err)
|
|
}
|
|
stream.on("exit", (code) => {
|
|
if (code !== 0) {
|
|
return reject(new Error(`Command exited with code ${code}`))
|
|
}
|
|
client.end()
|
|
resolve()
|
|
})
|
|
})
|
|
})
|
|
})
|