git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] ci: fix Python dependency on Ubuntu 24.04

From
Justin Tobler <jltobler@gmail.com>
Date
May 6, 2024, 12:55 UTC
Message-ID
<c2dyqdqge3ypc7syissjm3mh6fqftojvincu4qizkuravc5ll6@bjgjlcas7n4k>
In-Reply-To
<cb8cefc20f373a3516695e7cbee975132553ea95.1714973381.git.ps@pks.im>
On 24/05/06 07:35AM, Patrick Steinhardt wrote:
> Newer versions of Ubuntu have dropped Python 2 starting with Ubuntu
> 23.04. By default though, our CI setups will try to use that Python
> version on all Ubuntu-based jobs except for the "linux-gcc" one.

Naive question, why were the "linux-gcc" jobs the only ones using Python 3?

Show 41 quoted lines
> 
> We didn't notice this issue due to two reasons:
> 
>   - The "ubuntu:latest" tag always points to the latest LTS release.
>     Until a few weeks ago this was Ubuntu 22.04, which still had Python
>     2.
> 
>   - Our Docker-based CI jobs had their own script to install
>     dependencies until 9cdeb34b96 (ci: merge scripts which install
>     dependencies, 2024-04-12), where we didn't even try to install
>     Python at all for many of them.
> 
> Since the CI refactorings have originally been implemented, Ubuntu
> 24.04 was released, and it being an LTS versions means that the "latest"
> tag now points to that Python-2-less version. Consequently, those jobs
> that use "ubuntu:latest" broke.
> 
> Address this by using Python 2 on Ubuntu 20.04, only, whereas we use
> Python 3 on all other Ubuntu jobs. Eventually, we should think about
> dropping support for Python 2 completely.
> 
> Reported-by: Justin Tobler <jtobler@gmail.com>
> Signed-off-by: Patrick Steinhardt <ps@pks.im>
> ---
> 
> Note: this topic depends on ps/ci-test-with-jgit at 70b81fbf3c (t0612:
> add tests to exercise Git/JGit reftable compatibility, 2024-04-12).
> 
>  ci/lib.sh | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/ci/lib.sh b/ci/lib.sh
> index 473a2d0348..273f3540a6 100755
> --- a/ci/lib.sh
> +++ b/ci/lib.sh
> @@ -325,9 +325,13 @@ ubuntu-*)
>  		break
>  	fi
>  
> -	PYTHON_PACKAGE=python2
> -	if test "$jobname" = linux-gcc

With this change, "linux-gcc" jobs using ubuntu 20.04 will now use Python 2. Is that what we want?

-Justin
Show 15 quoted lines
> +	# Python 2 is end of life, and Ubuntu 23.04 and newer don't actually
> +	# have it anymore. We thus only test with Python 2 on older LTS
> +	# releases.
> +	if "$distro" = "ubuntu-20.04"
>  	then
> +		PYTHON_PACKAGE=python2
> +	else
>  		PYTHON_PACKAGE=python3
>  	fi
>  	MAKEFLAGS="$MAKEFLAGS PYTHON_PATH=/usr/bin/$PYTHON_PACKAGE"
> 
> base-commit: b6db6b1598946fbf777e55ff0d187b11ff3bd21f
> -- 
> 2.45.0
> 
Previous: Patrick SteinhardtNext: Patrick Steinhardt
Message 2 of 7 in “ci: fix Python dependency on Ubuntu 24.04”
  1. ci: fix Python dependency on Ubuntu 24.04Patrick Steinhardt, May 6, 2024
  2. Justin ToblerMay 6, 2024
  3. Patrick SteinhardtMay 6, 2024
  4. Junio C HamanoMay 6, 2024
  5. Justin ToblerMay 6, 2024
  6. Junio C HamanoMay 6, 2024
  7. Patrick SteinhardtMay 7, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.