Commit 008bddaa authored by Robin Newhouse's avatar Robin Newhouse Committed by Andrew Hutchings

GitLab CI Upgrade CentOS 8 to CentOS 9 build

> After May 31, 2024, CentOS Stream 8 will be archived and no further
updates will be provided. [1]

CentOS Stream 8 is now EOL and should be updated to using CentOS Stream
9 for compatibility testing in GitLab CI.

[1] https://blog.centos.org/2023/04/end-dates-are-coming-for-centos-stream-8-and-centos-linux-7/
https://www.centos.org/centos-linux-eol/

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services.
parent e7c2e25b
...@@ -44,7 +44,7 @@ variables: ...@@ -44,7 +44,7 @@ variables:
# Major version dictates which branches share the same ccache. E.g. 10.6-abc # Major version dictates which branches share the same ccache. E.g. 10.6-abc
# and 10.6-xyz will have the same cache. # and 10.6-xyz will have the same cache.
MARIADB_MAJOR_VERSION: "10.5" MARIADB_MAJOR_VERSION: "10.5"
# NOTE! Currently ccache is only used on the Centos8 build. As each job has # NOTE! Currently ccache is only used on the Centos 9 build. As each job has
# sufficiently different environments they are unable to benefit from each # sufficiently different environments they are unable to benefit from each
# other's ccaches. As each build generates about 1 GB of ccache, having # other's ccaches. As each build generates about 1 GB of ccache, having
# multiple caches would quickly consume all free storage on Gitlab-CI and # multiple caches would quickly consume all free storage on Gitlab-CI and
...@@ -53,7 +53,7 @@ variables: ...@@ -53,7 +53,7 @@ variables:
# cache:policy are not flexible enough to have a system where the cache is # cache:policy are not flexible enough to have a system where the cache is
# uploaded only once a week and not on every build. Having ccache on at least # uploaded only once a week and not on every build. Having ccache on at least
# one build still helps ensure that ccache compatibility is at least tested # one build still helps ensure that ccache compatibility is at least tested
# and if the Centos 8 build is always significantly faster than all other # and if the Centos 9 build is always significantly faster than all other
# builds (e.g. on self-hosted Gitlab instances) then users would at least be # builds (e.g. on self-hosted Gitlab instances) then users would at least be
# able to discover it. # able to discover it.
# #
...@@ -209,26 +209,20 @@ fedora-sanitizer: ...@@ -209,26 +209,20 @@ fedora-sanitizer:
matrix: matrix:
- SANITIZER: [-DWITH_ASAN=YES, -DWITH_TSAN=YES, -DWITH_UBSAN=YES] - SANITIZER: [-DWITH_ASAN=YES, -DWITH_TSAN=YES, -DWITH_UBSAN=YES]
centos8: centos9:
stage: build stage: build
image: quay.io/centos/centos:stream8 # CentOS 8 is deprecated, use this Stream8 instead image: quay.io/centos/centos:stream9 # CentOS 9 is deprecated, use this Stream9 instead
variables: variables:
GIT_STRATEGY: fetch GIT_STRATEGY: fetch
GIT_SUBMODULE_STRATEGY: normal GIT_SUBMODULE_STRATEGY: normal
script: script:
- yum install -y yum-utils rpm-build openssl-devel pcre2-devel - yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
- yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm - yum install -y yum-utils rpm-build openssl-devel libeatmydata ccache
# dnf --enablerepo=powertools install Judy-devel #--> not found # Install missing dependencies
- dnf config-manager --set-enabled powertools - yum install -y https://mirror.stream.centos.org/9-stream/CRB/x86_64/os/Packages/Judy-devel-1.0.5-28.el9.x86_64.rpm
# Error: - yum install -y https://mirror.stream.centos.org/9-stream/CRB/x86_64/os/Packages/bison-devel-3.7.4-5.el9.x86_64.rpm
# Problem: conflicting requests - yum install -y https://mirror.stream.centos.org/9-stream/CRB/x86_64/os/Packages/multilib-rpm-config-1-19.el9.noarch.rpm
# - package Judy-devel-1.0.5-18.module_el8.3.0+757+d382997d.i686 is filtered out by modular filtering # Configure ccache
# - package Judy-devel-1.0.5-18.module_el8.3.0+757+d382997d.x86_64 is filtered out by modular filtering
# Solution: install Judy-devel directly from downloaded rpm file:
- yum install -y http://vault.centos.org/centos/8/PowerTools/x86_64/os/Packages/Judy-devel-1.0.5-18.module_el8.3.0+757+d382997d.x86_64.rpm
# Use eatmydata to speed up build
- yum install -y https://github.com/stewartsmith/libeatmydata/releases/download/v129/libeatmydata-129-1.fc33.x86_64.rpm
- yum install -y ccache # From EPEL
- source /etc/profile.d/ccache.sh - source /etc/profile.d/ccache.sh
- export CCACHE_DIR="$(pwd)/.ccache"; ccache --zero-stats - export CCACHE_DIR="$(pwd)/.ccache"; ccache --zero-stats
# This repository does not have any .spec files, so install dependencies based on CentOS spec file # This repository does not have any .spec files, so install dependencies based on CentOS spec file
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment