mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-08-31 13:09:21 +03:00
update gulp and gulpfile
This commit is contained in:
parent
a1562e7145
commit
b244462fa5
19 changed files with 1570 additions and 1044 deletions
87
tasks/rainloop.js
Normal file
87
tasks/rainloop.js
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
/* RainLoop Webmail (c) RainLoop Team | Licensed under AGPL 3 */
|
||||
/* eslint-disable consistent-return */
|
||||
|
||||
const gulp = require('gulp');
|
||||
const fs = require('node-fs');
|
||||
const chmod = require('gulp-chmod');
|
||||
|
||||
const pkg = require('../package.json');
|
||||
const {config} = require('./config');
|
||||
const {copy, zip, del} = require('./common');
|
||||
|
||||
const rainloopCopy = () => {
|
||||
const
|
||||
versionFull = pkg.version,
|
||||
dist = config.releasesPath + '/webmail/' + versionFull + '/src/'
|
||||
;
|
||||
|
||||
fs.mkdirSync(dist, '0777', true);
|
||||
fs.mkdirSync(dist + 'data');
|
||||
fs.mkdirSync(dist + 'rainloop/v/' + versionFull, '0777', true);
|
||||
|
||||
return gulp.src('rainloop/v/' + config.devVersion + '/**/*', {base: 'rainloop/v/' + config.devVersion})
|
||||
.pipe(chmod(0o644, 0o755))
|
||||
.pipe(gulp.dest(dist + 'rainloop/v/' + versionFull));
|
||||
};
|
||||
|
||||
const rainloopSetup = (done) => {
|
||||
const
|
||||
versionFull = pkg.version,
|
||||
dist = config.releasesPath + '/webmail/' + versionFull + '/src/'
|
||||
;
|
||||
|
||||
fs.writeFileSync(dist + 'data/VERSION', versionFull);
|
||||
fs.writeFileSync(dist + 'data/EMPTY', versionFull);
|
||||
|
||||
fs.writeFileSync(dist + 'index.php', fs.readFileSync('index.php', 'utf8')
|
||||
.replace('\'APP_VERSION\', \'0.0.0\'', '\'APP_VERSION\', \'' + versionFull + '\'')
|
||||
.replace('\'APP_VERSION_TYPE\', \'source\'', '\'APP_VERSION_TYPE\', \'' + (config.community ? 'community' : 'standard') + '\'')
|
||||
);
|
||||
|
||||
fs.writeFileSync(dist + 'rainloop/v/' + versionFull + '/index.php.root', fs.readFileSync(dist + 'index.php'));
|
||||
|
||||
if (config.community)
|
||||
{
|
||||
require('rimraf').sync(dist + 'rainloop/v/' + versionFull + '/app/libraries/RainLoop/Providers/Prem.php');
|
||||
}
|
||||
|
||||
config.destPath = config.releasesPath + '/webmail/' + versionFull + '/';
|
||||
config.cleanPath = dist;
|
||||
config.zipSrcPath = dist;
|
||||
config.zipFile = 'rainloop-' + (config.community ? 'community-' : '') + versionFull + '.zip';
|
||||
config.zipFileShort = 'rainloop-' + (config.community ? 'community-' : '') + 'latest.zip';
|
||||
|
||||
config.rainloopBuilded = true;
|
||||
|
||||
done();
|
||||
};
|
||||
|
||||
const rainloopZip = (done) => {
|
||||
if (config.destPath && config.zipSrcPath && config.zipFile) {
|
||||
return zip(config.zipSrcPath, config.destPath, config.zipFile);
|
||||
}
|
||||
|
||||
done();
|
||||
};
|
||||
|
||||
const rainloopClean = (done) => {
|
||||
if (config.cleanPath) {
|
||||
return del(config.cleanPath);
|
||||
}
|
||||
|
||||
done();
|
||||
};
|
||||
|
||||
const rainloopShortName = (done) => copy(config.destPath + config.zipFile, config.destPath + config.zipFileShort, done);
|
||||
|
||||
exports.rainloopBuild = gulp.series(
|
||||
rainloopCopy,
|
||||
rainloopSetup,
|
||||
);
|
||||
|
||||
exports.rainloop = gulp.series(
|
||||
exports.rainloopBuild,
|
||||
rainloopZip,
|
||||
rainloopClean,
|
||||
rainloopShortName
|
||||
);
|
||||
Loading…
Add table
Add a link
Reference in a new issue