Skip to content

Commit

Permalink
fix: fix tarball packing in paths with spaces (#825) (#826)
Browse files Browse the repository at this point in the history
Co-authored-by: Tim Perry <pimterry@gmail.com>
  • Loading branch information
mdonnalley and pimterry committed Feb 9, 2022
1 parent 6985fbb commit 9e12c70
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
4 changes: 2 additions & 2 deletions src/tarballs/build.ts
Expand Up @@ -17,7 +17,7 @@ const pack = async (from: string, to: string) => {
log(`packing tarball from ${qq.prettifyPaths(from)} to ${qq.prettifyPaths(to)}`)
await (to.endsWith('gz') ?
qq.x('tar', ['czf', to, path.basename(from)]) :
qq.x(`tar c ${path.basename(from)} | xz > ${to}`))
qq.x(`tar c "${path.basename(from)}" | xz > "${to}"`))
qq.cd(prevCwd)
}

Expand All @@ -39,7 +39,7 @@ export async function build(c: BuildConfig, options: {
tarball = path.basename(tarball)
tarball = qq.join([c.workspace(), tarball])
qq.cd(c.workspace())
await qq.x(`tar -xzf ${tarball}`)
await qq.x(`tar -xzf "${tarball}"`)
// eslint-disable-next-line no-await-in-loop
for (const f of await qq.ls('package', {fullpath: true})) await qq.mv(f, '.')
await qq.rm('package', tarball, 'bin/run.cmd')
Expand Down
6 changes: 3 additions & 3 deletions src/tarballs/node.ts
Expand Up @@ -47,7 +47,7 @@ export async function fetchNodeBinary({nodeVersion, output, platform, arch, tmp}
const basedir = path.dirname(tarball)
await qq.mkdirp(basedir)
await qq.download(url, tarball)
await qq.x(`grep ${path.basename(tarball)} ${shasums} | shasum -a 256 -c -`, {cwd: basedir})
await qq.x(`grep "${path.basename(tarball)}" "${shasums}" | shasum -a 256 -c -`, {cwd: basedir})
}

const extract = async () => {
Expand All @@ -58,11 +58,11 @@ export async function fetchNodeBinary({nodeVersion, output, platform, arch, tmp}
await qq.mkdirp(path.dirname(cache))
if (platform === 'win32') {
qq.pushd(nodeTmp)
await qq.x(`7z x -bd -y ${tarball} > /dev/null`)
await qq.x(`7z x -bd -y "${tarball}" > /dev/null`)
await qq.mv([nodeBase, 'node.exe'], cache)
qq.popd()
} else {
await qq.x(`tar -C ${tmp}/node -xJf ${tarball}`)
await qq.x(`tar -C "${tmp}/node" -xJf "${tarball}"`)
await qq.mv([nodeTmp, nodeBase, 'bin/node'], cache)
}
}
Expand Down

0 comments on commit 9e12c70

Please sign in to comment.