Merge pull request #7495 from epixa/urp

Consistent build archives
This commit is contained in:
Court Ewing 2016-07-06 18:39:36 -04:00 committed by GitHub
commit ac4018871d
4 changed files with 20 additions and 28 deletions

View file

@ -46,4 +46,4 @@ For the daring, snapshot builds are available. These builds are created after ea
| OSX | [tar](http://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-darwin-x64.tar.gz) |
| Linux x64 | [tar](http://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-linux-x64.tar.gz) [deb](https://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-amd64.deb) [rpm](https://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-x86_64.rpm) |
| Linux x86 | [tar](http://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-linux-x86.tar.gz) [deb](https://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-i386.deb) [rpm](https://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-i686.rpm) |
| Windows | [zip](http://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-windows.zip) |
| Windows | [zip](http://download.elastic.co/kibana/kibana-snapshot/kibana-5.0.0-alpha5-SNAPSHOT-windows-x86.zip) |

View file

@ -1,38 +1,30 @@
module.exports = function createPackages(grunt) {
let { config } = grunt;
let { resolve, relative } = require('path');
let { execFile } = require('child_process');
let { all, fromNode } = require('bluebird');
import { execFile } from 'child_process';
import { all, fromNode } from 'bluebird';
export default (grunt) => {
const { config, log } = grunt;
const cwd = config.get('buildDir');
const targetDir = config.get('target');
let buildPath = resolve(config.get('root'), 'build');
let exec = async (cmd, args) => {
grunt.log.writeln(` > ${cmd} ${args.join(' ')}`);
await fromNode(cb => execFile(cmd, args, { cwd: buildPath }, cb));
async function exec(cmd, args) {
log.writeln(` > ${cmd} ${args.join(' ')}`);
await fromNode(cb => execFile(cmd, args, { cwd }, cb));
};
let archives = async (platform) => {
// kibana.tar.gz
await exec('tar', ['-zchf', relative(buildPath, platform.tarPath), platform.buildName]);
// kibana.zip
if (/windows/.test(platform.name)) {
await exec('zip', ['-rq', '-ll', relative(buildPath, platform.zipPath), platform.buildName]);
async function archives({ name, buildName, zipPath, tarPath }) {
if (/windows/.test(name)) {
await exec('zip', ['-rq', '-ll', zipPath, buildName]);
} else {
await exec('zip', ['-rq', relative(buildPath, platform.zipPath), platform.buildName]);
await exec('tar', ['-zchf', tarPath, buildName]);
}
};
grunt.registerTask('_build:archives', function () {
grunt.file.mkdir(targetDir);
all(
grunt.config.get('platforms')
.map(async platform => {
grunt.file.mkdir(targetDir);
await archives(platform);
})
config.get('platforms').map(async platform => await archives(platform))
)
.nodeify(this.async());

View file

@ -40,7 +40,7 @@ module.exports = function (grunt) {
platform.downloadPromise = (async function () {
grunt.file.mkdir(downloadDir);
if (platform.name === 'windows') {
if (platform.win) {
await fromNode(cb => {
resp
.pipe(createWriteStream(resolve(downloadDir, 'node.exe')))

View file

@ -10,9 +10,9 @@ module.exports = function (grunt) {
'darwin-x64',
'linux-x64',
'linux-x86',
'windows'
'windows-x86'
].map(function (name) {
let win = name === 'windows';
let win = name === 'windows-x86';
let nodeUrl = win ? `${baseUri}/win-x86/node.exe` : `${baseUri}/node-v${nodeVersion}-${name}.tar.gz`;
let nodeDir = resolve(rootPath, `.node_binaries/${nodeVersion}/${name}`);