UNPKG

2.01 kBJavaScriptView Raw
1'use strict';
2
3var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { 'default': obj }; };
4
5Object.defineProperty(exports, '__esModule', {
6 value: true
7});
8
9var _minilog = require('minilog');
10
11var _minilog2 = _interopRequireWildcard(_minilog);
12
13var _import = require('lodash');
14
15var _import2 = _interopRequireWildcard(_import);
16
17var _auto = require('async');
18
19var _moment = require('moment');
20
21var _moment2 = _interopRequireWildcard(_moment);
22
23var _log = require('./lib/log');
24
25var _log2 = _interopRequireWildcard(_log);
26
27var _defaultOptions = require('./lib/defaultOptions');
28
29var _defaultOptions2 = _interopRequireWildcard(_defaultOptions);
30
31var _parseOptions = require('./lib/parseOptions');
32
33var _parseOptions2 = _interopRequireWildcard(_parseOptions);
34
35var _tasks = require('./tasks');
36
37var _tasks2 = _interopRequireWildcard(_tasks);
38
39'use strict';
40
41var runTaskWithOptions = function runTaskWithOptions(options, task, name) {
42 return function (cb) {
43 var taskOptions = options.tasks[name];
44
45 if (!taskOptions) {
46 return cb('No options found for task "' + name + '".');
47 }
48
49 if (!taskOptions.enabled) {
50 //log.disabledTask(name);
51 return cb();
52 }
53
54 taskOptions.taskName = name;
55
56 _log2['default'].startTask(name);
57
58 task.run(taskOptions, function (e) {
59 if (e) {
60 return cb(e);
61 }
62
63 _log2['default'].finishTask(name);
64
65 cb();
66 });
67 };
68};
69
70exports['default'] = function (_x, cb) {
71 var inputOptions = arguments[0] === undefined ? {} : arguments[0];
72
73 var options = global.options = _parseOptions2['default'](_defaultOptions2['default'], inputOptions);
74
75 if (options.logging) {
76 _minilog2['default'].suggest.deny(/.*/, options.logging.level);
77 }
78
79 var autoTasks = _import2['default'].reduce(_tasks2['default'], function (m, v, k) {
80 m[k] = v.dependencies.concat(runTaskWithOptions(options, v, k));
81
82 return m;
83 }, {});
84
85 _auto.auto(autoTasks, cb);
86};
87
88;
89module.exports = exports['default'];
\No newline at end of file