Merge branch 'master' into 2.0
Conflicts: index.js package.json
This commit is contained in:
commit
0a0a6f5d01
14
index.js
14
index.js
|
@ -7,6 +7,10 @@ var addInstructionsToBrowserify = require('./lib/bundler');
|
||||||
* Initialize an application from an options object or
|
* Initialize an application from an options object or
|
||||||
* a set of JSON and JavaScript files.
|
* a set of JSON and JavaScript files.
|
||||||
*
|
*
|
||||||
|
* > **NOTE**: This module is primarily intended for use with LoopBack 2.0.
|
||||||
|
* It _does_ work with LoopBack 1.x applications, but
|
||||||
|
* none of the LoopBack 1.x examples or generated code (scaffolding) use it.
|
||||||
|
*
|
||||||
* This function takes an optional argument that is either a string
|
* This function takes an optional argument that is either a string
|
||||||
* or an object.
|
* or an object.
|
||||||
*
|
*
|
||||||
|
@ -37,11 +41,11 @@ var addInstructionsToBrowserify = require('./lib/bundler');
|
||||||
* dataSource and extra relations. To define a model, create a per-model
|
* dataSource and extra relations. To define a model, create a per-model
|
||||||
* JSON file in `models/` directory.
|
* JSON file in `models/` directory.
|
||||||
*
|
*
|
||||||
* **NOTE:** mixing `app.boot()` and `app.model(name, config)` in multiple
|
* **NOTE:** Mixing `bootLoopBackApp(app, bootConfig)` and
|
||||||
* files may result in models being **undefined** due to race conditions.
|
* `app.model(name, modelConfig)` in multiple
|
||||||
* To avoid this when using `app.boot()` make sure all models are passed
|
* files may result in models being undefined due to race conditions.
|
||||||
* as part of the `models` configuration.
|
* To avoid this when using `bootLoopBackApp()` make sure all models are passed
|
||||||
*
|
* as part of the `models` definition.
|
||||||
*
|
*
|
||||||
* Throws an error if the config object is not valid or if boot fails.
|
* Throws an error if the config object is not valid or if boot fails.
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
var assert = require('assert');
|
var assert = require('assert');
|
||||||
var _ = require('underscore');
|
var _ = require('underscore');
|
||||||
var loopback = require('loopback');
|
var loopback = require('loopback');
|
||||||
|
var semver = require('semver');
|
||||||
var debug = require('debug')('loopback:boot:executor');
|
var debug = require('debug')('loopback:boot:executor');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -13,6 +14,8 @@ var debug = require('debug')('loopback:boot:executor');
|
||||||
*/
|
*/
|
||||||
|
|
||||||
module.exports = function execute(app, instructions) {
|
module.exports = function execute(app, instructions) {
|
||||||
|
assertLoopBackVersion(app);
|
||||||
|
|
||||||
setHost(app, instructions);
|
setHost(app, instructions);
|
||||||
setPort(app, instructions);
|
setPort(app, instructions);
|
||||||
setApiRoot(app, instructions);
|
setApiRoot(app, instructions);
|
||||||
|
@ -26,6 +29,22 @@ module.exports = function execute(app, instructions) {
|
||||||
enableAnonymousSwagger(app, instructions);
|
enableAnonymousSwagger(app, instructions);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function assertLoopBackVersion(app) {
|
||||||
|
var RANGE = '1.x || 2.x';
|
||||||
|
|
||||||
|
// app.loopback was introduced in 1.9.0
|
||||||
|
var loopback = app.loopback || {};
|
||||||
|
var version = loopback.version || '1.0.0';
|
||||||
|
|
||||||
|
if (!semver.satisfies(version, RANGE)) {
|
||||||
|
throw new Error(
|
||||||
|
'The `app` is powered by an incompatible loopback version %s. ' +
|
||||||
|
'Supported versions: %s',
|
||||||
|
loopback.version || '<1.9',
|
||||||
|
RANGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function setHost(app, instructions) {
|
function setHost(app, instructions) {
|
||||||
//jshint camelcase:false
|
//jshint camelcase:false
|
||||||
var host =
|
var host =
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
],
|
],
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/loobpack/loopback-boot"
|
"url": "https://github.com/strongloop/loopback-boot"
|
||||||
},
|
},
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"browser": "browser.js",
|
"browser": "browser.js",
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"commondir": "0.0.1",
|
"commondir": "0.0.1",
|
||||||
"debug": "^0.8.1",
|
"debug": "^0.8.1",
|
||||||
|
"semver": "^2.3.0",
|
||||||
"toposort": "^0.2.10",
|
"toposort": "^0.2.10",
|
||||||
"underscore": "^1.6.0"
|
"underscore": "^1.6.0"
|
||||||
},
|
},
|
||||||
|
@ -35,8 +36,5 @@
|
||||||
"supertest": "^0.13.0",
|
"supertest": "^0.13.0",
|
||||||
"fs-extra": "^0.9.1",
|
"fs-extra": "^0.9.1",
|
||||||
"browserify": "^4.1.8"
|
"browserify": "^4.1.8"
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"loopback": "1.x || 2.x"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue