From 003a8e455422728424af5c27450a6a289d80f4d5 Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Mon, 25 Jul 2022 19:16:30 +0000 Subject: [PATCH] feat: add arch to database --- .../migrations/20220725191205_architecture/migration.sql | 2 ++ apps/api/prisma/schema.prisma | 1 + apps/api/prisma/seed.js | 3 ++- apps/api/src/index.ts | 9 +++++++++ 4 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 apps/api/prisma/migrations/20220725191205_architecture/migration.sql diff --git a/apps/api/prisma/migrations/20220725191205_architecture/migration.sql b/apps/api/prisma/migrations/20220725191205_architecture/migration.sql new file mode 100644 index 000000000..2e0ff3e01 --- /dev/null +++ b/apps/api/prisma/migrations/20220725191205_architecture/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "Setting" ADD COLUMN "arch" TEXT; diff --git a/apps/api/prisma/schema.prisma b/apps/api/prisma/schema.prisma index 37f306b70..a3b6effc4 100644 --- a/apps/api/prisma/schema.prisma +++ b/apps/api/prisma/schema.prisma @@ -13,6 +13,7 @@ model Setting { fqdn String? @unique ipv4 String? ipv6 String? + arch String? isRegistrationEnabled Boolean @default(false) dualCerts Boolean @default(false) minPort Int @default(9000) diff --git a/apps/api/prisma/seed.js b/apps/api/prisma/seed.js index 78a625e17..96b55b105 100644 --- a/apps/api/prisma/seed.js +++ b/apps/api/prisma/seed.js @@ -24,7 +24,8 @@ async function main() { data: { isRegistrationEnabled: true, proxyPassword: encrypt(generatePassword()), - proxyUser: cuid() + proxyUser: cuid(), + arch: process.arch } }); } else { diff --git a/apps/api/src/index.ts b/apps/api/src/index.ts index 6a9666027..60f83a50f 100644 --- a/apps/api/src/index.ts +++ b/apps/api/src/index.ts @@ -130,6 +130,7 @@ fastify.listen({ port, host }, async (err: any, address: any) => { if (!scheduler.workers.has('deployApplication')) await scheduler.start('deployApplication'); } }); + await getArch(); await getIPAddress(); }); async function getIPAddress() { @@ -153,5 +154,13 @@ async function initServer() { await asyncExecShell(`docker network create --attachable coolify`); } catch (error) { } } +async function getArch() { + try { + const settings = await prisma.setting.findFirst({}) + if (settings && !settings.arch) { + await prisma.setting.update({ where: { id: settings.id }, data: { arch: process.arch } }) + } + } catch (error) { } +}