Use centos-9 to build the swt natives
Centos-8 is out of service and the container even does not build anymore therefore we can't get any updates.
This changes the build to use Centos 9 for building instead.
FYI @akurtakov @fredg02 @sravanlakkimsetti
I'll cancel the first build and trigger one with forced binary compilation so we can see everything works fine, this should then be merged as soon as the master is open for next release so we can get enough time to test. This will also be a prerequisite for GTK4+ support.
Test Results
486 files ±0 486 suites ±0 7m 21s :stopwatch: +9s 4 151 tests ±0 4 143 :white_check_mark: ±0 8 :zzz: ±0 0 :x: ±0 16 358 runs ±0 16 266 :white_check_mark: ±0 92 :zzz: ±0 0 :x: ±0
Results for commit e4cd3377. ± Comparison against base commit d200d94e.
:recycle: This comment has been updated with latest results.
All native builds are green
Very good. 👍 thanks 🙏
It seems EF plans to drop centos completely and instead offering ubuntu-lts as default runners:
https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/1623
I therefore wonder if we should do the same for the native builds instead of aim for centos-9 ... what would be Ubuntu 20.04.6 LTS as far as I can see.
My only concern with such plan is that Ubuntu used to patch gtk heavily thus compiling on it is a bit more risky to introduce binary incompatibilities. Can we already start switching jenkins verification builds to ubuntu-lts so we can move on with this one?
Another option would be using debian what is quite stable and the base for ubuntu under the hood.
The github actions already use (and compile) for "ubuntu-latest" what is https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md at the moment.
It seems EF plans to drop centos completely and instead offering ubuntu-lts as default runners:
https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/1623
I therefore wonder if we should do the same for the native builds instead of aim for centos-9 ... what would be Ubuntu 20.04.6 LTS as far as I can see.
FTR: You are free to make this decision independently of what we offer as default runners, since you can create and define custom docker images for your builds and tests.
Yes but basically many projects depend on SWT so if we require to use a (non standard) template this will impact many projects CI setups. So if we can just tell them to switch to a new (default) runner label that seems easy enough.
Another option would be using debian what is quite stable and the base for ubuntu under the hood.
Let's concentrate on the GTK 4 enablement. We have centos 9 already (even this PR) and it serves the purpose of providing initial builds. The problem is what to do with jenkins verification builds which are at centos 8 too. IMO we should be switching them to ubuntu-latest image (if available). As a next step going to Debian is probably good idea but I would rather have it later so a 100-steps task doesn't become 150-steps task now.
We have centos 9 already (even this PR) and it serves the purpose of providing initial builds.
The problem is that centos-9 kicks out a large range of distributions due to higher GLIBC version, so for me the first step looks like to upgrade our infra from centos-8 > whateverisnextminimum (and this is what this PR is actually aiming at).
The we can already use this (independent form GTK4) and then look what is required from whateverisnextminimum > GTK4, this will also decrease the diff between master + GTK4 branch.
I'll close this for now even though it proves we can switch it probably raises the barriers too much and as centos-9 is using rolling release we have not enough control over the impact to the overall community.
I therefore continuing first here:
- https://github.com/eclipse-platform/eclipse.platform.releng.aggregator/pull/2441
to establish a new stable baseline for GTK4