forked from andresmgot/blacksmith
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
68 lines (54 loc) · 1.27 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
'use strict';
const gulp = require('gulp');
const commonTasks = require('bitnami-gulp-common-tasks')(gulp);
const runSequence = require('run-sequence');
const nodeVersion = '10.19.0';
/* CI tasks */
const testFiles = [
'./test/index.js'
];
const srcFiles = ['index.js', './cli/**/*.js', './config-handler/*.js', './lib/**/*.js'];
const testArgs = {sources: srcFiles, tests: testFiles};
commonTasks.test(testArgs);
commonTasks.ci(testArgs);
/* Build tasks */
const buildDir = './artifacts/build';
commonTasks.bundle({
buildDir,
artifactName: 'blacksmith-linux-x64',
sources: [
'./package.json',
'./config.json.sample',
'./index.js',
'./cli/**/*',
'./config-handler/*.js',
'./schemas/*',
'./lib/**/*',
'./bin/**/*'
],
runtime: {
version: nodeVersion,
destDir: './runtimes'
}
});
commonTasks.npm({
buildDir,
sources: [
'./index.js',
'./cli/*.js',
'./schemas/*',
'./config-handler/*.js',
'./lib/**/*'
],
meta: [
'./bin/**/*',
'./COPYING',
'README.md'
]
});
/* General tasks */
commonTasks['install-node']({version: nodeVersion, destination: './runtimes'});
gulp.task('clean', () => {
runSequence('test:clean', 'ci-test:clean', 'bundle:clean');
});
gulp.task('default', ['install-node']);