|
|
|
var fs = require("graceful-fs")
|
|
|
|
var path = require("path")
|
|
|
|
var userconfigSrc = path.resolve(__dirname, "..", "fixtures", "config", "userconfig")
|
|
|
|
exports.userconfig = userconfigSrc + "-with-gc"
|
|
|
|
exports.globalconfig = path.resolve(__dirname, "..", "fixtures", "config", "globalconfig")
|
|
|
|
exports.builtin = path.resolve(__dirname, "..", "fixtures", "config", "builtin")
|
|
|
|
exports.malformed = path.resolve(__dirname, "..", "fixtures", "config", "malformed")
|
|
|
|
exports.ucData =
|
|
|
|
{ globalconfig: exports.globalconfig,
|
|
|
|
email: "i@izs.me",
|
|
|
|
"env-thing": "asdf",
|
|
|
|
"init.author.name": "Isaac Z. Schlueter",
|
|
|
|
"init.author.email": "i@izs.me",
|
|
|
|
"init.author.url": "http://blog.izs.me/",
|
|
|
|
"init.version": "1.2.3",
|
|
|
|
"proprietary-attribs": false,
|
|
|
|
"npm:publishtest": true,
|
|
|
|
"_npmjs.org:couch": "https://admin:password@localhost:5984/registry",
|
|
|
|
"npm-www:nocache": "1",
|
|
|
|
nodedir: "/Users/isaacs/dev/js/node-v0.8",
|
|
|
|
"sign-git-tag": true,
|
|
|
|
message: "v%s",
|
|
|
|
"strict-ssl": false,
|
|
|
|
"tmp": process.env.HOME + "/.tmp",
|
|
|
|
_auth: "dXNlcm5hbWU6cGFzc3dvcmQ=",
|
|
|
|
_token:
|
|
|
|
{ AuthSession: "yabba-dabba-doodle",
|
|
|
|
version: "1",
|
|
|
|
expires: "1345001053415",
|
|
|
|
path: "/",
|
|
|
|
httponly: true } }
|
|
|
|
|
|
|
|
// set the userconfig in the env
|
|
|
|
// unset anything else that npm might be trying to foist on us
|
|
|
|
Object.keys(process.env).forEach(function (k) {
|
|
|
|
if (k.match(/^npm_config_/i)) {
|
|
|
|
delete process.env[k]
|
|
|
|
}
|
|
|
|
})
|
|
|
|
process.env.npm_config_userconfig = exports.userconfig
|
|
|
|
process.env.npm_config_other_env_thing = 1000
|
|
|
|
process.env.random_env_var = "asdf"
|
|
|
|
process.env.npm_config__underbar_env_thing = "underful"
|
|
|
|
process.env.NPM_CONFIG_UPPERCASE_ENV_THING = 42
|
|
|
|
|
|
|
|
exports.envData = {
|
|
|
|
userconfig: exports.userconfig,
|
|
|
|
"_underbar-env-thing": "underful",
|
|
|
|
"uppercase-env-thing": "42",
|
|
|
|
"other-env-thing": "1000"
|
|
|
|
}
|
|
|
|
exports.envDataFix = {
|
|
|
|
userconfig: exports.userconfig,
|
|
|
|
"_underbar-env-thing": "underful",
|
|
|
|
"uppercase-env-thing": 42,
|
|
|
|
"other-env-thing": 1000
|
|
|
|
}
|
|
|
|
|
|
|
|
var projectConf = path.resolve(__dirname, '..', '..', '.npmrc')
|
|
|
|
try {
|
|
|
|
fs.statSync(projectConf)
|
|
|
|
} catch (er) {
|
|
|
|
// project conf not found, probably working with packed npm
|
|
|
|
fs.writeFileSync(projectConf, 'save-prefix = ~\nproprietary-attribs = false\n')
|
|
|
|
}
|
|
|
|
|
|
|
|
var projectRc = path.join(__dirname, '..', 'fixtures', 'config', '.npmrc')
|
|
|
|
try {
|
|
|
|
fs.statSync(projectRc)
|
|
|
|
} catch (er) {
|
|
|
|
// project conf not found, probably working with packed npm
|
|
|
|
fs.writeFileSync(projectRc, 'just = testing')
|
|
|
|
}
|
|
|
|
|
|
|
|
if (module === require.main) {
|
|
|
|
// set the globalconfig in the userconfig
|
|
|
|
var uc = fs.readFileSync(userconfigSrc)
|
|
|
|
var gcini = "globalconfig = " + exports.globalconfig + "\n"
|
|
|
|
fs.writeFileSync(exports.userconfig, gcini + uc)
|
|
|
|
|
|
|
|
console.log("1..1")
|
|
|
|
console.log("ok 1 setup done")
|
|
|
|
}
|