Git development
 help / color / mirror / Atom feed
From: Patrick Steinhardt <ps@pks.im>
To: Harald Nordgren via GitGitGadget <gitgitgadget@gmail.com>
Cc: git@vger.kernel.org, Harald Nordgren <haraldnordgren@gmail.com>
Subject: Re: [PATCH v2] ci: fail the build if perforce, git-lfs, or JGit fail to install
Date: Mon, 26 Oct 2026 08:13:32 +0100	[thread overview]
Message-ID: <at79nEHLDrcoCgn_@pks.im> (raw)
In-Reply-To: <pull.2403.v2.git.git.1792774249888.gitgitgadget@gmail.com>

On Fri, Oct 23, 2026 at 04:50:49PM +0000, Harald Nordgren via GitGitGadget wrote:
>     Changes in v2:
>     
>      * Perforce, git-lfs, and JGit install failures now fail the build
>        instead of being silently swallowed. Removed the presence checks and
>        warnings at the end of the script, dead code once install failure is
>        fatal.

Thanks for adapting!

> diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
> index d57dce5663..dad35db78b 100755
> --- a/ci/install-dependencies.sh
> +++ b/ci/install-dependencies.sh
> @@ -95,21 +95,33 @@ ubuntu-*|i386/ubuntu-*|debian-*)
>  			"$P4WHENCE/bin.linux26x86_64/p4d" \
>  			"$P4WHENCE/bin.linux26x86_64/p4" &&
>  		chmod a+x "$CUSTOM_PATH/p4d" "$CUSTOM_PATH/p4" || {
> -			rm -f "$CUSTOM_PATH/p4"
> -			rm -f "$CUSTOM_PATH/p4d"
> +			echo >&2 "error: could not install perforce"
> +			exit 1
>  		}
> +		echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)"
> +		p4d -V
> +		echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)"
> +		p4 -V

Okay. I was wondering whether we'd even see these binaries or whether
we'd have to `"${CUSTOM_PATH}"/p4d -V` instead. But `$CUSTOM_PATH` gets
set up in "ci/lib.sh" already, so there's no need for that.

>  		wget --quiet \
>  		     "$LFSWHENCE/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" &&
>  		tar -xzf "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" \
>  			-C "$CUSTOM_PATH" --strip-components=1 \
>  			"git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs" &&
> -		rm "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" ||
> -		rm -f "$CUSTOM_PATH/git-lfs"
> +		rm "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz" || {
> +			echo >&2 "error: could not install git-lfs"
> +			exit 1
> +		}

This could all be a bit less convoluted if we had `set -e` in
"ci/lib.sh". But that certainly is outside the scope of this patch
series, so meanwhile this looks good to me.

> @@ -121,9 +133,16 @@ macos-*)
>  
>  	mkdir -p "$CUSTOM_PATH"
>  	wget -q "$P4WHENCE/bin.macosx12arm64/helix-core-server.tgz" &&
> -	tar -xf helix-core-server.tgz -C "$CUSTOM_PATH" p4 p4d &&
> +	tar -xf helix-core-server.tgz -C "$CUSTOM_PATH" p4 p4d || {
> +		echo >&2 "error: could not install perforce"
> +		exit 1
> +	}
>  	sudo xattr -d com.apple.quarantine "$CUSTOM_PATH/p4" "$CUSTOM_PATH/p4d" 2>/dev/null || true

This line is a bit curious, it makes me wonder whether we want to
tighten it as well now. Any reason why we wouldn't?

>  	rm helix-core-server.tgz

Nit: this is inconsistent with git-lfs, where we also have the call to
rm as part of the condition chain.

Thanks!

Patrick

  parent reply	other threads:[~2026-10-26  7:13 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-12 14:38 [PATCH] ci: only warn about perforce/git-lfs/JGit on platforms that need them Harald Nordgren via GitGitGadget
2026-09-25 19:02 ` Junio C Hamano
2026-09-28 12:31 ` Patrick Steinhardt
2026-09-28 16:13   ` Harald Nordgren
2026-10-23 16:50 ` [PATCH v2] ci: fail the build if perforce, git-lfs, or JGit fail to install Harald Nordgren via GitGitGadget
2026-10-23 21:48   ` Junio C Hamano
2026-10-23 22:59     ` Harald Nordgren
2026-10-23 23:06       ` Junio C Hamano
2026-10-26  7:13   ` Patrick Steinhardt [this message]
2026-10-26  7:38     ` Harald Nordgren
2026-10-26  7:41       ` Harald Nordgren
2026-10-26  8:07         ` Patrick Steinhardt
2026-10-26  8:08           ` Harald Nordgren
2026-10-26  8:06       ` Patrick Steinhardt
2026-10-26  8:13         ` Harald Nordgren
2026-10-26  8:58           ` Patrick Steinhardt
2026-10-26  9:54 ` [PATCH v3 0/2] ci: fail the build if perforce, git-lfs " Harald Nordgren via GitGitGadget
2026-10-26  9:54   ` [PATCH v3 1/2] ci: drop quarantine removal for macos perforce binaries Harald Nordgren via GitGitGadget
2026-10-26 11:08     ` Patrick Steinhardt
2026-10-26 12:18       ` Harald Nordgren
2026-10-26 12:49       ` Harald Nordgren
2026-10-26 16:54         ` Junio C Hamano
2026-10-26  9:54   ` [PATCH v3 2/2] ci: fail the build if perforce, git-lfs, or JGit fail to install Harald Nordgren via GitGitGadget
2026-10-26 11:08     ` Patrick Steinhardt
2026-10-26 12:17       ` Harald Nordgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=at79nEHLDrcoCgn_@pks.im \
    --to=ps@pks.im \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=haraldnordgren@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox