fix: ENV variables set differently

This commit is contained in:
Andras Bacsai 2022-02-10 21:43:54 +01:00
parent ae6f325c0a
commit 82de234f21
3 changed files with 24 additions and 12 deletions

View File

@ -1,7 +1,7 @@
{ {
"name": "coolify", "name": "coolify",
"description": "An open-source & self-hostable Heroku / Netlify alternative.", "description": "An open-source & self-hostable Heroku / Netlify alternative.",
"version": "2.0.0", "version": "2.0.2",
"license": "AGPL-3.0", "license": "AGPL-3.0",
"scripts": { "scripts": {
"dev": "docker-compose -f docker-compose-dev.yaml up -d && NODE_ENV=development svelte-kit dev --host 0.0.0.0", "dev": "docker-compose -f docker-compose-dev.yaml up -d && NODE_ENV=development svelte-kit dev --host 0.0.0.0",

View File

@ -1,4 +1,5 @@
import crypto from 'crypto'; import crypto from 'crypto';
import fs from 'fs/promises';
import * as buildpacks from '../buildPacks'; import * as buildpacks from '../buildPacks';
import * as importers from '../importers'; import * as importers from '../importers';
import { dockerInstance } from '../docker'; import { dockerInstance } from '../docker';
@ -208,10 +209,11 @@ export default async function (job) {
if (secrets.length > 0) { if (secrets.length > 0) {
secrets.forEach((secret) => { secrets.forEach((secret) => {
if (!secret.isBuildSecret) { if (!secret.isBuildSecret) {
envs.push(`--env ${secret.name}=${secret.value}`); envs.push(`${secret.name}=${secret.value}`);
} }
}); });
} }
await fs.writeFile(`${workdir}/.env`, envs.join('\n'));
const labels = makeLabelForStandaloneApplication({ const labels = makeLabelForStandaloneApplication({
applicationId, applicationId,
fqdn, fqdn,
@ -230,14 +232,20 @@ export default async function (job) {
baseDirectory, baseDirectory,
publishDirectory publishDirectory
}); });
try {
saveBuildLog({ line: 'Deployment started.', buildId, applicationId }); saveBuildLog({ line: 'Deployment started.', buildId, applicationId });
const { stderr } = await asyncExecShell( const { stderr } = await asyncExecShell(
`DOCKER_HOST=${host} docker run ${envs.join(' ')} ${labels.join( `DOCKER_HOST=${host} docker run --env-file=${workdir}/.env ${labels.join(
' ' ' '
)} --name ${imageId} --network ${docker.network} --restart always -d ${applicationId}:${tag}` )} --name ${imageId} --network ${
docker.network
} --restart always -d ${applicationId}:${tag}`
); );
if (stderr) console.log(stderr); if (stderr) console.log(stderr);
saveBuildLog({ line: 'Deployment successful!', buildId, applicationId }); saveBuildLog({ line: 'Deployment successful!', buildId, applicationId });
} catch (error) {
throw new Error(error);
}
if (destinationDockerId && destinationDocker.isCoolifyProxyUsed) { if (destinationDockerId && destinationDocker.isCoolifyProxyUsed) {
saveBuildLog({ line: 'Proxy configuration started!', buildId, applicationId }); saveBuildLog({ line: 'Proxy configuration started!', buildId, applicationId });

View File

@ -120,7 +120,9 @@ buildWorker.on('completed', async (job: Bullmq.Job) => {
} catch (err) { } catch (err) {
console.log(err); console.log(err);
} finally { } finally {
await asyncExecShell(`rm -fr ${job.data.workdir}`); const workdir = `/tmp/build-sources/${job.data.repository}/${job.data.build_id}`;
await asyncExecShell(`rm -fr ${workdir}`);
await asyncExecShell(`rm /tmp/build-sources/${job.data.repository}/id.rsa`);
} }
return; return;
}); });
@ -132,7 +134,9 @@ buildWorker.on('failed', async (job: Bullmq.Job, failedReason) => {
} catch (error) { } catch (error) {
console.log(error); console.log(error);
} finally { } finally {
await asyncExecShell(`rm -fr ${job.data.workdir}`); const workdir = `/tmp/build-sources/${job.data.repository}/${job.data.build_id}`;
await asyncExecShell(`rm -fr ${workdir}`);
await asyncExecShell(`rm /tmp/build-sources/${job.data.repository}/id.rsa`);
} }
saveBuildLog({ line: 'Failed build!', buildId: job.data.build_id, applicationId: job.data.id }); saveBuildLog({ line: 'Failed build!', buildId: job.data.build_id, applicationId: job.data.id });
saveBuildLog({ saveBuildLog({