From b8c0bffc413e8a34e646d12bbd94fec9cfd00c17 Mon Sep 17 00:00:00 2001 From: Aaron Date: Fri, 4 Sep 2026 10:33:06 +0300 Subject: [PATCH] fix(install): make binary install atomic Use a temp directory under ~/.linkerd2 so mv to the install destination stays on the same filesystem. Fixes linkerd/website#90 Signed-off-by: amarkdotdev Signed-off-by: Aaron --- run.linkerd.io/public/install | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/run.linkerd.io/public/install b/run.linkerd.io/public/install index dd2cd53206..6f70bc8100 100755 --- a/run.linkerd.io/public/install +++ b/run.linkerd.io/public/install @@ -96,7 +96,12 @@ case $OS in esac OS=$(echo "$OS" | tr '[:upper:]' '[:lower:]') -tmpdir=$(mktemp -d /tmp/linkerd2.XXXXXX) +mkdir -p "${INSTALLROOT}" +for d in "${INSTALLROOT}"/linkerd2.*; do + [ -d "$d" ] || continue + rm -rf "$d" +done +tmpdir=$(mktemp -d "${INSTALLROOT}/linkerd2.XXXXXX") srcfile="linkerd2-cli-${LINKERD2_VERSION}-${OS}" if [ -n "${cli_arch}" ]; then srcfile="${srcfile}-${cli_arch}"