@@ -19,39 +19,40 @@ jobs:
1919 fail-fast : false
2020 matrix :
2121 build :
22- - os : ubuntu-22.04
23- cc : gcc
24- cxx : g++
25- build-type : Release
26- run-lint : false
27- run-test : true
28- run-test-asan-address : false
29- run-test-asan-undefined : false
30- run-test-asan-thread : false
31- - os : ubuntu-22.04
32- cc : clang
33- cxx : clang++
34- build-type : Release
35- run-lint : false
36- run-test : true
37- run-test-asan-address : false
38- run-test-asan-undefined : false
39- run-test-asan-thread : false
40- - os : ubuntu-22.04-arm
41- cc : gcc
42- cxx : g++
43- build-type : Release
44- # No clang-format for ARM.
45- run-lint : false
46- run-test : true
47- run-test-asan-address : false
48- run-test-asan-undefined : false
49- run-test-asan-thread : false
22+ # - os: ubuntu-22.04
23+ # cc: gcc
24+ # cxx: g++
25+ # build-type: Release
26+ # run-lint: false
27+ # run-test: true
28+ # run-test-asan-address: false
29+ # run-test-asan-undefined: false
30+ # run-test-asan-thread: false
31+ # - os: ubuntu-22.04
32+ # cc: clang
33+ # cxx: clang++
34+ # build-type: Release
35+ # run-lint: false
36+ # run-test: true
37+ # run-test-asan-address: false
38+ # run-test-asan-undefined: false
39+ # run-test-asan-thread: false
40+ # - os: ubuntu-22.04-arm
41+ # cc: gcc
42+ # cxx: g++
43+ # build-type: Release
44+ # # No clang-format for ARM.
45+ # run-lint: false
46+ # run-test: true
47+ # run-test-asan-address: false
48+ # run-test-asan-undefined: false
49+ # run-test-asan-thread: false
5050 - os : ubuntu-24.04
5151 cc : gcc
5252 cxx : g++
5353 build-type : Release
5454 pip-break-system-packages : true
55+ run-clang-tidy : true
5556 run-lint : false
5657 run-test : true
5758 run-test-asan-address : false
@@ -71,85 +72,85 @@ jobs:
7172 run-test-asan-thread : false
7273 # Compile with all Meson option flags enabled once with gcc in Debug mode.
7374 meson_args : ' -Dms_log_trace=true -Dms_log_file_line=true -Dms_rtc_logger_rtp=true -Dms_disable_liburing=true -Dms_sctp_stack=true'
74- - os : ubuntu-24.04
75- cc : clang
76- cxx : clang++
77- build-type : Release
78- pip-break-system-packages : true
79- run-lint : false
80- run-test : true
81- run-test-asan-address : true
82- run-test-asan-undefined : true
83- run-test-asan-thread : true
84- # Let's just compile with all Meson option flags enabled once with clang.
85- meson_args : ' -Dms_log_trace=true -Dms_log_file_line=true -Dms_rtc_logger_rtp=true -Dms_disable_liburing=true -Dms_sctp_stack=true'
86- - os : ubuntu-24.04-arm
87- cc : gcc
88- cxx : g++
89- build-type : Release
90- pip-break-system-packages : true
91- # No clang-format for ARM.
92- run-lint : false
93- run-test : true
94- run-test-asan-address : false
95- run-test-asan-undefined : false
96- run-test-asan-thread : false
97- - os : ubuntu-24.04-arm
98- cc : clang
99- cxx : clang++
100- build-type : Release
101- pip-break-system-packages : true
102- # No clang-format for ARM.
103- run-lint : false
104- run-test : true
105- run-test-asan-address : false
106- run-test-asan-undefined : false
107- run-test-asan-thread : false
108- - os : macos-14
109- cc : clang
110- cxx : clang++
111- build-type : Release
112- pip-break-system-packages : true
113- run-lint : false
114- run-test : true
115- run-test-asan-address : false
116- run-test-asan-undefined : false
117- run-test-asan-thread : false
118- - os : macos-15
119- cc : clang
120- cxx : clang++
121- build-type : Release
122- pip-break-system-packages : true
123- # Run lint for the latest macos.
124- run-lint : true
125- run-test : true
126- run-test-asan-address : false
127- run-test-asan-undefined : false
128- run-test-asan-thread : false
129- - os : windows-2022
130- cc : cl
131- cxx : cl
132- build-type : Release
133- # No clang-format for Windows.
134- run-lint : false
135- # Maybe some day we fix this.
136- run-test : false
137- # Address Sanitizer does not work on Windows.
138- run-test-asan-address : false
139- run-test-asan-undefined : false
140- run-test-asan-thread : false
141- - os : windows-2025
142- cc : cl
143- cxx : cl
144- build-type : Release
145- # No clang-format for Windows.
146- run-lint : false
147- # Maybe some day we fix this.
148- run-test : false
149- # Address Sanitizer does not work on Windows.
150- run-test-asan-address : false
151- run-test-asan-undefined : false
152- run-test-asan-thread : false
75+ # - os: ubuntu-24.04
76+ # cc: clang
77+ # cxx: clang++
78+ # build-type: Release
79+ # pip-break-system-packages: true
80+ # run-lint: false
81+ # run-test: true
82+ # run-test-asan-address: true
83+ # run-test-asan-undefined: true
84+ # run-test-asan-thread: true
85+ # # Let's just compile with all Meson option flags enabled once with clang.
86+ # meson_args: '-Dms_log_trace=true -Dms_log_file_line=true -Dms_rtc_logger_rtp=true -Dms_disable_liburing=true -Dms_sctp_stack=true'
87+ # - os: ubuntu-24.04-arm
88+ # cc: gcc
89+ # cxx: g++
90+ # build-type: Release
91+ # pip-break-system-packages: true
92+ # # No clang-format for ARM.
93+ # run-lint: false
94+ # run-test: true
95+ # run-test-asan-address: false
96+ # run-test-asan-undefined: false
97+ # run-test-asan-thread: false
98+ # - os: ubuntu-24.04-arm
99+ # cc: clang
100+ # cxx: clang++
101+ # build-type: Release
102+ # pip-break-system-packages: true
103+ # # No clang-format for ARM.
104+ # run-lint: false
105+ # run-test: true
106+ # run-test-asan-address: false
107+ # run-test-asan-undefined: false
108+ # run-test-asan-thread: false
109+ # - os: macos-14
110+ # cc: clang
111+ # cxx: clang++
112+ # build-type: Release
113+ # pip-break-system-packages: true
114+ # run-lint: false
115+ # run-test: true
116+ # run-test-asan-address: false
117+ # run-test-asan-undefined: false
118+ # run-test-asan-thread: false
119+ # - os: macos-15
120+ # cc: clang
121+ # cxx: clang++
122+ # build-type: Release
123+ # pip-break-system-packages: true
124+ # # Run lint for the latest macos.
125+ # run-lint: true
126+ # run-test: true
127+ # run-test-asan-address: false
128+ # run-test-asan-undefined: false
129+ # run-test-asan-thread: false
130+ # - os: windows-2022
131+ # cc: cl
132+ # cxx: cl
133+ # build-type: Release
134+ # # No clang-format for Windows.
135+ # run-lint: false
136+ # # Maybe some day we fix this.
137+ # run-test: false
138+ # # Address Sanitizer does not work on Windows.
139+ # run-test-asan-address: false
140+ # run-test-asan-undefined: false
141+ # run-test-asan-thread: false
142+ # - os: windows-2025
143+ # cc: cl
144+ # cxx: cl
145+ # build-type: Release
146+ # # No clang-format for Windows.
147+ # run-lint: false
148+ # # Maybe some day we fix this.
149+ # run-test: false
150+ # # Address Sanitizer does not work on Windows.
151+ # run-test-asan-address: false
152+ # run-test-asan-undefined: false
153+ # run-test-asan-thread: false
153154 # A single Node.js version should be fine for C++.
154155 node :
155156 - 24
@@ -217,6 +218,19 @@ jobs:
217218 - name : invoke -r worker mediasoup-worker
218219 run : invoke -r worker mediasoup-worker
219220
221+ - if : ${{ matrix.build.run-clang-tidy }}
222+ uses : ZedThree/clang-tidy-review@v0.22.0
223+ id : review
224+
225+ # Uploads an artefact containing clang_fixes.json
226+ - if : ${{ matrix.build.run-clang-tidy }}
227+ uses : ZedThree/clang-tidy-review/upload@v0.22.0
228+ id : upload-review
229+
230+ # If there are any comments, fail the check
231+ - if : ${{ matrix.build.run-clang-tidy && steps.review.outputs.total_comments > 0 }}
232+ run : exit 1
233+
220234 - if : ${{ matrix.build.run-test }}
221235 name : invoke -r worker test
222236 run : invoke -r worker test
0 commit comments