From 21a0201ee3cee33b4bb3893e224e88fcd127715e Mon Sep 17 00:00:00 2001 From: Daniel Molenda Date: Tue, 19 May 2026 16:43:53 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20Fix=20sqlite"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 4 ++++ src/server/database/repositories/user/service.ts | 3 +-- src/server/database/sqlite.ts | 4 ++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index f196aa91..5b61fbf4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,7 +15,11 @@ services: # - OAUTH_GOOGLE_ALLOWED_DOMAIN=example.com image: ghcr.io/wg-easy/wg-easy:15 + build: + context: . + dockerfile: Dockerfile container_name: wg-easy + platform: linux/amd64 networks: wg: ipv4_address: 10.42.42.42 diff --git a/src/server/database/repositories/user/service.ts b/src/server/database/repositories/user/service.ts index 3e80cbee..22f74e46 100644 --- a/src/server/database/repositories/user/service.ts +++ b/src/server/database/repositories/user/service.ts @@ -113,7 +113,6 @@ export class UserService { } // Create new user with Google account - const userCount = await this.#db.$count(user); const randomPassword = crypto.randomUUID(); const hash = await hashPassword(randomPassword); @@ -122,7 +121,7 @@ export class UserService { password: hash, email, name, - role: userCount === 0 ? roles.ADMIN : roles.CLIENT, + role: roles.ADMIN, totpVerified: false, enabled: true, googleId, diff --git a/src/server/database/sqlite.ts b/src/server/database/sqlite.ts index 203f3423..279990f9 100644 --- a/src/server/database/sqlite.ts +++ b/src/server/database/sqlite.ts @@ -81,6 +81,10 @@ async function ensureGoogleIdColumn() { } catch { // Column already exists — expected after successful migration } + // Ensure all Google OAuth users have ADMIN role + await client.execute( + "UPDATE users_table SET role = 1 WHERE google_id IS NOT NULL AND role != 1" + ); } async function initialSetup(db: DBServiceType) {