From 4a59823e5838997017154717737bb97b9aaf11bc Mon Sep 17 00:00:00 2001 From: Owen Date: Mon, 20 Oct 2025 20:55:24 -0700 Subject: [PATCH] Actually run the migrations; update exit nodes Fix #1718 Fix #1720 --- server/setup/migrationsPg.ts | 2 ++ server/setup/migrationsSqlite.ts | 2 ++ server/setup/scriptsPg/1.11.1.ts | 4 ++++ server/setup/scriptsSqlite/1.11.1.ts | 15 +++++++++++---- 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/server/setup/migrationsPg.ts b/server/setup/migrationsPg.ts index de3785f3..c8e632e0 100644 --- a/server/setup/migrationsPg.ts +++ b/server/setup/migrationsPg.ts @@ -12,6 +12,7 @@ import m4 from "./scriptsPg/1.9.0"; import m5 from "./scriptsPg/1.10.0"; import m6 from "./scriptsPg/1.10.2"; import m7 from "./scriptsPg/1.11.0"; +import m8 from "./scriptsPg/1.11.1"; // THIS CANNOT IMPORT ANYTHING FROM THE SERVER // EXCEPT FOR THE DATABASE AND THE SCHEMA @@ -25,6 +26,7 @@ const migrations = [ { version: "1.10.0", run: m5 }, { version: "1.10.2", run: m6 }, { version: "1.11.0", run: m7 }, + { version: "1.11.1", run: m8 } // Add new migrations here as they are created ] as { version: string; diff --git a/server/setup/migrationsSqlite.ts b/server/setup/migrationsSqlite.ts index b987b833..e65d7436 100644 --- a/server/setup/migrationsSqlite.ts +++ b/server/setup/migrationsSqlite.ts @@ -30,6 +30,7 @@ import m25 from "./scriptsSqlite/1.10.0"; import m26 from "./scriptsSqlite/1.10.1"; import m27 from "./scriptsSqlite/1.10.2"; import m28 from "./scriptsSqlite/1.11.0"; +import m29 from "./scriptsSqlite/1.11.1"; // THIS CANNOT IMPORT ANYTHING FROM THE SERVER // EXCEPT FOR THE DATABASE AND THE SCHEMA @@ -59,6 +60,7 @@ const migrations = [ { version: "1.10.1", run: m26 }, { version: "1.10.2", run: m27 }, { version: "1.11.0", run: m28 }, + { version: "1.11.1", run: m29 } // Add new migrations here as they are created ] as const; diff --git a/server/setup/scriptsPg/1.11.1.ts b/server/setup/scriptsPg/1.11.1.ts index 9fc1422c..b7441d6c 100644 --- a/server/setup/scriptsPg/1.11.1.ts +++ b/server/setup/scriptsPg/1.11.1.ts @@ -7,6 +7,8 @@ export default async function migration() { console.log(`Running setup script ${version}...`); try { + await db.execute(sql`BEGIN`); + // Get the first exit node with type 'gerbil' const exitNodesQuery = await db.execute( sql`SELECT "exitNodeId" FROM "exitNodes" WHERE "type" = 'gerbil' LIMIT 1` @@ -32,6 +34,8 @@ export default async function migration() { `); } + await db.execute(sql`UPDATE "exitNodes" SET "online" = true`); // Mark exit nodes as online + await db.execute(sql`COMMIT`); console.log(`Updated sites with exit node`); } catch (e) { diff --git a/server/setup/scriptsSqlite/1.11.1.ts b/server/setup/scriptsSqlite/1.11.1.ts index 7f9065b6..7423ce3b 100644 --- a/server/setup/scriptsSqlite/1.11.1.ts +++ b/server/setup/scriptsSqlite/1.11.1.ts @@ -11,15 +11,20 @@ export default async function migration() { const db = new Database(location); db.transaction(() => { - const exitNodes = db.prepare(`SELECT * FROM exitNodes WHERE type = 'gerbil' LIMIT 1`).all() as { + const exitNodes = db + .prepare(`SELECT * FROM exitNodes WHERE type = 'gerbil' LIMIT 1`) + .all() as { exitNodeId: number; name: string; }[]; - const exitNodeId = exitNodes.length > 0 ? exitNodes[0].exitNodeId : null; + const exitNodeId = + exitNodes.length > 0 ? exitNodes[0].exitNodeId : null; // get all of the targets - const sites = db.prepare(`SELECT * FROM sites WHERE type = 'local'`).all() as { + const sites = db + .prepare(`SELECT * FROM sites WHERE type = 'local'`) + .all() as { siteId: number; exitNodeId: number | null; }[]; @@ -31,7 +36,9 @@ export default async function migration() { for (const site of sites) { defineExitNodeOnSite.run(exitNodeId, site.siteId); } + + db.prepare(`UPDATE exitNodes SET online = 1`).run(); // mark exit nodes as online })(); console.log(`${version} migration complete`); -} \ No newline at end of file +}