From 03608291a67757d743bcde26a43bc677567b0862 Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Mon, 14 Nov 2016 03:45:52 +0800 Subject: [PATCH] [caching] `nvm install`: Do not remove src dir after compilation succeeds This will help speed up the installation time for the non-first time installation, especially can speed up the build time and test time on Travis-CI as we'll cache .cache dir. --- nvm.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/nvm.sh b/nvm.sh index 1a6798f..090043e 100755 --- a/nvm.sh +++ b/nvm.sh @@ -1871,11 +1871,11 @@ nvm_install_source() { local TMPDIR local VERSION_PATH - # shellcheck disable=SC2086 + TARBALL="$(nvm_download_artifact "${FLAVOR}" source "${TYPE}" "${VERSION}" | command tail -1)" && \ + [ -f "${TARBALL}" ] && \ + TMPDIR="$(dirname "${TARBALL}")/files" && \ if ( - TARBALL="$(nvm_download_artifact "${FLAVOR}" source "${TYPE}" "${VERSION}" | command tail -1)" && \ - [ -f "${TARBALL}" ] && \ - TMPDIR="$(dirname "${TARBALL}")/files" && \ + # shellcheck disable=SC2086 command mkdir -p "${TMPDIR}" && \ command "${tar}" -x${tar_compression_flag}f "${TARBALL}" -C "${TMPDIR}" --strip-components 1 && \ VERSION_PATH="$(nvm_version_path "${PREFIXED_VERSION}")" && \ @@ -1883,8 +1883,7 @@ nvm_install_source() { ./configure --prefix="${VERSION_PATH}" $ADDITIONAL_PARAMETERS && \ $make -j "${NVM_MAKE_JOBS}" ${MAKE_CXX-} && \ command rm -f "${VERSION_PATH}" 2>/dev/null && \ - $make -j "${NVM_MAKE_JOBS}" ${MAKE_CXX-} install && \ - command rm -rf "${TMPDIR}" + $make -j "${NVM_MAKE_JOBS}" ${MAKE_CXX-} install ); then if ! nvm_has "npm" ; then nvm_echo 'Installing npm...' @@ -1904,6 +1903,7 @@ nvm_install_source() { fi nvm_err "nvm: install ${VERSION} failed!" + command rm -rf "${TMPDIR-}" return 1 }