-
Notifications
You must be signed in to change notification settings - Fork 63
Expand file tree
/
Copy pathgulpfile.js
More file actions
60 lines (49 loc) · 1.82 KB
/
gulpfile.js
File metadata and controls
60 lines (49 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
var gulp = require('gulp');
var extension = require('./package.json');
var config = require('./gulp-redcore/config.js');
var requireDir = require('require-dir');
var zip = require('gulp-zip');
var xml2js = require('xml2js');
var fs = require('fs');
var path = require('path');
var ghPages = require('gulp-gh-pages');
var parser = new xml2js.Parser();
var jgulp = requireDir('./node_modules/joomla-gulp', {recurse: true});
// We will use local redcore gulp repository instead of node_modules
var redcore = requireDir('gulp-redcore', {recurse: true});
gulp.task('release',
[
'release:redcore'
]
);
// Override of the release script
gulp.task('release:redcore', ['libraries:media.redcore'], function () {
fs.readFile( '../extensions/redcore.xml', function(err, data) {
parser.parseString(data, function (err, result) {
var version = result.extension.version[0];
if (result.extension.releaseName[0])
{
version = version + '-' + result.extension.releaseName[0].toLowerCase();
}
var fileName = config.skipVersion ? extension.name + '.zip' : extension.name + '-v' + version + '.zip';
// We will output where release package is going so it is easier to find
console.log('Creating new release file in: ' + path.join(config.release_dir, fileName));
return gulp.src([
'../extensions/**/*',
'../extensions/**/.gitkeep'
])
.pipe(zip(fileName))
.pipe(gulp.dest(config.release_dir));
});
});
});
gulp.task('documentation', function() {
// Needed because it requested a username and password for github on Windows
process.chdir('../');
return gulp.src('docs/gh-pages/**/*')
.pipe(ghPages({
remoteUrl: 'git@github.com:redCOMPONENT-COM/redCORE.git',
branch: 'gh-pages',
cacheDir: 'docs/.gh-pages/'
}));
});