1212 DEBIAN_FRONTEND : noninteractive
1313 CMAKE_GENERATOR : Ninja
1414 DEFAULT_CXX_STANDARD : 20
15- DEFAULT_LLVM_VERSION : 16
15+ DEFAULT_LLVM_VERSION : 17
1616 DEFAULT_GCC_VERSION : 12
1717
1818concurrency :
@@ -21,12 +21,12 @@ concurrency:
2121
2222jobs :
2323 build_and_test :
24- runs-on : ubuntu-22.04
24+ runs-on : ${{ github.repository_owner == 'intel' && 'intel-' || '' }} ubuntu-22.04
2525 strategy :
2626 fail-fast : false
2727 matrix :
2828 compiler : [clang, gcc]
29- version : [12, 13, 14, 15, 16]
29+ version : [12, 13, 14, 15, 16, 17 ]
3030 cxx_standard : [20]
3131 stdlib : [libstdc++, libc++]
3232 build_type : [Debug]
3535 cc : " clang"
3636 cxx : " clang++"
3737 cxx_flags : " -stdlib=libstdc++"
38+ - version : 17
39+ compiler : clang
40+ install : wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 17
41+ toolchain_root : " /usr/lib/llvm-17"
42+ - version : 17
43+ compiler : clang
44+ stdlib : libc++
45+ install : wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 17 && sudo apt install -y libc++-17-dev libc++abi-17-dev
46+ cxx_flags : " -stdlib=libc++"
3847 - version : 16
3948 compiler : clang
4049 install : wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh 16
7786 cxx : " g++-12"
7887 cxx_flags : " "
7988 exclude :
89+ - compiler : gcc
90+ version : 17
8091 - compiler : gcc
8192 version : 16
8293 - compiler : gcc
@@ -112,19 +123,19 @@ jobs:
112123 run : ctest -j $(nproc) -C ${{matrix.build_type}}
113124
114125 quality_checks_pass :
115- runs-on : ubuntu-22.04
126+ runs-on : ${{ github.repository_owner == 'intel' && 'intel-' || '' }} ubuntu-22.04
116127 steps :
117128 - uses : actions/checkout@v4
118129
119130 - name : Install build tools
120131 run : |
121132 wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh ${{env.DEFAULT_LLVM_VERSION}}
122- sudo apt install -y ninja-build clang-tidy-${{env.DEFAULT_LLVM_VERSION}} clang-format-${{env.DEFAULT_LLVM_VERSION}}
133+ sudo apt install -y python3-pip ninja-build clang-tidy-${{env.DEFAULT_LLVM_VERSION}} clang-format-${{env.DEFAULT_LLVM_VERSION}}
123134
124135 - name : Install cmake-format
125136 run : |
126- pip3 install --upgrade pip
127- pip3 install pyyaml cmake-format
137+ sudo pip3 install --upgrade pip
138+ sudo pip3 install pyyaml cmake-format
128139
129140 - name : Configure CMake
130141 env :
@@ -136,7 +147,7 @@ jobs:
136147 run : cmake --build ${{github.workspace}}/build -t quality
137148
138149 sanitize :
139- runs-on : ubuntu-22.04
150+ runs-on : ${{ github.repository_owner == 'intel' && 'intel-' || '' }} ubuntu-22.04
140151 strategy :
141152 fail-fast : false
142153 matrix :
@@ -161,7 +172,7 @@ jobs:
161172 run : cmake --build ${{github.workspace}}/build -t unit_tests
162173
163174 valgrind :
164- runs-on : ubuntu-22.04
175+ runs-on : ${{ github.repository_owner == 'intel' && 'intel-' || '' }} ubuntu-22.04
165176 steps :
166177 - uses : actions/checkout@v4
167178
@@ -211,8 +222,15 @@ jobs:
211222 test $FAILSIZE = "0"
212223
213224 merge_ok :
214- runs-on : ubuntu-22.04
225+ runs-on : ${{ github.repository_owner == 'intel' && 'intel-' || '' }} ubuntu-22.04
215226 needs : [build_and_test, quality_checks_pass, sanitize, valgrind]
227+ if : ${{ always() }}
216228 steps :
217229 - name : Enable merge
218- run : echo "OK to merge!"
230+ if : >-
231+ ${{
232+ contains(needs.*.result, 'failure')
233+ || contains(needs.*.result, 'cancelled')
234+ || contains(needs.*.result, 'skipped')
235+ }}
236+ run : exit 1
0 commit comments