[project] add LinuxArchivePacker
This commit is contained in:
@@ -8,7 +8,7 @@ const Env = require('./env');
|
|||||||
const Neko = require('./neko');
|
const Neko = require('./neko');
|
||||||
const vfs = require('vinyl-fs');
|
const vfs = require('vinyl-fs');
|
||||||
const template = require('lodash.template');
|
const template = require('lodash.template');
|
||||||
|
const rename = require('gulp-rename');
|
||||||
|
|
||||||
class Haxe extends Sdk {
|
class Haxe extends Sdk {
|
||||||
|
|
||||||
@@ -98,10 +98,16 @@ class Haxe extends Sdk {
|
|||||||
const target = path.resolve(buildDir, platform, 'bin');
|
const target = path.resolve(buildDir, platform, 'bin');
|
||||||
fse.emptyDirSync(target);
|
fse.emptyDirSync(target);
|
||||||
const result = {
|
const result = {
|
||||||
'android': 'app/build/outputs/apk/*.apk',
|
'android': 'app/build/outputs/apk/*-debug.apk',
|
||||||
'flash': '*.swf',
|
'flash': '*.swf',
|
||||||
}[platform] || '**/*';
|
}[platform] || '**/*';
|
||||||
return this.haxelib(args).then(() => vfs.src(`${target}/${result}`));
|
return this.haxelib(args).then(() => {
|
||||||
|
let r = vfs.src(`${target}/${result}`);
|
||||||
|
if (platform === 'android') {
|
||||||
|
r = r.pipe(rename(`${config.meta.filename}_${config.meta.version}.apk`));
|
||||||
|
}
|
||||||
|
return r;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
build(platform, config, debug=false) {
|
build(platform, config, debug=false) {
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ const {BuildSystem, Platform, Config} = require('./core');
|
|||||||
const vfs = require('vinyl-fs');
|
const vfs = require('vinyl-fs');
|
||||||
const rename = require('gulp-rename');
|
const rename = require('gulp-rename');
|
||||||
const template = require('lodash.template');
|
const template = require('lodash.template');
|
||||||
|
const tar = require('gulp-tar');
|
||||||
|
const gzip = require('gulp-gzip');
|
||||||
|
|
||||||
const streamToPromise = (stream) => {
|
const streamToPromise = (stream) => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
@@ -219,6 +220,29 @@ LinuxDEBPacker.NAME = 'deb';
|
|||||||
|
|
||||||
Packer.register(Platform.LINUX, LinuxDEBPacker.NAME, LinuxDEBPacker);
|
Packer.register(Platform.LINUX, LinuxDEBPacker.NAME, LinuxDEBPacker);
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
class LinuxArchivePacker extends Packer {
|
||||||
|
|
||||||
|
constructor(config) {
|
||||||
|
super(config, Platform.LINUX);
|
||||||
|
}
|
||||||
|
|
||||||
|
call() {
|
||||||
|
const target = this.targetPath;
|
||||||
|
const archiveName = `${this.config.meta.filename}_${this.config.meta.version}.tar`;
|
||||||
|
return gulp.src(`${target}/**/*`)
|
||||||
|
.pipe(tar(archiveName))
|
||||||
|
.pipe(gzip())
|
||||||
|
.pipe(gulp.dest(path.join(target, '..', 'archive')))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
LinuxArchivePacker.NAME = 'archive';
|
||||||
|
|
||||||
|
Packer.register(Platform.LINUX, LinuxArchivePacker.NAME, LinuxArchivePacker);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "gulp-haxetool",
|
"name": "gulp-haxetool",
|
||||||
"version": "0.0.21",
|
"version": "0.0.22",
|
||||||
"description": "HaXe Tool for Gulp",
|
"description": "HaXe Tool for Gulp",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -11,8 +11,10 @@
|
|||||||
"got": "^8.3.0",
|
"got": "^8.3.0",
|
||||||
"gulp": "^4.0.0",
|
"gulp": "^4.0.0",
|
||||||
"gulp-debian": "^0.1.9",
|
"gulp-debian": "^0.1.9",
|
||||||
|
"gulp-gzip": "^1.4.2",
|
||||||
"gulp-rename": "^1.2.2",
|
"gulp-rename": "^1.2.2",
|
||||||
"gulp-spawn": "^0.4.0",
|
"gulp-spawn": "^0.4.0",
|
||||||
|
"gulp-tar": "^3.0.0",
|
||||||
"gulp-webserver": "^0.9.1",
|
"gulp-webserver": "^0.9.1",
|
||||||
"lodash.defaults": "^4.2.0",
|
"lodash.defaults": "^4.2.0",
|
||||||
"lodash.template": "^4.4.0",
|
"lodash.template": "^4.4.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user