send/build/version_plugin.js

34 lines
671 B
JavaScript
Raw Permalink Normal View History

2019-12-06 21:53:09 +00:00
const gitRevSync = require('git-rev-sync');
2018-07-12 20:13:49 +00:00
const pkg = require('../package.json');
2019-12-06 21:53:09 +00:00
let commit = 'unknown';
try {
commit = gitRevSync.short();
} catch (e) {
console.warn('Error fetching current git commit: ' + e);
}
2018-07-12 20:13:49 +00:00
const version = JSON.stringify({
commit,
source: pkg.homepage,
version: process.env.CIRCLE_TAG || `v${pkg.version}`
});
class VersionPlugin {
apply(compiler) {
compiler.hooks.emit.tap('VersionPlugin', compilation => {
compilation.assets['version.json'] = {
source() {
return version;
},
size() {
return version.length;
2018-07-12 20:13:49 +00:00
}
};
});
2018-07-12 20:13:49 +00:00
}
}
module.exports = VersionPlugin;