提交 77df43b1 编写于 作者: NoSubject's avatar NoSubject

修改打包脚本

上级 c726c519
...@@ -8,6 +8,7 @@ pipeline { ...@@ -8,6 +8,7 @@ pipeline {
} }
sh 'npm install' sh 'npm install'
sh 'npm run preperation:linux' sh 'npm run preperation:linux'
sh 'npm run clear'
} }
} }
stage('build') { stage('build') {
...@@ -26,38 +27,9 @@ pipeline { ...@@ -26,38 +27,9 @@ pipeline {
} }
} }
stage('deploy') { stage('deploy') {
parallel { steps {
stage('deploy sotre') { sh 'deploy_script:linux'
steps { sh 'chmod 777 target/o2server/*.sh'
sh 'npm run deploy:sotre'
}
}
stage('deploy commons') {
steps {
sh 'npm run deploy:commons'
}
}
stage('deploy jvm') {
steps {
sh 'npm run deploy:jvm'
}
}
stage('deploy config') {
steps {
sh 'npm run deploy:config'
}
}
stage('deploy local') {
steps {
sh 'npm run deploy:local'
}
}
stage('deploy script') {
steps {
sh 'deploy_script:linux'
sh 'chmod 777 target/o2server/*.sh'
}
}
} }
} }
stage('run') { stage('run') {
......
var gulp = require('gulp'), var gulp = require('gulp'),
gutil = require('gulp-util'), gutil = require('gulp-util'),
del = require('del'),
fs = require("fs"), fs = require("fs"),
minimist = require('minimist'), minimist = require('minimist'),
targz = require('targz'), targz = require('targz'),
...@@ -7,7 +8,13 @@ var gulp = require('gulp'), ...@@ -7,7 +8,13 @@ var gulp = require('gulp'),
dateFormat = require('dateformat'), dateFormat = require('dateformat'),
progress = require('progress-stream'), progress = require('progress-stream'),
request = require("request"), request = require("request"),
uglify = require('gulp-tm-uglify'),
rename = require('gulp-rename'),
changed = require('gulp-changed'),
gulpif = require('gulp-if'),
http = require('http'); http = require('http');
var fg = require('fast-glob');
var logger = require('gulp-logger');
//var downloadHost = "download.o2oa.net"; //var downloadHost = "download.o2oa.net";
var downloadHost = "release.o2oa.net"; var downloadHost = "release.o2oa.net";
...@@ -231,7 +238,7 @@ function decompress_commons_and_jvm(cb){ ...@@ -231,7 +238,7 @@ function decompress_commons_and_jvm(cb){
}); });
} }
function getFileCount(p){ function getJsFileCount(p){
var fileCount = 0; var fileCount = 0;
function readFile(path,filesList, ){ function readFile(path,filesList, ){
files = fs.readdirSync(path); files = fs.readdirSync(path);
...@@ -252,160 +259,100 @@ function getFileCount(p){ ...@@ -252,160 +259,100 @@ function getFileCount(p){
} }
function deploy_web(){ function build_web_minimize(cb) {
var path = "o2server/servers/" var dest = 'target/o2server/webServer/';
var fileCount = getFileCount(path); var src_min = ['o2web/source/**/*.js', '!**/*.spec.js', '!**/test/**', '!o2web/source/o2_lib/**/*'];
//var src_min = ['o2web/source/o2_core/**/*.js', '!**/*.spec.js', '!**/test/**', '!o2web/source/o2_lib/**/*'];
//console.log(fileCount); var entries = fg.sync(src_min, { dot: true});
var pb = new ProgressBar('', 50); var size = entries.length;
var progressStream = progress({
length: fileCount,
time: 100,
objectMode: true
});
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0);
if (n>fileCount) n = fileCount;
pb.render({ completed: n, total: fileCount, count: n});
});
var source = "o2server/servers/**/*"; var pb = new ProgressBar('total: '+size, 50);
var dest = "target/o2server/servers/" var doCount = 0;
return gulp.src(source) return gulp.src(src_min)
.pipe(progressStream) .pipe(uglify())
.pipe(rename({ extname: '.min.js' }))
.pipe(gulp.dest(dest)) .pipe(gulp.dest(dest))
.pipe(logger(function(){
doCount++;
pb.render({ completed: doCount, total: size, count: doCount});
if (doCount == size) console.log();
}))
.pipe(gutil.noop()); .pipe(gutil.noop());
} }
function deploy_server_store(){
var path = "o2server/store/"
var fileCount = getFileCount(path);
var pb = new ProgressBar('total: '+fileCount, 50);
var progressStream = progress({
length: fileCount,
time: 100,
objectMode: true
});
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0);
if (n>fileCount) n = fileCount;
pb.render({ completed: n, total: fileCount, count: n});
});
var source = "o2server/store/**/*"; function build_web_move() {
var dest = "target/o2server/store/"; var dest = 'target/o2server/webServer/';
return gulp.src(source) var src_move = ['o2web/source/**/*', '!**/*.spec.js', '!**/test/**'];
.pipe(progressStream)
.pipe(gulp.dest(dest))
.pipe(gutil.noop());
}
function deploy_server_commons(){
var path = "o2server/commons/";
var fileCount = getFileCount(path);
var pb = new ProgressBar('total: '+fileCount, 50);
var progressStream = progress({
length: fileCount,
time: 100,
objectMode: true
});
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0);
if (n>fileCount) n = fileCount;
pb.render({ completed: n, total: fileCount, count: n});
});
var source = "o2server/commons/**/*"; var entries = fg.sync(src_move, { dot: true});
var dest = "target/o2server/commons/"; var size = entries.length;
return gulp.src(source) var pb = new ProgressBar('total: '+size, 50);
.pipe(progressStream) var doCount = 0;
.pipe(gulp.dest(dest))
.pipe(gutil.noop());
}
function deploy_server_jvm(){
var path = "o2server/jvm/";
var fileCount = getFileCount(path);
var pb = new ProgressBar('total: '+fileCount, 50);
var progressStream = progress({
length: fileCount,
time: 100,
objectMode: true
});
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0);
if (n>fileCount) n = fileCount;
pb.render({ completed: n, total: fileCount, count: n});
});
var source = "o2server/jvm/**/*"; return gulp.src(src_move)
var dest = "target/o2server/jvm/";
return gulp.src(source)
.pipe(progressStream)
.pipe(gulp.dest(dest)) .pipe(gulp.dest(dest))
.pipe(logger(function(){
doCount++;
pb.render({ completed: doCount, total: size, count: doCount});
if (doCount == size) console.log();
}))
.pipe(gutil.noop()); .pipe(gutil.noop());
} }
function deploy_server_config(){ exports.build_web_move = build_web_move;
var path = "o2server/configSample/";
var fileCount = getFileCount(path); function clear_build(cb){
console.log(`-------------------------------------------------------------
var pb = new ProgressBar('total: '+fileCount, 50); . clear old build ...
var progressStream = progress({ -------------------------------------------------------------`);
length: fileCount, var dest = 'target';
time: 100, del(dest, { dryRun: true, force: true });
objectMode: true cb();
});
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0);
if (n>fileCount) n = fileCount;
pb.render({ completed: n, total: fileCount, count: n});
});
var source = "o2server/configSample/**/*";
var dest = "target/o2server/configSample/";
return gulp.src(source)
.pipe(progressStream)
.pipe(gulp.dest(dest))
.pipe(gutil.noop());
} }
function deploy_server_local(){ exports.clear_build = clear_build;
var path = "o2server/localSample/";
var fileCount = getFileCount(path);
function deploy_server(){
var pb = new ProgressBar('total: '+fileCount, 50); console.log(`-------------------------------------------------------------
var progressStream = progress({ . deploy to target ...
length: fileCount, -------------------------------------------------------------`);
time: 100, var source1 = ["o2server/store/**/*", "o2server/commons/**/*", "o2server/jvm/**/*", "o2server/configSample/**/*", "o2server/localSample/**/*"];
objectMode: true source = source1.concat(scriptSource);
}); var dest = "target/o2server/servers/"
progressStream.on('progress', function (stats) {
var n = (fileCount*stats.percentage/100).toFixed(0); var entries = fg.sync(source, { dot: true});
if (n>fileCount) n = fileCount; var size = entries.length;
pb.render({ completed: n, total: fileCount, count: n}); var pb = new ProgressBar('total: '+size, 50);
}); var doCount = 0;
var source = "o2server/localSample/**/*";
var dest = "target/o2server/localSample/";
return gulp.src(source) return gulp.src(source)
.pipe(progressStream)
.pipe(gulp.dest(dest)) .pipe(gulp.dest(dest))
.pipe(gutil.noop()); .pipe(logger(function(){
} doCount++;
function deploy_server_script(){ if (doCount <= size) pb.render({ completed: doCount, total: size, count: doCount});
var dest = "target/o2server/"; if (doCount > size) {console.log();}
return gulp.src(scriptSource) }));
.pipe(gulp.dest(dest)) //.pipe(gutil.noop());
.pipe(gutil.noop());
} }
exports.preperation = function(){
console.log(`---------------------------------------------------------------------
. Start to download the dependencies needed for compilation ...
---------------------------------------------------------------------`);
return (gulp.series(download_commons_and_jvm, decompress_commons_and_jvm))();
}
exports.preperation = gulp.series(download_commons_and_jvm, decompress_commons_and_jvm); var shell = require('gulp-shell')
//exports.deploy_web = deploy_web; exports.build_server = function(){
exports.deploy_server_store = deploy_server_store; console.log(`-------------------------------------------------------------
exports.deploy_server_commons = deploy_server_commons; . Start compiling the server ...
exports.deploy_server_jvm = deploy_server_jvm; -------------------------------------------------------------`);
exports.deploy_server_config = deploy_server_config; return (shell.task('npm run build_server_script'))();
exports.deploy_server_local = deploy_server_local; };
exports.deploy_server_script = deploy_server_script; exports.build_web = function(){
exports.deploy_server = gulp.series(deploy_server_store, deploy_server_commons, deploy_server_jvm, deploy_server_config, deploy_server_local, deploy_server_script); console.log(`-------------------------------------------------------------
exports.deploy = gulp.series(deploy_server_store, deploy_server_commons, deploy_server_jvm, deploy_server_config, deploy_server_local, deploy_server_script); . Start compiling the web ...
-------------------------------------------------------------`);
return (gulp.series(build_web_minimize, build_web_move))();
}
exports.deploy = deploy_server;
var dev = [ var apps = [
{ "folder": "o2_lib", "tasks": ["move"] }, { "folder": "o2_lib", "tasks": ["move"] },
{ "folder": "o2_core", "tasks": ["move", "min"] }, { "folder": "o2_core", "tasks": ["move", "min"] },
{ "folder": "x_component_ANN", "tasks": ["move", "min"] }, { "folder": "x_component_ANN", "tasks": ["move", "min"] },
...@@ -86,4 +86,4 @@ var dev = [ ...@@ -86,4 +86,4 @@ var dev = [
{ "folder": "x_desktop", "tasks": ["move", "min"] }, { "folder": "x_desktop", "tasks": ["move", "min"] },
]; ];
module.exports = dev; module.exports = apps;
...@@ -90,7 +90,7 @@ function getAppTask(path, isMin, thisOptions) { ...@@ -90,7 +90,7 @@ function getAppTask(path, isMin, thisOptions) {
port: option.port || 22, port: option.port || 22,
remotePath: (option.remotePath || '/') + path remotePath: (option.remotePath || '/') + path
}))) })))
.pipe(gulpif((option.ev == "dev") ,gulp.dest(dest))) .pipe(gulpif((option.ev == "dev" || option.ev == "pro") ,gulp.dest(dest)))
.pipe(gulp.src(src_move)) .pipe(gulp.src(src_move))
.pipe(changed(dest)) .pipe(changed(dest))
...@@ -367,3 +367,16 @@ gulp.task("git_dest", function () { ...@@ -367,3 +367,16 @@ gulp.task("git_dest", function () {
gulp.task("git", gulp.series('git_clean', 'git_dest')); gulp.task("git", gulp.series('git_clean', 'git_dest'));
gulp.task("default", gulp.series(gulp.parallel(appTasks, 'index'), "o2:new-v")); gulp.task("default", gulp.series(gulp.parallel(appTasks, 'index'), "o2:new-v"));
function build(){
options.ev = "p";
options.upload = o_options.upload || "";
options.location = o_options.location || uploadOptions.location;
options.host = o_options.host || uploadOptions.host;
options.user = o_options.user || uploadOptions.user;
options.pass = o_options.pass || uploadOptions.pass;
options.port = o_options.port || uploadOptions.port;
options.remotePath = o_options.remotePath || uploadOptions.remotePath;
options.dest = o_options.dest || uploadOptions.dest || "dest";
};
gulp.task("build", gulp.series("clean", gulp.parallel(appTasks, 'index'), "o2:new-v"))
{ {
"name": "o2oa", "name": "o2oa",
"version": "4.0.3763", "version": "4.0.3763",
"description": "o2oa", "description": "o2oa",
"main": "", "main": "",
"scripts": { "scripts": {
"preperation": "gulp preperation", "preperation": "gulp preperation",
"preperation:win": "gulp preperation --e windows", "preperation:win": "gulp preperation --e windows",
"preperation:linux": "gulp preperation --e linux", "preperation:linux": "gulp preperation --e linux",
"preperation:aix": "gulp preperation --e aix", "preperation:aix": "gulp preperation --e aix",
"preperation:kylinos": "gulp preperation --e kylinos", "preperation:kylinos": "gulp preperation --e kylinos",
"preperation:macos": "gulp preperation --e macos", "preperation:macos": "gulp preperation --e macos",
"preperation:neokylin": "gulp preperation --e neokylin", "preperation:neokylin": "gulp preperation --e neokylin",
"preperation:rpi": "gulp preperation --e raspberrypi", "preperation:rpi": "gulp preperation --e raspberrypi",
"build_server": "cd o2server && mvn clean && mvn install", "build_server": "gulp build_server",
"build_web": "cd o2server && npm install && gulp", "build_server_script": "cd o2server && mvn clean && mvn install",
"build_parallel": "npm run build_server & npm run build_web", "build_web": "gulp build_web",
"build_parallel": "npm run build_server & npm run build_web",
"deploy": "gulp deploy", "deploy": "gulp deploy",
"deploy:win": "gulp deploy --e windows", "deploy:win": "gulp deploy --e windows",
"deploy:linux": "gulp deploy --e linux", "deploy:linux": "gulp deploy --e linux",
"deploy:aix": "gulp deploy --e aix", "deploy:aix": "gulp deploy --e aix",
"deploy:kylinos": "gulp deploy --e kylinos", "deploy:kylinos": "gulp deploy --e kylinos",
"deploy:macos": "gulp deploy --e macos", "deploy:macos": "gulp deploy --e macos",
"deploy:neokylin": "gulp deploy --e neokylin", "deploy:neokylin": "gulp deploy --e neokylin",
"deploy:rpi": "gulp deploy --e raspberrypi", "deploy:rpi": "gulp deploy --e raspberrypi",
"deploy:sotre": "gulp deploy_server_store", "typeInfor": "type welcome && echo Your server is build success: target/o2server/",
"deploy:commons": "gulp deploy_server_commons", "clear": "gulp clear_build",
"deploy:jvm": "gulp deploy_server_jvm",
"deploy:config": "gulp deploy_server_config",
"deploy:local": "gulp deploy_server_local",
"deploy_script:win": "gulp deploy_server_script --e windows",
"deploy_script:linux": "gulp deploy_server_script --e linux",
"deploy_script:aix": "gulp deploy_server_script --e aix",
"deploy_script:kylinos": "gulp deploy_server_script --e kylinos",
"deploy_script:macos": "gulp deploy_server_script --e macos",
"deploy_script:neokylin": "gulp deploy_server_script --e neokylin",
"deploy_script:rpi": "gulp deploy_server_script --e raspberrypi",
"typeInfor": "type welcome && echo Your server is build success: target/o2server/", "build": "npm run clear && npm run preperation && npm run build_parallel && npm run deploy && npm run typeInfor",
"build:win": "npm run clear && npm run preperation:win && npm run build_parallel && npm run deploy:win && npm run typeInfor",
"build": "npm run preperation && npm run build_parallel && npm run deploy && npm run typeInfor", "build:linux": "npm run clear && npm run preperation:linux && npm run build_parallel && npm run deploy:linux && npm run typeInfor",
"build:win": "npm run preperation:win && npm run build_parallel && npm run deploy:win && npm run typeInfor", "build:aix": "npm run clear && npm run preperation:aix && npm run build_parallel && npm run deploy:aix && npm run typeInfor",
"build:linux": "npm run preperation:linux && npm run build_parallel && npm run deploy:linux && npm run typeInfor", "build:kylinos": "npm run clear && npm run preperation:kylinos && npm run build_parallel && npm run deploy:kylinos && npm run typeInfor",
"build:aix": "npm run preperation:aix && npm run build_parallel && npm run deploy:aix && npm run typeInfor", "build:macos": "npm run clear && npm run preperation:macos && npm run build_parallel && npm run deploy:macos && npm run typeInfor",
"build:kylinos": "npm run preperation:kylinos && npm run build_parallel && npm run deploy:kylinos && npm run typeInfor", "build:neokylin": "npm run clear && npm run preperation:neokylin && npm run build_parallel && npm run deploy:neokylin && npm run typeInfor",
"build:macos": "npm run preperation:macos && npm run build_parallel && npm run deploy:macos && npm run typeInfor", "build:rpi": "npm run clear && npm run preperation:rpi && npm run build_parallel && npm run deploy:rpi && npm run typeInfor",
"build:neokylin": "npm run preperation:neokylin && npm run build_parallel && npm run deploy:neokylin && npm run typeInfor", "test": "type welcome"
"build:rpi": "npm run preperation:rpi && npm run build_parallel && npm run deploy:rpi && npm run typeInfor", },
"repository": {
"test": "type welcome" "type": "git",
}, "url": "https://github.com/o2oa/o2oa.git"
"repository": { },
"type": "git", "author": "",
"url": "https://github.com/o2oa/o2oa.git" "license": "ISC",
}, "dependencies": {
"author": "", "dateformat": "^3.0.3",
"license": "ISC", "fast-glob": "^3.2.2",
"dependencies": { "glob": "^7.1.6",
"dateformat": "^3.0.3", "gulp": "^4.0.2",
"gulp": "^4.0.2", "gulp-changed": "^3.2.0",
"gulp-util": "^3.0.8", "gulp-deleted": "^1.0.0",
"progress-stream": "^2.0.0", "gulp-if": "^2.0.2",
"request": "^2.88.2", "gulp-logger": "0.0.2",
"single-line-log": "^1.1.2", "gulp-progress": "^1.0.0",
"targz": "^1.0.1" "gulp-rename": "^1.4.0",
} "gulp-shell": "^0.8.0",
"gulp-tm-asset-rev": "0.0.16",
"gulp-tm-uglify": "3.0.1",
"gulp-util": "^3.0.8",
"merge-stream": "^1.0.1",
"minimist": "^1.2.0",
"progress-stream": "^2.0.0",
"request": "^2.88.2",
"single-line-log": "^1.1.2",
"targz": "^1.0.1"
}
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册