Esempio n. 1
0
 }).then((pkg) => {
   return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'fromDir'}, (tmpDir) => {
     const target = path.join(tmpDir, 'package.tgz')
     return pack.packDirectory(pkg, arg, target).then(() => {
       return upload(arg, pkg, false, target)
     })
   })
 }).then(() => {
Esempio n. 2
0
 }).then((pkg) => {
   return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'fromDir'}, (tmpDir) => {
     const target = path.join(tmpDir, 'package.tgz')
     return pack.packDirectory(pkg, arg, target, null, true)
       .tap((c) => { contents = c })
       .then((c) => !npm.config.get('json') && pack.logContents(c))
       .then(() => upload(arg, pkg, false, target))
   })
 }).then(() => {
Esempio n. 3
0
function packDirectory (mani, dir, target) {
  deprCheck(mani)
  return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'packing'}, (tmp) => {
    const tmpTarget = path.join(tmp, path.basename(target))
    return tarPack(tmpTarget, dir, mani).then(() => {
      return move(tmpTarget, target, {Promise: BB, fs})
    }).then(() => target)
  })
}
Esempio n. 4
0
 }).then((pkg) => {
   return cacache.tmp.withTmp(npm.tmp, {
     tmpPrefix: 'pacote-packing'
   }, (tmp) => {
     const tmpTar = path.join(tmp, 'package.tgz')
     return packDirectory(manifest, dir, tmpTar).then(() => {
       return pipe(fs.createReadStream(tmpTar), stream)
     })
   })
 }).catch((err) => stream.emit('error', err))
Esempio n. 5
0
function publishFromPackage (arg) {
  return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'fromPackage'}, (tmp) => {
    const extracted = path.join(tmp, 'package')
    const target = path.join(tmp, 'package.json')
    const opts = pacoteOpts()
    return pacote.tarball.toFile(arg, target, opts)
    .then(() => pacote.extract(arg, extracted, opts))
    .then(() => readJson(path.join(extracted, 'package.json')))
    .tap((pkg) => upload(arg, pkg, false, target))
  })
}
Esempio n. 6
0
File: git.js Progetto: Frrank1/node
function withTmp (opts, cb) {
  if (opts.cache) {
    // cacache has a special facility for working in a tmp dir
    return cacache.tmp.withTmp(opts.cache, {tmpPrefix: 'git-clone'}, cb)
  } else {
    const tmpDir = path.join(osenv.tmpdir(), 'pacote-git-tmp')
    const tmpName = uniqueFilename(tmpDir, 'git-clone')
    const tmp = mkdirp(tmpName).then(() => tmpName).disposer(rimraf)
    return BB.using(tmp, cb)
  }
}
Esempio n. 7
0
  }).then((pkg) => {
    return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'packing'}, (tmp) => {
      const tmpTarget = path.join(tmp, path.basename(target))

      const tarOpt = {
        file: tmpTarget,
        cwd: dir,
        prefix: 'package/',
        portable: true,
        gzip: true
      }

      return packlist({ path: dir })
        .then((files) => tar.create(tarOpt, files))
        .then(() => move(tmpTarget, target, {Promise: BB, fs}))
        .then(() => lifecycle(pkg, 'postpack', dir))
        .then(() => target)
    })
  })
Esempio n. 8
0
function publishFromPackage (arg) {
  return cacache.tmp.withTmp(npm.tmp, {tmpPrefix: 'fromPackage'}, (tmp) => {
    const extracted = path.join(tmp, 'package')
    const target = path.join(tmp, 'package.json')
    return cache.add(arg).then((info) => {
      const opts = pacoteOpts({integrity: info.integrity})
      return BB.all([
        pipe(
          cacache.get.stream.byDigest(opts.cache, info.integrity),
          writeStreamAtomic(target)
        ).then(() => target),
        pacote.extract(arg, extracted, opts).then(() => {
          return readJson(path.join(extracted, 'package.json'))
        })
      ]).spread((target, pkg) => {
        return upload(arg, pkg, false, target)
      })
    })
  })
}