Skip to content

Commit 6c72a27

Browse files
authored
CI-unixish-docker.yml: perform make and CMake builds in parallel (cppcheck-opensource#4415)
* CI-unixish-docker.yml: perform make and CMake builds in parallel * CI-unixish-docker.yml: cleanups * CI-unixish-docker.yml: only install necessary packages
1 parent eab6066 commit 6c72a27

1 file changed

Lines changed: 31 additions & 6 deletions

File tree

.github/workflows/CI-unixish-docker.yml

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ permissions:
88
contents: read
99

1010
jobs:
11-
build:
11+
build_cmake:
1212

1313
strategy:
1414
matrix:
@@ -26,15 +26,13 @@ jobs:
2626
- name: Install missing software on CentOS 7
2727
if: matrix.image == 'centos:7'
2828
run: |
29-
yum install -y cmake gcc-c++ make which python3
30-
yum install -y pcre-devel
29+
yum install -y cmake gcc-c++ make pcre-devel
3130
3231
- name: Install missing software on ubuntu
3332
if: matrix.image != 'centos:7'
3433
run: |
3534
apt-get update
36-
apt-get install -y cmake g++ make python3 libxml2-utils
37-
apt-get install -y libpcre3-dev
35+
apt-get install -y cmake g++ make libxml2-utils libpcre3-dev
3836
3937
# required so a default Qt installation is configured
4038
- name: Install missing software on ubuntu 18.04
@@ -61,9 +59,34 @@ jobs:
6159
cmake --build . --target check -- -j$(nproc)
6260
cd ..
6361
62+
build_make:
63+
64+
strategy:
65+
matrix:
66+
image: ["centos:7", "ubuntu:14.04", "ubuntu:16.04", "ubuntu:18.04"]
67+
fail-fast: false # Prefer quick result
68+
69+
runs-on: ubuntu-22.04
70+
71+
container:
72+
image: ${{ matrix.image }}
73+
74+
steps:
75+
- uses: actions/checkout@v2
76+
77+
- name: Install missing software on CentOS 7
78+
if: matrix.image == 'centos:7'
79+
run: |
80+
yum install -y gcc-c++ make which python3 pcre-devel
81+
82+
- name: Install missing software on ubuntu
83+
if: matrix.image != 'centos:7'
84+
run: |
85+
apt-get update
86+
apt-get install -y g++ make python3 libxml2-utils libpcre3-dev
87+
6488
- name: Build cppcheck
6589
run: |
66-
make clean
6790
make -j$(nproc) HAVE_RULES=yes
6891
6992
- name: Build test
@@ -74,10 +97,12 @@ jobs:
7497
run: |
7598
make -j$(nproc) check HAVE_RULES=yes
7699
100+
# requires python3
77101
- name: Run extra tests
78102
run: |
79103
tools/generate_and_run_more_tests.sh
80104
105+
# requires which
81106
- name: Validate
82107
run: |
83108
make -j$(nproc) checkCWEEntries validateXML

0 commit comments

Comments
 (0)