Patrick Steinhardt <ps@xxxxxx> writes: > I think the issue is where we put the resulting binaries: they get put > into "$HOME/path", but the problem is that "$HOME" is different between > "install-dependencies.sh" and "run-build-and-tests.sh" because the > latter is executed as unprivileged user. Yuck. Thanks for a clealy written explanation and the change. Will queue. > > Something like the below (untested) patch should fix this. > > Patrick > > [1]: https://gitlab.com/gitlab-org/git/-/jobs/9760840184#L4002 > [2]: https://github.com/git/git/actions/runs/14526556290/job/40759119217#step:8:1814 > [3]: https://github.com/git/git/actions/runs/14526556290/job/40759119217#step:5:2190 > > -- >8 -- > > Subject: [PATCH] ci: fix p4d executable not being found on GitHub Actions > > Our tests for git-p4(1) depend on the p4d(1) and p4(1) executables to > exist. As we require specific versions of those binaries which typically > aren't available on common distributions, we install them manually via > "ci/install-dependencies.sh". > > This script will put the binaries into "$CUSTOM_PATH", which gets > defined by "ci/lib.sh" -- if not explicitly overridden, its value will > be set to "$HOME/path". This causes issues though when running our tests > as unprivileged user, as we do both in GitLab CI and GitHub Actions, > because "$HOME" will be different when installing dependencies and when > running the tests. Consequently, the downloaded binaries will not be > found unless "$CUSTOM_PATH" is overridden to a common location. > > We already do this for GitLab CI, where it points to "/custom". Let's do > the same for GitHub Actions so that Perforce-based tests are executed > again. > > Signed-off-by: Patrick Steinhardt <ps@xxxxxx> > --- > .github/workflows/main.yml | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml > index 83ca8e4182b..412a9a5107b 100644 > --- a/.github/workflows/main.yml > +++ b/.github/workflows/main.yml > @@ -408,6 +408,7 @@ jobs: > jobname: ${{matrix.vector.jobname}} > CC: ${{matrix.vector.cc}} > CI_JOB_IMAGE: ${{matrix.vector.image}} > + CUSTOM_PATH: /custom > runs-on: ubuntu-latest > container: ${{matrix.vector.image}} > steps: