UNPKG

@interaktiv/dia-scripts

Version:

CLI toolbox with common scripts for most sort of projects at DIA

42 lines (36 loc) 1.46 kB
"use strict"; const spawn = require('cross-spawn'); const { getConcurrentlyArgs, hasFile, isOptedIn, parseEnv, resolveBin, resolveSelf } = require('../utils'); /** * NOTE: * Look at Travis Build Stages https://docs.travis-ci.com/user/build-stages, * https://semantic-release.gitbook.io/semantic-release/usage/ci-configuration#run-semantic-release-only-after-all-tests-succeeded to * configure Travis correctly and trigger auto release only after all jobs * (to test with multiple Node versions and/or OSs) are completed successfully. */ (function () { const autorelease = parseEnv('TRAVIS', false) && process.env.TRAVIS_BRANCH === 'master' && parseEnv('TRAVIS_PULL_REQUEST', false) === false; const reportCoverage = hasFile('coverage') && (parseEnv('SKIP_CODECOV', true) === false || isOptedIn('reportcoverage')); if (autorelease === false && reportCoverage === false) { console.log('No need to autorelease or report coverage. Skipping travis-after-success script...'); process.exit(0); return; } const diaScripts = resolveSelf(); const result = spawn.sync(resolveBin('concurrently'), getConcurrentlyArgs({ codecov: reportCoverage ? `echo installing codecov ☂️ && npx --package codecov@3 --call 'echo running codecov ☂️ && codecov'` : null, release: autorelease ? `${diaScripts} release` : null }, { killOthers: false }), { stdio: 'inherit' }); process.exit(result.status); })();