fix
This commit is contained in:
@@ -15,34 +15,27 @@ export const deploy = async ({ host, commitHash }: DeployInstance) => {
|
||||
const deploymentId = new Date().toISOString();
|
||||
|
||||
const serviceDir = path.join(config.directory, host);
|
||||
await $`mkdir -p ${serviceDir}`;
|
||||
|
||||
// Fetch
|
||||
await $`
|
||||
cd ${serviceDir}
|
||||
mkdir -p src
|
||||
mkdir -p logs
|
||||
git clone \
|
||||
-b ${branch} \
|
||||
http://deployer:${config.token}@${config.giteaUrl}/${user}/${repo} \
|
||||
${serviceDir}/src
|
||||
cd src
|
||||
git fetch origin ${branch}
|
||||
git reset --hard origin/${branch}
|
||||
git checkout ${commitHash}
|
||||
`;
|
||||
$.cwd(serviceDir);
|
||||
const url = `http://deployer:${config.token}@${config.giteaUrl}/${user}/${repo}`;
|
||||
await $`mkdir -p src`;
|
||||
await $`mkdir -p logs`;
|
||||
await $`git clone -b ${branch} ${url} ./src`.nothrow();
|
||||
|
||||
$.cwd(path.join(serviceDir, "src"));
|
||||
await $`git fetch origin ${branch}`;
|
||||
await $`git reset --hard origin/${branch}`;
|
||||
await $`git checkout ${commitHash}`;
|
||||
|
||||
// Build
|
||||
await $`
|
||||
cd ${serviceDir}/src
|
||||
make build
|
||||
`;
|
||||
await $`make build`;
|
||||
|
||||
// Register service
|
||||
const systemdServiceName = `deployer-${host}.service`;
|
||||
await $`
|
||||
cat template.service | envsubst > ${serviceDir}/${systemdServiceName}
|
||||
ln -sf ${serviceDir}/${systemdServiceName} ${config.systemServicesDir}/${systemdServiceName}
|
||||
`.env({
|
||||
const systemdServiceName = `deployer2-${host}.service`;
|
||||
await $`cat service.template | envsubst > ${serviceDir}/${systemdServiceName}`.env(
|
||||
{
|
||||
host,
|
||||
port: port.toString(),
|
||||
repo,
|
||||
@@ -51,11 +44,11 @@ export const deploy = async ({ host, commitHash }: DeployInstance) => {
|
||||
deploymentId,
|
||||
logsDir: path.join(serviceDir, "logs"),
|
||||
serviceDir,
|
||||
});
|
||||
}
|
||||
);
|
||||
await $`ln -sf ${serviceDir}/${systemdServiceName} ${config.systemServicesDir}/${systemdServiceName}`;
|
||||
|
||||
// Start!
|
||||
await $`
|
||||
systemctl daemon-reload
|
||||
systemctl restart ${systemdServiceName}
|
||||
`;
|
||||
await $`systemctl daemon-reload`;
|
||||
await $`systemctl restart ${systemdServiceName}`;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user