fix(deployer): Installs and compiles additional .gbapps on server startup.

This commit is contained in:
Rodrigo Rodriguez 2018-12-26 18:57:25 -02:00
parent dd92032f62
commit cfe5cd2ddb

View file

@ -375,6 +375,19 @@ export class GBDeployer {
// Skips .gbapp inside deploy folder. // Skips .gbapp inside deploy folder.
if (!e.startsWith('packages')) { if (!e.startsWith('packages')) {
logger.info(`Deploying app: ${e}...`); logger.info(`Deploying app: ${e}...`);
let folder = Path.join(e, 'node_modules');
if (!Fs.existsSync(folder)) {
logger.info(`Installing modules for ${e}...`);
child_process.execSync('npm install', { cwd: e });
}
folder = Path.join(e, 'dist');
if (!Fs.existsSync()) {
logger.info(`Compiling ${e}...`);
try {
child_process.execSync(Path.join(e, 'node_modules/.bin/tsc'), { cwd: e });
import(e) import(e)
.then(m => { .then(m => {
const p = new m.Package(); const p = new m.Package();
@ -384,9 +397,16 @@ export class GBDeployer {
appPackagesProcessed++; appPackagesProcessed++;
}) })
.catch(err => { .catch(err => {
logger.error(`Error deploying App (.gbapp): ${e}: ${err}`); logger.error(`Error deploying .gbapp package: ${e}\n${err}`);
appPackagesProcessed++; appPackagesProcessed++;
}); });
} catch (error) {
logger.error(`Error compiling .gbapp package ${e}:\n${error.stdout.toString()}`);
appPackagesProcessed++;
}
}
} else { } else {
appPackagesProcessed++; appPackagesProcessed++;
} }