Added types for haproxy/configuration

This commit is contained in:
dominicbachmann 2022-04-06 20:40:25 +02:00
parent 51a5b3b602
commit 8a401f50cb
2 changed files with 122 additions and 128 deletions

View File

@ -1,9 +1,7 @@
import cuid from 'cuid';
import bcrypt from 'bcrypt';
import { prisma } from './common';
import { asyncExecShell, uniqueName } from '$lib/common';
import * as db from '$lib/database';
import { startCoolifyProxy } from '$lib/haproxy';
import type { User } from '@prisma/client';

View File

@ -1,15 +1,14 @@
import { dev } from '$app/env';
import got from 'got';
import got, { type Got } from 'got';
import mustache from 'mustache';
import crypto from 'crypto';
import * as db from '$lib/database';
import { checkContainer, checkHAProxy } from '.';
import { asyncExecShell, getDomain, getEngine } from '$lib/common';
const url = dev ? 'http://localhost:5555' : 'http://coolify-haproxy:5555';
let template = `program api
const template = `program api
command /usr/bin/dataplaneapi -f /usr/local/etc/haproxy/dataplaneapi.hcl --userlist haproxy-dataplaneapi
no option start-on-reload
@ -127,7 +126,8 @@ backend {{domain}}
server {{id}} {{id}}:{{port}} check fall 10
{{/coolify}}
`;
export async function haproxyInstance() {
export async function haproxyInstance(): Promise<Got> {
const { proxyPassword } = await db.listSettings();
return got.extend({
prefixUrl: url,
@ -136,11 +136,10 @@ export async function haproxyInstance() {
});
}
export async function configureHAProxy() {
export async function configureHAProxy(): Promise<void> {
const haproxy = await haproxyInstance();
await checkHAProxy(haproxy);
try {
const data = {
applications: [],
services: [],
@ -191,7 +190,7 @@ export async function configureHAProxy() {
.map((c) => c.replace(/"/g, ''));
if (containers.length > 0) {
for (const container of containers) {
let previewDomain = `${container.split('-')[1]}.${domain}`;
const previewDomain = `${container.split('-')[1]}.${domain}`;
data.applications.push({
id: container,
port: port || 3000,
@ -280,7 +279,4 @@ export async function configureHAProxy() {
}
});
}
} catch (error) {
throw error;
}
}