boostorg / core

Boost Core Utilities
132 stars 86 forks source link

Update GitHub Actions CI file #95

Closed sdarwin closed 2 years ago

sdarwin commented 2 years ago

The Ubuntu 16.04 environment is scheduled to be removed from GitHub Actions in September 2021. Migrate those jobs to Docker containers or Ubuntu 18.04.

pdimov commented 2 years ago

Do we need this container business at all? How about just switching the jobs to 18.04?

Lastique commented 2 years ago

Do we need this container business at all? How about just switching the jobs to 18.04?

There might be a reason to test older systems just to make sure low-level stuff like uncaught_exceptions.hpp works. It relies on cxxabi library which is not part of the compiler.

sdarwin commented 2 years ago

Do we need this container business at all? How about just switching the jobs to 18.04?

The oldest compilers in the list aren't available on 18.04. Switching to 18.04 would mean discontinuing a number of tests. Which could be an option.

pdimov commented 2 years ago

Looks like gcc-4.7, gcc-4.9, and clang-3.5 to clang-3.8 aren't available on 18.04.

sdarwin commented 2 years ago

Updated the GHA file, to address your concerns about cmake, git, and sudo. Have modified sudo and cmake. In terms of git, the "--jobs" flag wasn't available in git 2.7 which comes preinstalled on Ubuntu 16.04. So, the CI crashes using the preinstalled git. I believe the PPA is still a good choice. The git package is sufficiently distinct from C++ libraries being tested..

pdimov commented 2 years ago

Is pip not available from apt? Even if we don't do pip install cmake here, as one might want to test with the system version of cmake, libraries can still want to do that (pip install cmake), so it shouldn't hurt to have pip available.

Further, I would switch all the jobs that can use 18.04, to it, and forego the container there. (This includes gcc 4.8, 5, 6, clang 3.9 and above.)

sdarwin commented 2 years ago

Is pip not available from apt?

The earlier versions of this script installed pip from apt. The latest news is that pip has become unsupported and fails spectacularly on Ubuntu 16.04.

I would switch all the jobs that can use 18.04

alright, let's see.

pdimov commented 2 years ago

Here's the run where I've replaced 16.04 with 18.04 everywhere to test it: https://github.com/boostorg/core/actions/runs/1168195302

pdimov commented 2 years ago

It now occurs to me that I never tried to use ppa:ubuntu-toolchain-r/test. Maybe if that's added some of the failing compilers will work on 18.04.

sdarwin commented 2 years ago

Switched jobs to Ubuntu 18, rather than containers.

it shouldn't hurt to have pip available.

In that case, installing pip every time.

Lastique commented 2 years ago

I have committed an updated config file that incorporates most of this PR and some other changes. Thank you for the submission.