68 lines
1.9 KiB
JavaScript
68 lines
1.9 KiB
JavaScript
'use strict';
|
|
|
|
var argv = require('yargs').argv;
|
|
var os = require('os');
|
|
var jetpack = require('fs-jetpack');
|
|
|
|
module.exports.os = function () {
|
|
switch (os.platform()) {
|
|
case 'darwin':
|
|
return 'osx';
|
|
case 'linux':
|
|
return 'linux';
|
|
case 'win32':
|
|
return 'windows';
|
|
}
|
|
return 'unsupported';
|
|
};
|
|
|
|
module.exports.replace = function (str, patterns) {
|
|
Object.keys(patterns).forEach(function (pattern) {
|
|
var matcher = new RegExp('{{' + pattern + '}}', 'g');
|
|
str = str.replace(matcher, patterns[pattern]);
|
|
});
|
|
return str;
|
|
};
|
|
|
|
module.exports.getReleasePackageName = function(manifest) {
|
|
return module.exports.replace(manifest.packageNameTemplate, {
|
|
name: manifest.name,
|
|
version: manifest.version,
|
|
build: manifest.build,
|
|
productName: manifest.productName,
|
|
platform: process.platform,
|
|
arch: process.arch
|
|
});
|
|
}
|
|
|
|
module.exports.getEnvName = function () {
|
|
return argv.env || 'development';
|
|
};
|
|
|
|
module.exports.getSigningId = function (manifest) {
|
|
if(!manifest || !manifest.osx){
|
|
console.error('have no manifest : signing id');
|
|
}
|
|
return argv.sign || (manifest && manifest.osx.codeSignIdentitiy ? manifest.osx.codeSignIdentitiy.dmg : undefined);
|
|
};
|
|
|
|
module.exports.getMASSigningId = function (manifest) {
|
|
return argv['mas-sign'] || (manifest && manifest.osx.codeSignIdentitiy ? manifest.osx.codeSignIdentitiy.MAS : undefined);
|
|
};
|
|
|
|
module.exports.getMASInstallerSigningId = function (manifest) {
|
|
return argv['mas-installer-sign'] || (manifest.osx.codeSignIdentitiy ? manifest.osx.codeSignIdentitiy.MASInstaller : undefined);
|
|
};
|
|
|
|
module.exports.releaseForMAS = function () {
|
|
return !!argv.mas;
|
|
};
|
|
|
|
// Fixes https://github.com/nodejs/node-v0.x-archive/issues/2318
|
|
module.exports.spawnablePath = function (path) {
|
|
if (process.platform === 'win32') {
|
|
return path + '.cmd';
|
|
}
|
|
return path;
|
|
};
|