mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-02-11 21:05:47 +00:00
95 lines
1.9 KiB
JavaScript
95 lines
1.9 KiB
JavaScript
'use strict'
|
|
|
|
const pkg = require('./package.json')
|
|
const pudding = require('figgy-pudding')
|
|
const silentLog = require('./silentlog.js')
|
|
|
|
const AUTH_REGEX = /^(?:.*:)?(_authToken|username|_password|password|email|always-auth|_auth|otp)$/
|
|
const SCOPE_REGISTRY_REGEX = /@.*:registry$/gi
|
|
const RegFetchConfig = pudding({
|
|
'agent': {},
|
|
'algorithms': {},
|
|
'body': {},
|
|
'ca': {},
|
|
'cache': {},
|
|
'cert': {},
|
|
'fetch-retries': {},
|
|
'fetch-retry-factor': {},
|
|
'fetch-retry-maxtimeout': {},
|
|
'fetch-retry-mintimeout': {},
|
|
'gid': {},
|
|
'headers': {},
|
|
'integrity': {},
|
|
'is-from-ci': 'isFromCI',
|
|
'isFromCI': {
|
|
default () {
|
|
return (
|
|
process.env['CI'] === 'true' ||
|
|
process.env['TDDIUM'] ||
|
|
process.env['JENKINS_URL'] ||
|
|
process.env['bamboo.buildKey'] ||
|
|
process.env['GO_PIPELINE_NAME']
|
|
)
|
|
}
|
|
},
|
|
'key': {},
|
|
'local-address': {},
|
|
'log': {
|
|
default: silentLog
|
|
},
|
|
'max-sockets': 'maxsockets',
|
|
'maxsockets': {
|
|
default: 12
|
|
},
|
|
'memoize': {},
|
|
'method': {
|
|
default: 'GET'
|
|
},
|
|
'noproxy': {},
|
|
'npm-session': 'npmSession',
|
|
'npmSession': {},
|
|
'offline': {},
|
|
'otp': {},
|
|
'prefer-offline': {},
|
|
'prefer-online': {},
|
|
'projectScope': {},
|
|
'project-scope': 'projectScope',
|
|
'Promise': {},
|
|
'proxy': {},
|
|
'query': {},
|
|
'refer': {},
|
|
'referer': 'refer',
|
|
'registry': {
|
|
default: 'https://registry.npmjs.org/'
|
|
},
|
|
'retry': {},
|
|
'scope': {},
|
|
'spec': {},
|
|
'strict-ssl': {},
|
|
'timeout': {},
|
|
'uid': {},
|
|
'user-agent': {
|
|
default: `${
|
|
pkg.name
|
|
}@${
|
|
pkg.version
|
|
}/node@${
|
|
process.version
|
|
}+${
|
|
process.arch
|
|
} (${
|
|
process.platform
|
|
})`
|
|
}
|
|
}, {
|
|
other (key) {
|
|
return key.match(AUTH_REGEX) || key.match(SCOPE_REGISTRY_REGEX)
|
|
}
|
|
})
|
|
|
|
module.exports = config
|
|
function config (opts) {
|
|
opts = opts || {}
|
|
return RegFetchConfig(opts, opts.config)
|
|
}
|