Merge pull request #1096 from marcelklehr/fix/server-startup-npm
Fix npm
This commit is contained in:
commit
05cc7b3fd5
|
@ -21,31 +21,49 @@
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
var log4js = require('log4js')
|
||||||
|
, async = require('async')
|
||||||
|
;
|
||||||
|
|
||||||
// set up logger
|
// set up logger
|
||||||
var log4js = require('log4js');
|
|
||||||
log4js.replaceConsole();
|
log4js.replaceConsole();
|
||||||
|
|
||||||
var settings = require('./utils/Settings');
|
var settings
|
||||||
|
, db
|
||||||
//set loglevel
|
, plugins
|
||||||
log4js.setGlobalLogLevel(settings.loglevel);
|
, hooks;
|
||||||
|
|
||||||
var db = require('./db/DB');
|
|
||||||
var async = require('async');
|
|
||||||
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
|
||||||
var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
|
|
||||||
var npm = require("npm/lib/npm.js");
|
var npm = require("npm/lib/npm.js");
|
||||||
|
|
||||||
hooks.plugins = plugins;
|
|
||||||
|
|
||||||
async.waterfall([
|
async.waterfall([
|
||||||
|
// load npm
|
||||||
|
function(callback) {
|
||||||
|
npm.load({}, function(er) {
|
||||||
|
callback(er)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// load everything
|
||||||
|
function(callback) {
|
||||||
|
settings = require('./utils/Settings');
|
||||||
|
db = require('./db/DB');
|
||||||
|
plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
||||||
|
hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
|
||||||
|
hooks.plugins = plugins;
|
||||||
|
|
||||||
|
//set loglevel
|
||||||
|
log4js.setGlobalLogLevel(settings.loglevel);
|
||||||
|
callback();
|
||||||
|
},
|
||||||
|
|
||||||
//initalize the database
|
//initalize the database
|
||||||
function (callback)
|
function (callback)
|
||||||
{
|
{
|
||||||
db.init(callback);
|
db.init(callback);
|
||||||
},
|
},
|
||||||
|
|
||||||
plugins.update,
|
function(callback) {
|
||||||
|
plugins.update(callback)
|
||||||
|
},
|
||||||
|
|
||||||
function (callback) {
|
function (callback) {
|
||||||
console.info("Installed plugins: " + plugins.formatPlugins());
|
console.info("Installed plugins: " + plugins.formatPlugins());
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
"jsdom-nocontextifiy" : "0.2.10",
|
"jsdom-nocontextifiy" : "0.2.10",
|
||||||
"async-stacktrace" : "0.0.2",
|
"async-stacktrace" : "0.0.2",
|
||||||
"npm" : "1.1.x",
|
"npm" : "1.1.x",
|
||||||
|
"npm-registry-client" : "0.2.10",
|
||||||
"ejs" : "0.6.1",
|
"ejs" : "0.6.1",
|
||||||
"graceful-fs" : "1.1.5",
|
"graceful-fs" : "1.1.5",
|
||||||
"slide" : "1.1.3",
|
"slide" : "1.1.3",
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
|
||||||
var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
|
var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
|
||||||
var npm = require("npm");
|
var npm = require("npm");
|
||||||
var registry = require("npm/lib/utils/npm-registry-client/index.js");
|
var RegClient = require("npm-registry-client")
|
||||||
|
|
||||||
|
var registry = new RegClient(
|
||||||
|
{ registry: "http://registry.npmjs.org"
|
||||||
|
, cache: npm.cache }
|
||||||
|
);
|
||||||
|
|
||||||
var withNpm = function (npmfn, final, cb) {
|
var withNpm = function (npmfn, final, cb) {
|
||||||
npm.load({}, function (er) {
|
npm.load({}, function (er) {
|
||||||
|
@ -72,7 +77,7 @@ exports.search = function(query, cache, cb) {
|
||||||
cb(null, exports.searchCache);
|
cb(null, exports.searchCache);
|
||||||
} else {
|
} else {
|
||||||
registry.get(
|
registry.get(
|
||||||
"/-/all", null, 600, false, true,
|
"/-/all", 600, false, true,
|
||||||
function (er, data) {
|
function (er, data) {
|
||||||
if (er) return cb(er);
|
if (er) return cb(er);
|
||||||
exports.searchCache = data;
|
exports.searchCache = data;
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
var npm = require("npm/lib/npm.js");
|
var npm = require("npm/lib/npm.js");
|
||||||
var readInstalled = require("./read-installed.js");
|
var readInstalled = require("./read-installed.js");
|
||||||
var relativize = require("npm/lib/utils/relativize.js");
|
|
||||||
var readJson = require("npm/lib/utils/read-json.js");
|
|
||||||
var path = require("path");
|
var path = require("path");
|
||||||
var async = require("async");
|
var async = require("async");
|
||||||
var fs = require("fs");
|
var fs = require("fs");
|
||||||
|
|
|
@ -94,8 +94,21 @@ var npm = require("npm/lib/npm.js")
|
||||||
, path = require("path")
|
, path = require("path")
|
||||||
, asyncMap = require("slide").asyncMap
|
, asyncMap = require("slide").asyncMap
|
||||||
, semver = require("semver")
|
, semver = require("semver")
|
||||||
, readJson = require("npm/lib/utils/read-json.js")
|
, log = require("log4js").getLogger('pluginfw')
|
||||||
, log = require("npm/lib/utils/log.js")
|
|
||||||
|
function readJson(file, callback) {
|
||||||
|
fs.readFile(file, function(er, buf) {
|
||||||
|
if(er) {
|
||||||
|
callback(er);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
callback( null, JSON.parse(buf.toString()) )
|
||||||
|
} catch(er) {
|
||||||
|
callback(er)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = readInstalled
|
module.exports = readInstalled
|
||||||
|
|
||||||
|
@ -274,7 +287,7 @@ function findUnmet (obj) {
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
log.verbose([obj._id], "returning")
|
log.debug([obj._id], "returning")
|
||||||
return obj
|
return obj
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue