summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNate Sesti <sestinj@gmail.com>2023-08-01 01:22:46 -0700
committerNate Sesti <sestinj@gmail.com>2023-08-01 01:22:46 -0700
commit475abad54ebb205ed574eb3de2640a0d19844b93 (patch)
treedc58a8ef386260dfd7bf98a4bfed36dffe3608c5
parent70eb274f51c703c352865b8af39557b271fae6dd (diff)
downloadsncontinue-475abad54ebb205ed574eb3de2640a0d19844b93.tar.gz
sncontinue-475abad54ebb205ed574eb3de2640a0d19844b93.tar.bz2
sncontinue-475abad54ebb205ed574eb3de2640a0d19844b93.zip
start executables from vscode extension
-rwxr-xr-xextension/server/exe/run-darwinbin0 -> 16421088 bytes
-rw-r--r--extension/server/exe/run-linuxbin0 -> 28788480 bytes
-rw-r--r--extension/server/exe/run-win.exebin0 -> 15593484 bytes
-rw-r--r--extension/src/activation/environmentSetup.ts55
4 files changed, 54 insertions, 1 deletions
diff --git a/extension/server/exe/run-darwin b/extension/server/exe/run-darwin
new file mode 100755
index 00000000..4d8323ef
--- /dev/null
+++ b/extension/server/exe/run-darwin
Binary files differ
diff --git a/extension/server/exe/run-linux b/extension/server/exe/run-linux
new file mode 100644
index 00000000..3efe5633
--- /dev/null
+++ b/extension/server/exe/run-linux
Binary files differ
diff --git a/extension/server/exe/run-win.exe b/extension/server/exe/run-win.exe
new file mode 100644
index 00000000..30466272
--- /dev/null
+++ b/extension/server/exe/run-win.exe
Binary files differ
diff --git a/extension/src/activation/environmentSetup.ts b/extension/src/activation/environmentSetup.ts
index 50a2783a..5e2e3c0f 100644
--- a/extension/src/activation/environmentSetup.ts
+++ b/extension/src/activation/environmentSetup.ts
@@ -427,7 +427,60 @@ export async function startContinuePythonServer() {
return;
}
- setupServerPath();
+ console.log("Checking if server is old version");
+ // Kill the server if it is running an old version
+ if (fs.existsSync(serverVersionPath())) {
+ const serverVersion = fs.readFileSync(serverVersionPath(), "utf8");
+ if (
+ serverVersion === getExtensionVersion() &&
+ (await checkServerRunning(serverUrl))
+ ) {
+ // The current version is already up and running, no need to continue
+ return;
+ }
+ }
+ console.log("Killing old server...");
+ try {
+ await fkill(":65432");
+ } catch (e: any) {
+ if (!e.message.includes("Process doesn't exist")) {
+ console.log("Failed to kill old server:", e);
+ }
+ }
+
+ // Get name of the corresponding executable for platform
+ const exeDir = path.join(getExtensionUri().fsPath, "server", "exe");
+ let exePath: string;
+ if (os.platform() === "win32") {
+ exePath = path.join(exeDir, "run-win.exe");
+ } else if (os.platform() === "darwin") {
+ exePath = path.join(exeDir, "run-darwin");
+ await runCommand(`xattr -dr com.apple.quarantine ${exePath}`);
+ } else {
+ exePath = path.join(exeDir, "run-linux");
+ }
+
+ // Run the executable
+ const child = spawn(exePath, {
+ shell: true,
+ });
+ child.stderr.on("data", (data: any) => {
+ console.log(data.toString());
+ });
+
+ child.on("error", (error: any) => {
+ console.log(`error: ${error.message}`);
+ });
+
+ child.on("close", (code: any) => {
+ console.log(`child process exited with code ${code}`);
+ });
+
+ child.stdout.on("data", (data: any) => {
+ console.log(`stdout: ${data.toString()}`);
+ });
+
+ return;
return await retryThenFail(async () => {
console.log("Checking if server is old version");