-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGruntfile.js
More file actions
63 lines (49 loc) · 2.66 KB
/
Gruntfile.js
File metadata and controls
63 lines (49 loc) · 2.66 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
61
62
63
/**
* © 2019, db-developer.
* Licensed under the MIT license.
*/
"use strict";
const path = require( "path" );
const strings = require( "./.conf/strings" );
const env = {
APIDIR: path.join( `${ strings.DOCS }`, `${ strings.API }.md` ),
BUILDDIR: `${ strings.BUILD }`,
CONFDIR: `${ strings.DOT }${ strings.CONF }`,
COVERAGEDIR: path.join( `${ strings.DIST }`, `${ strings.COVERAGE }` ),
DOCSDIR: `${ strings.DOCS }`,
DISTDIR: `${ strings.DIST }`,
LIBDIR: path.join( `${ strings.SRC }`, `${ strings.LIB }` ),
SRCDIR: `${ strings.SRC }`,
STRINGS: strings,
TASKSDIR: path.join( `${ strings.SRC }`, `${ strings.TASKS }` ),
TEMPLATEDIR: path.join( `${ strings.SRC }`, `${ strings.TEST }`, `${ strings.TEMPLATE }` ),
TESTDIR: path.join( `${ strings.SRC }`, `${ strings.TEST }`, `${ strings.ANY }` ),
TMPDIR: path.join( `${ strings.SRC }`, `${ strings.TEST }`, `${ strings.TMP }` )
};
const GRUNTCONFDIR = path.join( process.cwd(), env.CONFDIR, strings.GRUNT );
module.exports = function( grunt ) {
require( "load-grunt-config" )( grunt, { configPath: GRUNTCONFDIR, data: env });
require( "load-grunt-tasks" )( grunt );
// run lint and all tests by default before packaging
grunt.registerTask( strings.ALL, [ strings.TEST, strings.DOCS, strings.BUILD,
strings.DIST, strings.DEPLOY ]);
// run lint and all tests by default before packaging
grunt.registerTask( strings.BUILD, [ strings.ESLINT, `${ strings.CLEAN }:build`,
strings.MKDIR, `${ strings.COPY }:build`,
strings.JSONFILE, strings.BUILDRO ]);
grunt.registerTask( strings.BUILDRO, [ strings.ROLLUP ]);
// run coverage (required by travis)
grunt.registerTask( strings.COVERAGE, [ strings.ESLINT, strings.CLEAN, strings.MKDIR,
strings.NYCMOCHA ]);
// run default
grunt.registerTask( strings.DEFAULT, [ strings.ALL ]);
// run deploy: copy current.tgz from dist to _packages_ current.tgz & latest.tgz
grunt.registerTask( strings.DEPLOY, [ `${ strings.COPY }:deploy` ]);
// run dist: clean dist and move current.tgz from cwd to dist
grunt.registerTask( strings.DIST, [ `${ strings.CLEAN }:dist`, `${ strings.CALL_NPM }:pack` ]);
// run docs
grunt.registerTask( strings.DOCS, [ strings.ESLINT, strings.JSDOC2MD ]);
// run test
grunt.registerTask( strings.TEST, [ strings.ESLINT, strings.CLEAN, strings.MKDIR,
`${ strings.COPY }:test`, strings.NYCMOCHA ]);
};