Replace centos 7 with alternative versions (#543)

replace centos 7 with almalinux 8, add almalinux 9, centos stream 9, fedora stable, rawhide

Fixes #527

---------

Signed-off-by: Jonathan Wright <jonathan@almalinux.org>
Signed-off-by: Madelyn Olson <madelyneolson@gmail.com>
Co-authored-by: Madelyn Olson <madelyneolson@gmail.com>
Signed-off-by: Ping Xie <pingxie@google.com>
This commit is contained in:
Jonathan Wright 2024-05-24 18:08:51 -05:00 committed by Ping Xie
parent 5ab3d1b981
commit 7cb3426a4b
2 changed files with 101 additions and 32 deletions

View File

@ -72,13 +72,13 @@ jobs:
- name: make - name: make
run: make SERVER_CFLAGS='-Werror' MALLOC=libc run: make SERVER_CFLAGS='-Werror' MALLOC=libc
build-centos7-jemalloc: build-almalinux8-jemalloc:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: centos:7 container: almalinux:8
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: make - name: make
run: | run: |
yum -y install gcc make dnf -y install epel-release gcc make procps-ng which
make SERVER_CFLAGS='-Werror' make -j SERVER_CFLAGS='-Werror'

View File

@ -11,7 +11,7 @@ on:
inputs: inputs:
skipjobs: skipjobs:
description: 'jobs to skip (delete the ones you wanna keep, do not leave empty)' description: 'jobs to skip (delete the ones you wanna keep, do not leave empty)'
default: 'valgrind,sanitizer,tls,freebsd,macos,alpine,32bit,iothreads,ubuntu,centos,malloc,specific,fortify,reply-schema' default: 'valgrind,sanitizer,tls,freebsd,macos,alpine,32bit,iothreads,ubuntu,rpm-distros,malloc,specific,fortify,reply-schema'
skiptests: skiptests:
description: 'tests to skip (delete the ones you wanna keep, do not leave empty)' description: 'tests to skip (delete the ones you wanna keep, do not leave empty)'
default: 'redis,modules,sentinel,cluster,unittest' default: 'redis,modules,sentinel,cluster,unittest'
@ -655,13 +655,34 @@ jobs:
if: true && !contains(github.event.inputs.skiptests, 'unittest') if: true && !contains(github.event.inputs.skiptests, 'unittest')
run: ./src/valkey-server test all --accurate run: ./src/valkey-server test all --accurate
test-centos7-jemalloc: test-rpm-distros-jemalloc:
runs-on: ubuntu-latest
if: | if: |
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) && (github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) &&
!contains(github.event.inputs.skipjobs, 'centos') !contains(github.event.inputs.skipjobs, 'rpm-distros')
container: centos:7 strategy:
fail-fast: false
matrix:
include:
- name: test-almalinux8-jemalloc
container: almalinux:8
install_epel: true
- name: test-almalinux9-jemalloc
container: almalinux:8
install_epel: true
- name: test-centosstream9-jemalloc
container: quay.io/centos/centos:stream9
install_epel: true
- name: test-fedoralatest-jemalloc
container: fedora:latest
- name: test-fedorarawhide-jemalloc
container: fedora:rawhide
name: ${{ matrix.name }}
runs-on: ubuntu-latest
container: ${{ matrix.container }}
timeout-minutes: 14400 timeout-minutes: 14400
steps: steps:
- name: prep - name: prep
if: github.event_name == 'workflow_dispatch' if: github.event_name == 'workflow_dispatch'
@ -676,12 +697,15 @@ jobs:
with: with:
repository: ${{ env.GITHUB_REPOSITORY }} repository: ${{ env.GITHUB_REPOSITORY }}
ref: ${{ env.GITHUB_HEAD_REF }} ref: ${{ env.GITHUB_HEAD_REF }}
- name: Install EPEL
if: matrix.install_epel
run: dnf -y install epel-release
- name: make - name: make
run: | run: |
yum -y install gcc make dnf -y install gcc make procps-ng which /usr/bin/kill
make SERVER_CFLAGS='-Werror' make -j SERVER_CFLAGS='-Werror'
- name: testprep - name: testprep
run: yum -y install which tcl tclx run: dnf -y install tcl tcltls
- name: test - name: test
if: true && !contains(github.event.inputs.skiptests, 'redis') if: true && !contains(github.event.inputs.skiptests, 'redis')
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}} run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
@ -695,13 +719,34 @@ jobs:
if: true && !contains(github.event.inputs.skiptests, 'cluster') if: true && !contains(github.event.inputs.skiptests, 'cluster')
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}} run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
test-centos7-tls-module: test-rpm-distros-tls-module:
runs-on: ubuntu-latest
if: | if: |
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) && (github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) &&
!contains(github.event.inputs.skipjobs, 'tls') !contains(github.event.inputs.skipjobs, 'tls')
container: centos:7 strategy:
fail-fast: false
matrix:
include:
- name: test-almalinux8-tls-module
container: almalinux:8
install_epel: true
- name: test-almalinux9-tls-module
container: almalinux:8
install_epel: true
- name: test-centosstream9-tls-module
container: quay.io/centos/centos:stream9
install_epel: true
- name: test-fedoralatest-tls-module
container: fedora:latest
- name: test-fedorarawhide-tls-module
container: fedora:rawhide
name: ${{ matrix.name }}
runs-on: ubuntu-latest
container: ${{ matrix.container }}
timeout-minutes: 14400 timeout-minutes: 14400
steps: steps:
- name: prep - name: prep
if: github.event_name == 'workflow_dispatch' if: github.event_name == 'workflow_dispatch'
@ -716,14 +761,16 @@ jobs:
with: with:
repository: ${{ env.GITHUB_REPOSITORY }} repository: ${{ env.GITHUB_REPOSITORY }}
ref: ${{ env.GITHUB_HEAD_REF }} ref: ${{ env.GITHUB_HEAD_REF }}
- name: Install EPEL
if: matrix.install_epel
run: dnf -y install epel-release
- name: make - name: make
run: | run: |
yum -y install centos-release-scl epel-release dnf -y install make gcc openssl-devel openssl procps-ng which /usr/bin/kill
yum -y install devtoolset-7 openssl-devel openssl make -j BUILD_TLS=module SERVER_CFLAGS='-Werror'
scl enable devtoolset-7 "make BUILD_TLS=module SERVER_CFLAGS='-Werror'"
- name: testprep - name: testprep
run: | run: |
yum -y install tcl tcltls tclx dnf -y install tcl tcltls
./utils/gen-test-certs.sh ./utils/gen-test-certs.sh
- name: test - name: test
if: true && !contains(github.event.inputs.skiptests, 'redis') if: true && !contains(github.event.inputs.skiptests, 'redis')
@ -742,13 +789,34 @@ jobs:
run: | run: |
./runtest-cluster --tls-module ${{github.event.inputs.cluster_test_args}} ./runtest-cluster --tls-module ${{github.event.inputs.cluster_test_args}}
test-centos7-tls-module-no-tls: test-rpm-distros-tls-module-no-tls:
runs-on: ubuntu-latest
if: | if: |
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) && (github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'valkey-io/valkey')) &&
!contains(github.event.inputs.skipjobs, 'tls') !contains(github.event.inputs.skipjobs, 'tls')
container: centos:7 strategy:
fail-fast: false
matrix:
include:
- name: test-almalinux8-tls-module-no-tls
container: almalinux:8
install_epel: true
- name: test-almalinux9-tls-module-no-tls
container: almalinux:8
install_epel: true
- name: test-centosstream9-tls-module-no-tls
container: quay.io/centos/centos:stream9
install_epel: true
- name: test-fedoralatest-tls-module-no-tls
container: fedora:latest
- name: test-fedorarawhide-tls-module-no-tls
container: fedora:rawhide
name: ${{ matrix.name }}
runs-on: ubuntu-latest
container: ${{ matrix.container }}
timeout-minutes: 14400 timeout-minutes: 14400
steps: steps:
- name: prep - name: prep
if: github.event_name == 'workflow_dispatch' if: github.event_name == 'workflow_dispatch'
@ -763,14 +831,16 @@ jobs:
with: with:
repository: ${{ env.GITHUB_REPOSITORY }} repository: ${{ env.GITHUB_REPOSITORY }}
ref: ${{ env.GITHUB_HEAD_REF }} ref: ${{ env.GITHUB_HEAD_REF }}
- name: Install EPEL
if: matrix.install_epel
run: dnf -y install epel-release
- name: make - name: make
run: | run: |
yum -y install centos-release-scl epel-release dnf -y install make gcc openssl-devel openssl procps-ng which /usr/bin/kill
yum -y install devtoolset-7 openssl-devel openssl make -j BUILD_TLS=module SERVER_CFLAGS='-Werror'
scl enable devtoolset-7 "make BUILD_TLS=module SERVER_CFLAGS='-Werror'"
- name: testprep - name: testprep
run: | run: |
yum -y install tcl tcltls tclx dnf -y install tcl tcltls
./utils/gen-test-certs.sh ./utils/gen-test-certs.sh
- name: test - name: test
if: true && !contains(github.event.inputs.skiptests, 'redis') if: true && !contains(github.event.inputs.skiptests, 'redis')
@ -1084,4 +1154,3 @@ jobs:
path: "./utils/req-res-validator/requirements.txt" path: "./utils/req-res-validator/requirements.txt"
- name: validator - name: validator
run: ./utils/req-res-log-validator.py --verbose --fail-missing-reply-schemas ${{ (!contains(github.event.inputs.skiptests, 'redis') && !contains(github.event.inputs.skiptests, 'module') && !contains(github.event.inputs.sentinel, 'redis') && !contains(github.event.inputs.skiptests, 'cluster')) && github.event.inputs.test_args == '' && github.event.inputs.cluster_test_args == '' && '--fail-commands-not-all-hit' || '' }} run: ./utils/req-res-log-validator.py --verbose --fail-missing-reply-schemas ${{ (!contains(github.event.inputs.skiptests, 'redis') && !contains(github.event.inputs.skiptests, 'module') && !contains(github.event.inputs.sentinel, 'redis') && !contains(github.event.inputs.skiptests, 'cluster')) && github.event.inputs.test_args == '' && github.event.inputs.cluster_test_args == '' && '--fail-commands-not-all-hit' || '' }}