@@ -4,8 +4,7 @@ name: Build and test (OS matrix)
4
4
on : [push, pull_request, workflow_dispatch]
5
5
6
6
jobs :
7
-
8
- build-and-test-ubuntu :
7
+ validation-linux :
9
8
strategy :
10
9
fail-fast : false # don't cancel other jobs in the matrix if one fails
11
10
matrix :
22
21
- runner : ubuntu-20.04
23
22
container : ubuntu:23.04
24
23
os_name : ubuntu-23.04
24
+ - runner : ubuntu-20.04
25
+ container : redhat/ubi8:8.8
26
+ os_name : redhat-8.8
27
+ - runner : ubuntu-20.04
28
+ container : redhat/ubi9:9.2
29
+ os_name : redhat-9.2
25
30
26
31
runs-on : ${{ matrix.runner }}
27
32
@@ -36,14 +41,33 @@ jobs:
36
41
steps :
37
42
- uses : actions/checkout@v3
38
43
39
- - name : Fetch package lists
40
- run : apt-get -y update
41
-
42
- - name : Install dependencies
44
+ - name : Fetch package lists and install dependencies (Ubuntu)
45
+ if : contains(matrix.os_name, 'ubuntu-')
43
46
run : |
47
+ apt-get -y update
44
48
DEBIAN_FRONTEND=noninteractive apt-get -y --allow-unauthenticated --allow-downgrades --allow-remove-essential --allow-change-held-packages \
45
49
install make gcc libevent-dev libmsgpack-dev curl uuid nodejs python3 python3-pip
46
50
51
+ # (using `rm` + `ln` since using `alternatives` doesn't work on both UBI 8 and UBI 9)
52
+ - name : Install dependencies (Red Hat)
53
+ if : contains(matrix.os_name, 'redhat-')
54
+ run : |
55
+ yum install -y --allowerasing make cmake gcc gcc-c++ libevent-devel git curl uuid nodejs python3.11 python3.11-pip
56
+ rm -f /usr/bin/python3 /usr/bin/pip3
57
+ ln -s $(which python3.11) /usr/bin/python3
58
+ ln -s $(which pip3.11) /usr/bin/pip3
59
+
60
+ - name : Install msgpack-c (Red Hat)
61
+ if : contains(matrix.os_name, 'redhat-')
62
+ run : |
63
+ cd /tmp
64
+ curl -sLO https://github.com/msgpack/msgpack-c/releases/download/c-6.0.0/msgpack-c-6.0.0.tar.gz
65
+ tar -xzf msgpack-c-6.0.0.tar.gz
66
+ cd msgpack-c-6.0.0
67
+ cmake -DMSGPACK_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib64 .
68
+ make
69
+ make install
70
+
47
71
- name : Fix pip3 on Ubuntu 23.04
48
72
if : matrix.os_name == 'ubuntu-23.04'
49
73
run : rm -f /usr/lib/python$(python3 --version | cut -d ' ' -f 2 | cut -d '.' -f 1,2)/EXTERNALLY-MANAGED
73
97
path : webdis.log
74
98
75
99
76
-
77
- build-and-test-macos :
100
+ validation-macos :
78
101
strategy :
79
102
fail-fast : false
80
103
matrix :
0 commit comments