mirror of
https://github.com/pulsar-edit/pulsar.git
synced 2024-12-27 08:32:30 +03:00
45 lines
1.5 KiB
JavaScript
Executable File
45 lines
1.5 KiB
JavaScript
Executable File
#!/usr/bin/env node --harmony_collections
|
|
var cp = require('./utils/child-process-wrapper.js');
|
|
var fs = require('fs');
|
|
var path = require('path');
|
|
|
|
process.chdir(path.dirname(__dirname));
|
|
|
|
if (process.platform == 'linux')
|
|
throw new Error('cibuild can not run on linux yet!');
|
|
|
|
var homeDir = process.platform == 'win32' ? process.env.USERPROFILE : process.env.HOME;
|
|
|
|
function readEnvironmentVariables() {
|
|
var credentialsPath = '/var/lib/jenkins/config/atomcredentials';
|
|
try {
|
|
var credentials = fs.readFileSync(credentialsPath, 'utf8');
|
|
var lines = credentials.trim().split('\n');
|
|
for (i in lines) {
|
|
var parts = lines[i].split('=');
|
|
var key = parts[0].trim();
|
|
var value = parts[1].trim().substr(1, parts[1].length - 2);
|
|
process.env[key] = value;
|
|
}
|
|
} catch(error) { }
|
|
}
|
|
|
|
readEnvironmentVariables();
|
|
cp.safeExec.bind(global, 'node script/bootstrap', function(error) {
|
|
if (error)
|
|
process.exit(1);
|
|
var async = require('async');
|
|
var gruntPath = path.join('build', 'node_modules', '.bin', 'grunt') + (process.platform === 'win32' ? '.cmd' : '');
|
|
var tasks = [
|
|
require('rimraf').bind(global, path.join(homeDir, '.atom')),
|
|
cp.safeExec.bind(global, 'git clean -dff'),
|
|
cp.safeExec.bind(global, gruntPath + ' ci --gruntfile build/Gruntfile.coffee --stack --no-color'),
|
|
]
|
|
if (process.platform === 'darwin') {
|
|
tasks.push(cp.safeExec.bind(global, 'build/node_modules/.bin/coffee script/upload-release'))
|
|
}
|
|
async.series(tasks, function(error) {
|
|
process.exit(error ? 1 : 0);
|
|
});
|
|
})();
|