bs-builder-core
Advanced tools
Comparing version 0.0.3 to 0.1.0
@@ -10,4 +10,5 @@ exports.Builder = require('./lib/index'); | ||
MergeModels: require('./lib/tasks/merge-models'), | ||
RsyncPages: require('./lib/tasks/rsync-pages'), | ||
SaveDataFile: require('./lib/tasks/save-data-file'), | ||
SaveModelFile: require('./lib/tasks/save-model-file') | ||
}; |
@@ -29,12 +29,2 @@ 'use strict'; | ||
_createClass(Config, [{ | ||
key: 'defaults', | ||
get: function () { | ||
return { | ||
languages: ['en'], | ||
modelFilePath: './model/model.json', | ||
dataFolder: './data', | ||
cacheFolder: './.builder/cache' | ||
}; | ||
} | ||
}, { | ||
key: 'setLanguages', | ||
@@ -170,2 +160,12 @@ | ||
} | ||
}, { | ||
key: 'defaults', | ||
get: function () { | ||
return { | ||
languages: ['en'], | ||
modelFilePath: './model/model.json', | ||
dataFolder: './data', | ||
cacheFolder: './.builder/cache' | ||
}; | ||
} | ||
}]); | ||
@@ -172,0 +172,0 @@ |
@@ -116,2 +116,14 @@ 'use strict'; | ||
var dependencies = Task.getDependencies(), | ||
taskNames = this.getTasks().map(function (task) { | ||
return task.constructor.name; | ||
}); | ||
if (dependencies.length) { | ||
dependencies.forEach(function (dependency) { | ||
if (taskNames.indexOf(dependency.name) === -1) { | ||
throw new Error('Task "' + Task['name'] + '" requires "' + dependency.name + '" to be executed before it!'); | ||
} | ||
}); | ||
} | ||
this.getTasks().push(new Task(this.getConfig(), taskOptions)); | ||
@@ -118,0 +130,0 @@ return this; |
@@ -19,4 +19,2 @@ 'use strict'; | ||
'use strict'; | ||
var Changes = (function () { | ||
@@ -23,0 +21,0 @@ function Changes() { |
@@ -13,4 +13,2 @@ 'use strict'; | ||
'use strict'; | ||
var ChangeType = (function () { | ||
@@ -17,0 +15,0 @@ function ChangeType(type) { |
@@ -19,6 +19,2 @@ 'use strict'; | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _base = require('./base'); | ||
@@ -28,2 +24,6 @@ | ||
var _mergeModels = require('./merge-models'); | ||
var _mergeModels2 = _interopRequireDefault(_mergeModels); | ||
var AnalyzeModel = (function (_Base) { | ||
@@ -114,2 +114,7 @@ function AnalyzeModel() { | ||
} | ||
}, { | ||
key: 'getDependencies', | ||
value: function getDependencies() { | ||
return [_mergeModels2['default']]; | ||
} | ||
}]); | ||
@@ -116,0 +121,0 @@ |
@@ -11,2 +11,4 @@ 'use strict'; | ||
var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; | ||
_Object$defineProperty(exports, '__esModule', { | ||
@@ -16,7 +18,18 @@ value: true | ||
var os = require('os'), | ||
fs = require('fs'), | ||
path = require('path'), | ||
Logger = require('bem-site-logger'); | ||
var _os = require('os'); | ||
var _os2 = _interopRequireDefault(_os); | ||
var _fs = require('fs'); | ||
var _fs2 = _interopRequireDefault(_fs); | ||
var _path = require('path'); | ||
var _path2 = _interopRequireDefault(_path); | ||
var _bemSiteLogger = require('bem-site-logger'); | ||
var _bemSiteLogger2 = _interopRequireDefault(_bemSiteLogger); | ||
var Base = (function () { | ||
@@ -28,3 +41,3 @@ function Base(baseConfig, taskConfig) { | ||
this._taskConfig = taskConfig || {}; | ||
this.logger = Logger.setOptions(this.getBaseConfig().getLoggerSettings()).createLogger(this.constructor.getLoggerName()); | ||
this.logger = _bemSiteLogger2['default'].setOptions(this.getBaseConfig().getLoggerSettings()).createLogger(this.constructor.getLoggerName()); | ||
@@ -72,3 +85,5 @@ this.afterInitialization(); | ||
value: function beforeRun() { | ||
console.log(os.EOL); | ||
if (process.env.NODE_ENV !== 'testing') { | ||
console.log(_os2['default'].EOL); | ||
} | ||
this.logger.info('' + this.constructor.getName().toUpperCase()); | ||
@@ -92,3 +107,3 @@ this.logger.info('Start to execute "' + this.constructor.getName() + '" task'); | ||
return new _Promise(function (resolve, reject) { | ||
fs.readFile(path.join(basePath, filePath), o, function (error, content) { | ||
_fs2['default'].readFile(_path2['default'].join(basePath, filePath), o, function (error, content) { | ||
if (error) { | ||
@@ -120,3 +135,3 @@ _this.logger.error('Error occur while loading file ' + filePath + ' from cache'); | ||
return new _Promise(function (resolve, reject) { | ||
fs.writeFile(path.join(basePath, filePath), content, o, function (error) { | ||
_fs2['default'].writeFile(_path2['default'].join(basePath, filePath), content, o, function (error) { | ||
if (error) { | ||
@@ -145,2 +160,8 @@ _this2.logger.error('Error occur while saving file ' + filePath + ' to cache'); | ||
key: 'getLoggerName', | ||
/** | ||
* Returns module for log purposes. Should be override in inherited classes | ||
* @returns {Object|module} | ||
* @protected | ||
*/ | ||
value: function getLoggerName() { | ||
@@ -151,5 +172,21 @@ return module; | ||
key: 'getName', | ||
/** | ||
* Returns name of task. Should be override in inherited classes | ||
* @returns {String} | ||
* @protected | ||
*/ | ||
value: function getName() { | ||
return 'base'; | ||
} | ||
}, { | ||
key: 'getDependencies', | ||
/** | ||
* Returns array of task dependencies | ||
* @returns {Array} | ||
*/ | ||
value: function getDependencies() { | ||
return []; | ||
} | ||
}]); | ||
@@ -156,0 +193,0 @@ |
@@ -23,6 +23,2 @@ 'use strict'; | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _fsExtra = require('fs-extra'); | ||
@@ -29,0 +25,0 @@ |
@@ -19,14 +19,2 @@ 'use strict'; | ||
var _fs = require('fs'); | ||
var _fs2 = _interopRequireDefault(_fs); | ||
var _path = require('path'); | ||
var _path2 = _interopRequireDefault(_path); | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _mkdirp = require('mkdirp'); | ||
@@ -70,3 +58,3 @@ | ||
return new _Promise(function (resolve, reject) { | ||
_mkdirp2['default'](dir, function (error) { | ||
(0, _mkdirp2['default'])(dir, function (error) { | ||
if (error) { | ||
@@ -73,0 +61,0 @@ _this.logger.error('Directory creation error occur %s', dir); |
@@ -23,6 +23,2 @@ 'use strict'; | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _mkdirp = require('mkdirp'); | ||
@@ -32,6 +28,2 @@ | ||
var _fsExtra = require('fs-extra'); | ||
var _fsExtra2 = _interopRequireDefault(_fsExtra); | ||
var _base = require('./base'); | ||
@@ -41,2 +33,6 @@ | ||
var _mergeModels = require('./merge-models'); | ||
var _mergeModels2 = _interopRequireDefault(_mergeModels); | ||
var MakePagesCache = (function (_Base) { | ||
@@ -67,3 +63,3 @@ function MakePagesCache() { | ||
return new _Promise(function (resolve, reject) { | ||
_mkdirp2['default'](_path2['default'].join(baseFolder, url), function (error) { | ||
(0, _mkdirp2['default'])(_path2['default'].join(baseFolder, url), function (error) { | ||
if (error) { | ||
@@ -112,2 +108,7 @@ _this.logger.error('Error occur while creating cache folder for page: => ' + url); | ||
} | ||
}, { | ||
key: 'getDependencies', | ||
value: function getDependencies() { | ||
return [_mergeModels2['default']]; | ||
} | ||
}]); | ||
@@ -114,0 +115,0 @@ |
@@ -35,2 +35,6 @@ 'use strict'; | ||
var _loadModelFiles = require('./load-model-files'); | ||
var _loadModelFiles2 = _interopRequireDefault(_loadModelFiles); | ||
var MergeModels = (function (_Base) { | ||
@@ -128,3 +132,3 @@ function MergeModels() { | ||
model.getChanges().pages.addModified({ type: 'page', url: url }); | ||
return _deepExtend2['default'](oldModel[url], newModel[url]); | ||
return (0, _deepExtend2['default'])(oldModel[url], newModel[url]); | ||
}, this))); | ||
@@ -146,2 +150,7 @@ | ||
}, { | ||
key: 'getDependencies', | ||
value: function getDependencies() { | ||
return [_loadModelFiles2['default']]; | ||
} | ||
}, { | ||
key: '_generateUrlPageMap', | ||
@@ -148,0 +157,0 @@ value: function _generateUrlPageMap(arr) { |
@@ -27,6 +27,2 @@ 'use strict'; | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _base = require('./base'); | ||
@@ -36,2 +32,6 @@ | ||
var _mergeModels = require('./merge-models'); | ||
var _mergeModels2 = _interopRequireDefault(_mergeModels); | ||
var SaveModelFile = (function (_Base) { | ||
@@ -87,2 +87,7 @@ function SaveModelFile() { | ||
} | ||
}, { | ||
key: 'getDependencies', | ||
value: function getDependencies() { | ||
return [_mergeModels2['default']]; | ||
} | ||
}]); | ||
@@ -89,0 +94,0 @@ |
@@ -27,6 +27,2 @@ 'use strict'; | ||
var _lodash = require('lodash'); | ||
var _lodash2 = _interopRequireDefault(_lodash); | ||
var _base = require('./base'); | ||
@@ -33,0 +29,0 @@ |
{ | ||
"name": "bs-builder-core", | ||
"version": "0.0.3", | ||
"version": "0.1.0", | ||
"repository": { | ||
@@ -36,14 +36,16 @@ "type": "git", | ||
"babel": "^5.2.x", | ||
"istanbul": "^0.3.x", | ||
"istanbul": "^0.3.13", | ||
"jscs": "^1.11.x", | ||
"jshint": "~2.7.x", | ||
"jshint": "~2.8.x", | ||
"mocha": "~2.2.x", | ||
"mocha-lcov-reporter": "0.0.x", | ||
"mock-fs": "^2.7.0", | ||
"should": "~6.x" | ||
"should": "~7.x" | ||
}, | ||
"scripts": { | ||
"jshint": "node_modules/.bin/jshint --extra-ext .es6 .", | ||
"jscs": "node_modules/.bin/jscs -c .jscs.js .", | ||
"codestyle": "npm run jshint && npm run jscs", | ||
"compile": "babel src --optional runtime --out-dir lib", | ||
"codestyle": "node_modules/.bin/jshint . && node_modules/.bin/jscs -c .jscs.js .", | ||
"test": "npm run compile && NODE_ENV=testing ./node_modules/.bin/istanbul cover _mocha" | ||
"pretest": "npm run codestyle && npm run compile", | ||
"test": "NODE_ENV=testing ./node_modules/.bin/istanbul cover _mocha" | ||
}, | ||
@@ -50,0 +52,0 @@ "readmeFilename": "README.md", |
@@ -209,2 +209,3 @@ # builder-core | ||
* Описание: Позволяет находить различия между текущей моделью и моделью предыдущего запуска. | ||
* Зависимости: [LoadModelFiles](./src/tasks/load-model-files.es6) | ||
* Параметры: - нет | ||
@@ -222,2 +223,3 @@ * Обязательное использование: - да. | ||
* Описание: Производит первичный анализ и нормализацию файла модели. | ||
* Зависимости: [MergeModels](./src/tasks/merge-models.es6) | ||
* Параметры: - нет | ||
@@ -230,8 +232,20 @@ * Обязательное использование: - да. | ||
совпадают с url-ами страниц. | ||
* Зависимости: [MergeModels](./src/tasks/merge-models.es6) | ||
* Параметры: - нет | ||
* Обязательное использование: - нет. | ||
### - [RsyncPages](./src/tasks/rsync-pages.es6) | ||
* Описание: Сохраняет результат в файл `data.json` в целевой директории сборки. | ||
* Параметры: | ||
* - {Array } `exclude` - массив с паттернами файлов которые должны быть исключены | ||
из процесса синхронизации. | ||
* - {Array} `include` - массив с паттернами файлов которые должны быть включены в процесс | ||
синхронизации даже если они находятся в `exclude`. | ||
* Обязательное использование: - да. | ||
### - [SaveDataFile](./src/tasks/save-data-file.es6) | ||
* Описание: Сохраняет результат в файл `data.json` в целевой директории сборки. | ||
* Зависимости: [MergeModels](./src/tasks/merge-models.es6) | ||
* Параметры: - нет | ||
@@ -238,0 +252,0 @@ * Обязательное использование: - да. |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
7
35
276
135945
1412
1