yfe-ynpm
Version:
遥望网络私有NPM仓库客户端
52 lines (45 loc) • 1.43 kB
JavaScript
;
const debug = require('debug')('ynpm:config');
const path = require('path');
const fs = require('fs');
const cp = require('child_process');
const ini = require('ini');
let root;
if (process.platform === 'win32') {
root = process.env.USERPROFILE || process.env.APPDATA || process.env.TMP || process.env.TEMP;
} else {
root = process.env.HOME || process.env.TMPDIR || '/tmp';
}
let prefix = null;
try {
prefix = cp.execSync('npm config get prefix').toString().trim();
} catch (err) {
// ignore it
debug('npm config cli error: %s', err);
}
let proxy = '';
const userconfig = path.join(root, '.ynpmrc');
if (fs.existsSync(userconfig)) {
let ynpmrc;
try {
ynpmrc = ini.parse(fs.readFileSync(userconfig, 'utf-8'));
} catch (err) {
console.warn('[ynpm:config] [WARN] read %s ini format error', userconfig);
}
if (ynpmrc && ynpmrc.proxy) {
proxy = ynpmrc.proxy;
}
}
module.exports = {
// cnpmHost: 'https://npm.taobao.org',
// cnpmRegistry: 'https://registry.npm.taobao.org',
// disturl: 'https://npm.taobao.org/mirrors/node', // download dist tarball for node-gyp
ynpmHost: 'https://npm.ywwl.com',
ynpmRegistry: 'https://registry-npm.ywwl.com',
disturl: 'https://npm.ywwl.com/mirrors/node', // download dist tarball for node-gyp
iojsDisturl: 'https://npm.ywwl.com/mirrors/iojs',
cache: path.join(root, '.ynpm'), // cache folder name
userconfig,
proxy,
prefix,
};