From a97f7d225a298baff778483129f6059c3fb79fd2 Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Fri, 4 Nov 2022 21:34:24 +0100 Subject: [PATCH] fix: remove old minio proxies --- apps/api/src/lib.ts | 2 +- apps/api/src/lib/common.ts | 45 ------------------- apps/api/src/lib/services/handlers.ts | 18 +++++++- .../src/routes/api/v1/services/handlers.ts | 2 +- 4 files changed, 18 insertions(+), 49 deletions(-) diff --git a/apps/api/src/lib.ts b/apps/api/src/lib.ts index 4df153884..c3d29d062 100644 --- a/apps/api/src/lib.ts +++ b/apps/api/src/lib.ts @@ -443,7 +443,7 @@ async function migrateSettings(settings: any[], service: any, template: any) { if (!variableName) { variableName = `$$config_${name.toLowerCase()}` } - console.log('Migrating setting', name, value, 'for service', service.id, ', service name:', service.name, 'variableName: ', variableName) + // console.log('Migrating setting', name, value, 'for service', service.id, ', service name:', service.name, 'variableName: ', variableName) await prisma.serviceSetting.findFirst({ where: { name: minio, serviceId: service.id } }) || await prisma.serviceSetting.create({ data: { name: minio, value, variableName, service: { connect: { id: service.id } } } }) } diff --git a/apps/api/src/lib/common.ts b/apps/api/src/lib/common.ts index c4bca0d6e..af228079d 100644 --- a/apps/api/src/lib/common.ts +++ b/apps/api/src/lib/common.ts @@ -14,7 +14,6 @@ import sshConfig from 'ssh-config'; import { checkContainer, removeContainer } from './docker'; import { day } from './dayjs'; -import * as serviceFields from './services/serviceFields'; import { saveBuildLog } from './buildPacks/common'; import { scheduler } from './scheduler'; @@ -1470,50 +1469,6 @@ export async function getServiceFromDB({ return { ...body, settings }; } -export function saveUpdateableFields(type: string, data: any) { - const update = {}; - if (type && serviceFields[type]) { - serviceFields[type].map((k) => { - let temp = data[k.name]; - if (temp) { - if (k.isEncrypted) { - temp = encrypt(temp); - } - if (k.isLowerCase) { - temp = temp.toLowerCase(); - } - if (k.isNumber) { - temp = Number(temp); - } - if (k.isBoolean) { - temp = Boolean(temp); - } - } - if (k.isNumber && temp === '') { - temp = null; - } - update[k.name] = temp; - }); - } - return update; -} - -export function getUpdateableFields(type: string, data: any) { - const update = {}; - if (type && serviceFields[type]) { - serviceFields[type].map((k) => { - let temp = data[k.name]; - if (temp) { - if (k.isEncrypted) { - temp = decrypt(temp); - } - update[k.name] = temp; - } - update[k.name] = temp; - }); - } - return update; -} export function fixType(type) { return type?.replaceAll(' ', '').toLowerCase() || null; diff --git a/apps/api/src/lib/services/handlers.ts b/apps/api/src/lib/services/handlers.ts index 96dd1291f..c7bf345b9 100644 --- a/apps/api/src/lib/services/handlers.ts +++ b/apps/api/src/lib/services/handlers.ts @@ -140,8 +140,22 @@ export async function startService(request: FastifyRequest, fa await fs.writeFile(composeFileDestination, yaml.dump(composeFile)); await startServiceContainers(fastify, id, teamId, destinationDocker.id, composeFileDestination) if (service.type === 'minio') { - await stopTcpHttpProxy(id, destinationDocker, 9000); - + try { + await executeDockerCmd({ + dockerId: destinationDocker.id, + command: + `docker container ls -a --filter 'name=${id}-' --format {{.ID}}|xargs -r -n 1 docker container stop -t 0` + }); + + } catch (error) { } + try { + await executeDockerCmd({ + dockerId: destinationDocker.id, + command: + `docker container ls -a --filter 'name=${id}-' --format {{.ID}}|xargs -r -n 1 docker container rm -f` + }); + } catch (error) { } + } return {} } catch ({ status, message }) { diff --git a/apps/api/src/routes/api/v1/services/handlers.ts b/apps/api/src/routes/api/v1/services/handlers.ts index 61481e4d0..36156c1b2 100644 --- a/apps/api/src/routes/api/v1/services/handlers.ts +++ b/apps/api/src/routes/api/v1/services/handlers.ts @@ -4,7 +4,7 @@ import yaml from 'js-yaml'; import bcrypt from 'bcryptjs'; import cuid from 'cuid'; -import { prisma, uniqueName, asyncExecShell, getServiceFromDB, getContainerUsage, isDomainConfigured, saveUpdateableFields, fixType, decrypt, encrypt, ComposeFile, getFreePublicPort, getDomain, errorHandler, generatePassword, isDev, stopTcpHttpProxy, executeDockerCmd, checkDomainsIsValidInDNS, checkExposedPort, listSettings } from '../../../../lib/common'; +import { prisma, uniqueName, asyncExecShell, getServiceFromDB, getContainerUsage, isDomainConfigured, fixType, decrypt, encrypt, ComposeFile, getFreePublicPort, getDomain, errorHandler, generatePassword, isDev, stopTcpHttpProxy, executeDockerCmd, checkDomainsIsValidInDNS, checkExposedPort, listSettings } from '../../../../lib/common'; import { day } from '../../../../lib/dayjs'; import { checkContainer, } from '../../../../lib/docker'; import { removeService } from '../../../../lib/services/common';