@@ -2,11 +2,9 @@ name: C/C++ CI
2
2
3
3
on :
4
4
push :
5
- branches : [ master, ci, V_9_0 ]
6
- paths : [ '**.c', '**.h', '**.m4', '**.sh', '.github/**', 'Makefile.in', 'configure.ac' ]
5
+ paths : [ '**.c', '**.h', '**.m4', '**.sh', '.github/**', '**/Makefile.in', 'configure.ac' ]
7
6
pull_request :
8
- branches : [ master ]
9
- paths : [ '**.c', '**.h', '**.m4', '**.sh', '.github/**', 'Makefile.in', 'configure.ac' ]
7
+ paths : [ '**.c', '**.h', '**.m4', '**.sh', '.github/**', '**/Makefile.in', 'configure.ac' ]
10
8
11
9
jobs :
12
10
ci :
@@ -15,104 +13,109 @@ jobs:
15
13
fail-fast : false
16
14
matrix :
17
15
# First we test all OSes in the default configuration.
18
- os : [ubuntu-20.04, ubuntu-22.04, macos-11, macos-12, windows-2019, windows-2022]
19
- configs : [default]
16
+ target : [ubuntu-20.04, ubuntu-22.04, macos-11, macos-12, windows-2019, windows-2022]
17
+ config : [default]
20
18
# Then we include any extra configs we want to test for specific VMs.
21
19
# Valgrind slows things down quite a bit, so start them first.
22
20
include :
23
- - { os: windows-2019, configs: cygwin-release }
24
- - { os: windows-2022, configs: cygwin-release }
25
- - { os: ubuntu-20.04, configs: valgrind-1 }
26
- - { os: ubuntu-20.04, configs: valgrind-2 }
27
- - { os: ubuntu-20.04, configs: valgrind-3 }
28
- - { os: ubuntu-20.04, configs: valgrind-4 }
29
- - { os: ubuntu-20.04, configs: valgrind-unit }
30
- - { os: ubuntu-20.04, configs: c89 }
31
- - { os: ubuntu-20.04, configs: clang-6.0 }
32
- - { os: ubuntu-20.04, configs: clang-8 }
33
- - { os: ubuntu-20.04, configs: clang-9 }
34
- - { os: ubuntu-20.04, configs: clang-10 }
35
- - { os: ubuntu-20.04, configs: clang-11 }
36
- - { os: ubuntu-20.04, configs: clang-12-Werror }
37
- - { os: ubuntu-20.04, configs: clang-sanitize-address }
38
- - { os: ubuntu-20.04, configs: clang-sanitize-undefined }
39
- - { os: ubuntu-20.04, configs: gcc-sanitize-address }
40
- - { os: ubuntu-20.04, configs: gcc-sanitize-undefined }
41
- - { os: ubuntu-20.04, configs: gcc-7 }
42
- - { os: ubuntu-20.04, configs: gcc-8 }
43
- - { os: ubuntu-20.04, configs: gcc-10 }
44
- - { os: ubuntu-20.04, configs: gcc-11-Werror }
45
- - { os: ubuntu-20.04, configs: pam }
46
- - { os: ubuntu-20.04, configs: kitchensink }
47
- - { os: ubuntu-20.04, configs: hardenedmalloc }
48
- - { os: ubuntu-20.04, configs: tcmalloc }
49
- - { os: ubuntu-20.04, configs: musl }
50
- - { os: ubuntu-latest, configs: libressl-master }
51
- - { os: ubuntu-latest, configs: libressl-2.2.9 }
52
- - { os: ubuntu-latest, configs: libressl-2.8.3 }
53
- - { os: ubuntu-latest, configs: libressl-3.0.2 }
54
- - { os: ubuntu-latest, configs: libressl-3.2.6 }
55
- - { os: ubuntu-latest, configs: libressl-3.3.6 }
56
- - { os: ubuntu-latest, configs: libressl-3.4.3 }
57
- - { os: ubuntu-latest, configs: libressl-3.5.3 }
58
- - { os: ubuntu-latest, configs: openssl-master }
59
- - { os: ubuntu-latest, configs: openssl-noec }
60
- - { os: ubuntu-latest, configs: openssl-1.0.1 }
61
- - { os: ubuntu-latest, configs: openssl-1.0.1u }
62
- - { os: ubuntu-latest, configs: openssl-1.0.2u }
63
- - { os: ubuntu-latest, configs: openssl-1.1.0h }
64
- - { os: ubuntu-latest, configs: openssl-1.1.1 }
65
- - { os: ubuntu-latest, configs: openssl-1.1.1k }
66
- - { os: ubuntu-latest, configs: openssl-1.1.1n }
67
- - { os: ubuntu-latest, configs: openssl-1.1.1p }
68
- - { os: ubuntu-latest, configs: openssl-3.0.0 }
69
- - { os: ubuntu-latest, configs: openssl-3.0.5 }
70
- - { os: ubuntu-latest, configs: openssl-1.1.1_stable } # stable branch
71
- - { os: ubuntu-latest, configs: openssl-3.0 } # stable branch
72
- - { os: ubuntu-22.04, configs: pam }
73
- - { os: ubuntu-22.04, configs: krb5 }
74
- - { os: ubuntu-22.04, configs: heimdal }
75
- - { os: ubuntu-22.04, configs: libedit }
76
- - { os: ubuntu-22.04, configs: sk }
77
- - { os: ubuntu-22.04, configs: selinux }
78
- - { os: ubuntu-22.04, configs: kitchensink }
79
- - { os: ubuntu-22.04, configs: without-openssl }
80
- - { os: macos-11, configs: pam }
81
- - { os: macos-12, configs: pam }
82
- runs-on : ${{ matrix.os }}
21
+ - { target: windows-2019, config: cygwin-release }
22
+ - { target: windows-2022, config: cygwin-release }
23
+ - { target: ubuntu-20.04, config: valgrind-1 }
24
+ - { target: ubuntu-20.04, config: valgrind-2 }
25
+ - { target: ubuntu-20.04, config: valgrind-3 }
26
+ - { target: ubuntu-20.04, config: valgrind-4 }
27
+ - { target: ubuntu-20.04, config: valgrind-5 }
28
+ - { target: ubuntu-20.04, config: valgrind-unit }
29
+ - { target: ubuntu-20.04, config: c89 }
30
+ - { target: ubuntu-20.04, config: clang-6.0 }
31
+ - { target: ubuntu-20.04, config: clang-8 }
32
+ - { target: ubuntu-20.04, config: clang-9 }
33
+ - { target: ubuntu-20.04, config: clang-10 }
34
+ - { target: ubuntu-20.04, config: clang-11 }
35
+ - { target: ubuntu-20.04, config: clang-12-Werror }
36
+ - { target: ubuntu-20.04, config: clang-sanitize-address }
37
+ - { target: ubuntu-20.04, config: clang-sanitize-undefined }
38
+ - { target: ubuntu-20.04, config: gcc-sanitize-address }
39
+ - { target: ubuntu-20.04, config: gcc-sanitize-undefined }
40
+ - { target: ubuntu-20.04, config: gcc-7 }
41
+ - { target: ubuntu-20.04, config: gcc-8 }
42
+ - { target: ubuntu-20.04, config: gcc-10 }
43
+ - { target: ubuntu-20.04, config: gcc-11-Werror }
44
+ - { target: ubuntu-20.04, config: pam }
45
+ - { target: ubuntu-20.04, config: kitchensink }
46
+ - { target: ubuntu-20.04, config: hardenedmalloc }
47
+ - { target: ubuntu-20.04, config: tcmalloc }
48
+ - { target: ubuntu-20.04, config: musl }
49
+ - { target: ubuntu-latest, config: libressl-master }
50
+ - { target: ubuntu-latest, config: libressl-2.2.9 }
51
+ - { target: ubuntu-latest, config: libressl-2.8.3 }
52
+ - { target: ubuntu-latest, config: libressl-3.0.2 }
53
+ - { target: ubuntu-latest, config: libressl-3.2.6 }
54
+ - { target: ubuntu-latest, config: libressl-3.3.6 }
55
+ - { target: ubuntu-latest, config: libressl-3.4.3 }
56
+ - { target: ubuntu-latest, config: libressl-3.5.3 }
57
+ - { target: ubuntu-latest, config: libressl-3.6.1 }
58
+ - { target: ubuntu-latest, config: libressl-3.7.0 }
59
+ - { target: ubuntu-latest, config: openssl-master }
60
+ - { target: ubuntu-latest, config: openssl-noec }
61
+ - { target: ubuntu-latest, config: openssl-1.0.1 }
62
+ - { target: ubuntu-latest, config: openssl-1.0.1u }
63
+ - { target: ubuntu-latest, config: openssl-1.0.2u }
64
+ - { target: ubuntu-latest, config: openssl-1.1.0h }
65
+ - { target: ubuntu-latest, config: openssl-1.1.1 }
66
+ - { target: ubuntu-latest, config: openssl-1.1.1k }
67
+ - { target: ubuntu-latest, config: openssl-1.1.1n }
68
+ - { target: ubuntu-latest, config: openssl-1.1.1q }
69
+ - { target: ubuntu-latest, config: openssl-1.1.1s }
70
+ - { target: ubuntu-latest, config: openssl-3.0.0 }
71
+ - { target: ubuntu-latest, config: openssl-3.0.5 }
72
+ - { target: ubuntu-latest, config: openssl-3.0.7 }
73
+ - { target: ubuntu-latest, config: openssl-1.1.1_stable }
74
+ - { target: ubuntu-latest, config: openssl-3.0 } # stable branch
75
+ - { target: ubuntu-22.04, config: pam }
76
+ - { target: ubuntu-22.04, config: krb5 }
77
+ - { target: ubuntu-22.04, config: heimdal }
78
+ - { target: ubuntu-22.04, config: libedit }
79
+ - { target: ubuntu-22.04, config: sk }
80
+ - { target: ubuntu-22.04, config: selinux }
81
+ - { target: ubuntu-22.04, config: kitchensink }
82
+ - { target: ubuntu-22.04, config: without-openssl }
83
+ - { target: macos-11, config: pam }
84
+ - { target: macos-12, config: pam }
85
+ runs-on : ${{ matrix.target }}
83
86
steps :
84
87
- name : set cygwin git params
85
- if : ${{ startsWith(matrix.os , 'windows') }}
88
+ if : ${{ startsWith(matrix.target , 'windows') }}
86
89
run : git config --global core.autocrlf input
87
90
- name : install cygwin
88
- if : ${{ startsWith(matrix.os , 'windows') }}
91
+ if : ${{ startsWith(matrix.target , 'windows') }}
89
92
uses : cygwin/cygwin-install-action@master
90
- - uses : actions/checkout@v2
93
+ - uses : actions/checkout@main
91
94
- name : setup CI system
92
- run : sh ./.github/setup_ci.sh ${{ matrix.configs }}
95
+ run : sh ./.github/setup_ci.sh ${{ matrix.config }}
93
96
- name : autoreconf
94
97
run : sh -c autoreconf
95
98
- name : configure
96
- run : sh ./.github/configure.sh ${{ matrix.configs }}
99
+ run : sh ./.github/configure.sh ${{ matrix.config }}
97
100
- name : save config
98
- uses : actions/upload-artifact@v2
101
+ uses : actions/upload-artifact@main
99
102
with :
100
- name : ${{ matrix.os }}-${{ matrix.configs }}-config
103
+ name : ${{ matrix.target }}-${{ matrix.config }}-config
101
104
path : config.h
102
105
- name : make clean
103
106
run : make clean
104
107
- name : make
105
108
run : make -j2
106
109
- name : make tests
107
- run : sh ./.github/run_test.sh ${{ matrix.configs }}
110
+ run : sh ./.github/run_test.sh ${{ matrix.config }}
108
111
env :
109
112
TEST_SSH_UNSAFE_PERMISSIONS : 1
110
113
TEST_SSH_HOSTBASED_AUTH : yes
111
114
- name : save logs
112
115
if : failure()
113
- uses : actions/upload-artifact@v2
116
+ uses : actions/upload-artifact@main
114
117
with :
115
- name : ${{ matrix.os }}-${{ matrix.configs }}-logs
118
+ name : ${{ matrix.target }}-${{ matrix.config }}-logs
116
119
path : |
117
120
config.h
118
121
config.log
0 commit comments