-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathgulpfile.js
93 lines (81 loc) · 3.54 KB
/
gulpfile.js
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
'use strict';
var gulp = require('gulp'),
ex = require('gulp-expect-file'),
replace = require('gulp-replace'),
sequence = require('run-sequence').use(gulp);
require("fs").readdirSync(__dirname + "/tasks").forEach(function (file) {
if (file.indexOf("gulp") > -1) {
require(__dirname + "/tasks" + "/" + file)(gulp);
}
});
// Register the default task
gulp.task('default', function () {
sequence('build', ['server', 'proxy'], 'watch');
});
gulp.task('dist:serve', ['dist', 'server:dist']);
// Set the config to use across the gulp build
gulp.config = {
module: 'gript',
hostHeader: 'gript',
url: 'http://gript',
repository: 'http://nykredit.github.com/gript.git'
};
// verify that the build setup can produce the expected artifacts
gulp.task('verify-package-foundation', ['build'], function () {
gulp.src(['target/dist/index.html'])
.pipe(ex.real('target/dist/index.html'));
gulp.src(['target/dist/app.manifest'])
.pipe(ex.real('target/dist/app.manifest'));
gulp.src(['target/dist/styles/main-*.css'])
.pipe(ex.real('target/dist/styles/main-*.css'));
gulp.src(['target/dist/styles/vendor-*.css'])
.pipe(ex.real('target/dist/styles/vendor-*.css'));
gulp.src(['target/dist/scripts/main-*.js'])
.pipe(ex.real('target/dist/scripts/main-*.js'));
gulp.src(['target/dist/scripts/vendor-*.js'])
.pipe(ex.real('target/dist/scripts/vendor-*.js'));
gulp.src(['target/dist/img/*.png'])
.pipe(ex.real('target/dist/img/*.png'));
gulp.src(['target/dist/img/*.ico'])
.pipe(ex.real('target/dist/img/*.ico'));
gulp.src(['target/dist/fonts/*'])
.pipe(ex.real('target/dist/fonts/glyphicons-halflings-regular.*'));
});
gulp.task('create-package', ['dist'], function () {
gulp.src(['tasks/*.js', '!tasks/karma.conf.js'])
.pipe(gulp.dest('target/gript/tasks'))
.on('finish', function () {
gulp.src(['target/gript/tasks/test.gulp.js'])
.pipe(replace('node_modules/sinon', 'node_modules/gript/node_modules/sinon'))
.pipe(gulp.dest('target/gript/tasks'));
});
gulp.src(['package/sample_configs/*'])
.pipe(gulp.dest('target/gript/sample_configs'));
gulp.src(['package/sample_configs/.*'])
.pipe(gulp.dest('target/gript/sample_configs'));
gulp.src(['package/*'])
.pipe(gulp.dest('target/gript'));
gulp.src(['package/karma.conf.js'])
.pipe(gulp.dest('target/gript/tasks'));
});
// verify that the npm package contains the files it should
gulp.task('verify-package', function () {
gulp.src(['target/gript/index.js'])
.pipe(ex.real('target/gript/index.js'));
gulp.src(['target/gript/package.json'])
.pipe(ex.real('target/gript/package.json'));
gulp.src(['target/gript/sample_configs/gulpfile.js'])
.pipe(ex.real('target/gript/sample_configs/gulpfile.js'));
gulp.src(['target/gript/sample_configs/.eslintrc.yml'])
.pipe(ex.real('target/gript/sample_configs/.eslintrc.yml'));
gulp.src(['target/gript/sample_configs/.scss-lint.yml'])
.pipe(ex.real('target/gript/sample_configs/.scss-lint.yml'));
gulp.src(['target/gript/sample_configs/bower.json'])
.pipe(ex.real('target/gript/sample_configs/bower.json'));
gulp.src(['target/gript/*.md'])
.pipe(ex.real('target/gript/README.md'));
gulp.src(['target/gript/tasks/*.gulp.js'])
.pipe(ex.real('target/gript/tasks/*.gulp.js'));
gulp.src(['target/gript/tasks/*.conf.js'])
.pipe(ex.real('target/gript/tasks/karma.conf.js'));
});