mirror of
https://github.com/shimataro/ssh-key-action.git
synced 2025-06-19 22:52:10 +10:00
29 lines
822 B
JavaScript
29 lines
822 B
JavaScript
'use strict'
|
|
|
|
const fetchPackument = require('./lib/fetch').packument
|
|
const optCheck = require('./lib/util/opt-check')
|
|
const pinflight = require('promise-inflight')
|
|
const npa = require('npm-package-arg')
|
|
|
|
module.exports = packument
|
|
function packument (spec, opts) {
|
|
opts = optCheck(opts)
|
|
spec = npa(spec, opts.where)
|
|
|
|
const label = [
|
|
spec.name,
|
|
spec.saveSpec || spec.fetchSpec,
|
|
spec.type,
|
|
opts.cache,
|
|
opts.registry,
|
|
opts.scope
|
|
].join(':')
|
|
const startTime = Date.now()
|
|
return pinflight(label, () => {
|
|
return fetchPackument(spec, opts)
|
|
}).then(p => {
|
|
const elapsedTime = Date.now() - startTime
|
|
opts.log.silly('pacote', `${spec.registry ? 'registry' : spec.type} packument for ${spec.name}@${spec.saveSpec || spec.fetchSpec} fetched in ${elapsedTime}ms`)
|
|
return p
|
|
})
|
|
}
|