Esempio n. 1
0
var node_path   = require('path');

module.exports = neuropil({
    logger: require('./logger'),

    username: profile.get('username'),
    password: profile.get('password'),
    email: '*****@*****.**',

    port: profile.get('registry_port'),
    host: profile.get('registry'),

    cacheMapper: function (options, callback) { 
        var pathname = node_url.parse(options.url).pathname;

        // only cache document json for database 'registry'
        // 'http://xxxxxx.com/align' -> cache
        // 'http://xxxx.com/-/user/xxxx' -> not to cache
        if ( /^\/[^\/]/.test(pathname) ) {
            var name = pathname.replace(/^\//, '');
            var cache = node_path.join( profile.get('cache_root'), name, 'document.cache' );

            callback(null, cache);

        } else {
            callback(null);
        }
    }

}).on('request', function(e) {
    e.json && logger.debug('json', e.json);
Esempio n. 2
0
'use strict';

var neuropil = require('neuropil');
var profile = require('./profile');
var node_url = require('url');

module.exports = neuropil({
    logger: require('./logger'),

    username: profile.option('username'),
    password: profile.option('password'),
    email: '*****@*****.**',

    port: profile.option('registry_port'),
    host: profile.option('registry')

}).on('request', function(e) {
    e.json && this.logger.debug('json', e.json);

}).on('response', function(e){
    var code = e.res.statusCode;

    this.logger.info(
        '  ',
        this.logger.template('{{magenta method}} {{url}}', {
            url     : e.req.safe_url,
            method  : e.req.method
        }),
        e.err ? 
            '{{red ' + (code || 'ERR') + '}}' : 
            '{{' + ( is_code_success(code) ? 'green' : 'yellow' ) + ' ' + (code || 'OK!') + '}}'