From: Jiang Xin <worldhello.net@gmail.com>
To: "Git List" <git@vger.kernel.org>,
"Junio C Hamano" <gitster@pobox.com>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
"Johannes Schindelin" <johannes.schindelin@gmx.de>
Cc: Jiang Xin <zhiyou.jx@alibaba-inc.com>,
Jiang Xin <worldhello.net@gmail.com>
Subject: [PATCH v3 0/4] Fix broken CI on newer github-actions runner image
Date: Thu, 24 Nov 2022 23:39:30 +0800 [thread overview]
Message-ID: <20221124153934.12470-1-worldhello.net@gmail.com> (raw)
In-Reply-To: <20221124090545.4790-1-worldhello.net@gmail.com>
From: Jiang Xin <zhiyou.jx@alibaba-inc.com>
# Changes since v2
1. Split patch 2/3 of v2 into two patches:
patch 2/4: ci: show error message of "p4 -V"
patch 3/4: ci: p4 on Linux has the same version as on macOS
2. In patch 3/4, remove variable "LINUX_P4_VERSION" and use
a fixed version "21.2" for p4 on both Linux and macOS.
3. For patch 4/4, follow Ævar's suggestion to make the code simpler.
# Range-diff v2..v3
1: 79c851529c ! 1: 1c0d639487 github-actions: run gcc-8 on ubuntu-20.04 image
@@ Commit message
In this way, we can change the "ubuntu-latest" runner image to any
version such as "ubuntu-22.04" to test CI behavior in advance.
+ Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com>
## .github/workflows/main.yml ##
2: faa5076fe0 ! 2: fed880b8bd ci: upgrade version of p4 to 21.2
@@ Metadata
Author: Jiang Xin <zhiyou.jx@alibaba-inc.com>
## Commit message ##
- ci: upgrade version of p4 to 21.2
+ ci: show error message of "p4 -V"
- There would be a segmentation fault when running p4 v16.2 on ubuntu
- 22.04 which is the latest version of ubuntu runner image for github
- actions.
+ When installing p4 as a dependency, we used to pipe output of "p4 -V" to
+ validate the installation, but this would hide potential errors of p4.
+ E.g.: A broken p4 installation fails to run.
- By checking each version from [1], p4d version 21.1 and above can work
- properly on ubuntu 22.04. But version 22.x will break some p4 test
- cases. So p4 version 21.x is exactly the version we can use.
-
- In addition to upgrade p4 from version 16.2 to 21.2, also add some
- instructions to show errors of command "p4 -V", so we can see why the
- command output doesn't match.
-
- [1]: https://cdist2.perforce.com/perforce/
+ Add some instructions to show errors of command "p4 -V", so we can see
+ why the command output doesn't match.
+ Reviewed-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com>
## ci/install-dependencies.sh ##
@@ ci/install-dependencies.sh: esac
else
echo >&2 "WARNING: perforce wasn't installed, see above for clues why"
fi
-
- ## ci/lib.sh ##
-@@ ci/lib.sh: ubuntu)
- # were recorded in the Homebrew database upon creating the OS X
- # image.
- # Keep that in mind when you encounter a broken OS X build!
-- export LINUX_P4_VERSION="16.2"
-+ export LINUX_P4_VERSION="21.2"
- export LINUX_GIT_LFS_VERSION="1.5.2"
-
- P4_PATH="$HOME/custom/p4"
-: ---------- > 3: da2f516fc9 ci: p4 on Linux has the same version as on macOS
3: f080b2fdcd ! 4: bd1850cc93 ci: install python on ubuntu
@@ Commit message
Since the "ubuntu-latest" runner image has a higher version, so its safe
to use "python2" or "python3" package name.
+ Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com>
## ci/install-dependencies.sh ##
@@ ci/install-dependencies.sh: case "$runs_on_os" in
## ci/lib.sh ##
@@ ci/lib.sh: ubuntu)
- if [ "$jobname" = linux-gcc ]
+ break
+ fi
+
+- if [ "$jobname" = linux-gcc ]
++ PYTHON_PACKAGE=python2
++ if test "$jobname" = linux-gcc
then
- MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/python3"
+- MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/python3"
+- else
+- MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/python2"
+ PYTHON_PACKAGE=python3
- else
- MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/python2"
-+ PYTHON_PACKAGE=python2
fi
++ MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/$PYTHON_PACKAGE"
export GIT_TEST_HTTPD=true
+
--
Jiang Xin (4):
github-actions: run gcc-8 on ubuntu-20.04 image
ci: show error message of "p4 -V"
ci: p4 on Linux has the same version as on macOS
ci: install python on ubuntu
.github/workflows/main.yml | 16 ++++++++++++----
ci/install-dependencies.sh | 16 ++++++++--------
ci/lib.sh | 15 +++++++--------
3 files changed, 27 insertions(+), 20 deletions(-)
--
2.39.0.rc0
next prev parent reply other threads:[~2022-11-24 15:39 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-23 15:02 [PATCH 0/2] Use fixed github-actions runner image Jiang Xin
2022-11-23 15:02 ` [PATCH 1/2] github-actions: run gcc-8 on ubuntu-20.04 image Jiang Xin
2022-11-24 8:11 ` Johannes Schindelin
2022-11-23 15:02 ` [PATCH 2/2] ci: upgrade version of p4 Jiang Xin
2022-11-24 8:16 ` Johannes Schindelin
2022-11-24 8:41 ` Johannes Schindelin
2022-11-24 8:54 ` Johannes Schindelin
2022-11-24 9:17 ` Jiang Xin
2022-11-24 9:41 ` Johannes Schindelin
2022-11-24 9:15 ` Jiang Xin
2022-11-24 8:18 ` [PATCH 0/2] Use fixed github-actions runner image Johannes Schindelin
2022-11-24 9:05 ` [PATCH v2 0/3] Fix broken CI on newer " Jiang Xin
2022-11-24 9:44 ` Johannes Schindelin
2022-11-24 10:48 ` Johannes Schindelin
2022-11-24 11:23 ` Jiang Xin
2022-11-24 12:28 ` python 2 EOL (was: [PATCH v2 0/3] Fix broken CI on newer github-actions runner image) Ævar Arnfjörð Bjarmason
2022-11-25 7:11 ` python 2 EOL Junio C Hamano
2022-11-24 15:39 ` Jiang Xin [this message]
2022-11-25 9:59 ` [PATCH v4 0/4] Fix broken CI on newer github-actions runner image Jiang Xin
2022-11-25 9:59 ` [PATCH v4 1/4] github-actions: run gcc-8 on ubuntu-20.04 image Jiang Xin
2022-11-27 0:24 ` Junio C Hamano
2022-11-25 9:59 ` [PATCH v4 2/4] ci: remove the pipe after "p4 -V" to cache errors Jiang Xin
2022-11-27 0:24 ` Junio C Hamano
2022-11-27 9:14 ` Jiang Xin
2022-11-25 9:59 ` [PATCH v4 3/4] ci: p4 on Linux has the same version as on macOS Jiang Xin
2022-11-27 0:28 ` Junio C Hamano
2022-11-25 9:59 ` [PATCH v4 4/4] ci: install python on ubuntu Jiang Xin
2022-11-27 0:30 ` Junio C Hamano
2022-11-27 9:01 ` Jiang Xin
2022-11-27 23:36 ` Junio C Hamano
2022-11-24 15:39 ` [PATCH v3 1/4] github-actions: run gcc-8 on ubuntu-20.04 image Jiang Xin
2022-11-24 16:29 ` Ævar Arnfjörð Bjarmason
2022-11-24 15:39 ` [PATCH v3 2/4] ci: show error message of "p4 -V" Jiang Xin
2022-11-24 16:10 ` Ævar Arnfjörð Bjarmason
2022-11-25 4:48 ` Junio C Hamano
2022-11-24 15:39 ` [PATCH v3 3/4] ci: p4 on Linux has the same version as on macOS Jiang Xin
2022-11-24 15:39 ` [PATCH v3 4/4] ci: install python on ubuntu Jiang Xin
2022-11-24 9:05 ` [PATCH v2 1/3] github-actions: run gcc-8 on ubuntu-20.04 image Jiang Xin
2022-11-24 10:46 ` Ævar Arnfjörð Bjarmason
2022-11-25 7:21 ` Junio C Hamano
2022-11-24 9:05 ` [PATCH v2 2/3] ci: upgrade version of p4 to 21.2 Jiang Xin
2022-11-24 10:55 ` Ævar Arnfjörð Bjarmason
2022-11-24 12:56 ` Jiang Xin
2022-11-24 9:05 ` [PATCH v2 3/3] ci: install python on ubuntu Jiang Xin
2022-11-24 11:02 ` Ævar Arnfjörð Bjarmason
2022-11-24 11:37 ` Jiang Xin
2022-11-24 12:23 ` Ævar Arnfjörð Bjarmason
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=20221124153934.12470-1-worldhello.net@gmail.com \
--to=worldhello.net@gmail.com \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=johannes.schindelin@gmx.de \
--cc=zhiyou.jx@alibaba-inc.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.