Skip to content

Commit dd11350

Browse files
committed
ci: workaround for nodejs version f*ck*p from github
1 parent c9ad60e commit dd11350

File tree

5 files changed

+230
-155
lines changed

5 files changed

+230
-155
lines changed

.github/reqs.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ function c4_install_test_requirements_ubuntu_impl()
163163
fi
164164

165165
if [ "$PIP_PKG" != "" ]; then
166+
sudo pip3 install --force-reinstall importlib_metadata
167+
sudo pip3 install --force-reinstall setuptools
166168
sudo pip3 install setuptools-rust
167169
sudo pip3 install --upgrade pip
168170
sudo pip3 install $PIP_PKG

.github/workflows/clang.yml

Lines changed: 91 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: clang
22

33
defaults:
4+
#if: "!contains(github.event.head_commit.message, 'skip ci')" # SKIP
45
run:
56
# Use a bash shell so we can use the same syntax for environment variable
67
# access regardless of the host operating system
@@ -31,20 +32,20 @@ jobs:
3132
continue-on-error: true
3233
if: always() # https://stackoverflow.com/questions/62045967/github-actions-is-there-a-way-to-continue-on-error-while-still-getting-correct
3334
runs-on: ubuntu-latest
34-
container: ghcr.io/biojppm/c4core/ubuntu18.04:latest # use the docker image
35+
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest # use the docker image
3536
strategy:
3637
fail-fast: false
3738
matrix:
3839
include:
39-
- {std: 20, cxx: "10" , bt: Debug , bitlinks: shared64 static32}
40-
- {std: 20, cxx: "10" , bt: Release, bitlinks: shared64 static32}
41-
- {std: 11, cxx: "6.0", bt: Debug , bitlinks: shared64 static32}
42-
- {std: 11, cxx: "6.0", bt: Release, bitlinks: shared64 static32}
43-
env: {STD: "${{matrix.std}}", CXX_: "clang++-${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
40+
- {std: 20, cxx: clang++-17 , bt: Debug , bitlinks: shared64 static32}
41+
- {std: 20, cxx: clang++-17 , bt: Release, bitlinks: shared64 static32}
42+
- {std: 11, cxx: clang++-9, bt: Debug , bitlinks: shared64 static32}
43+
- {std: 11, cxx: clang++-9, bt: Release, bitlinks: shared64 static32}
44+
env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
4445
steps:
45-
- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
46+
- {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
4647
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
47-
- run: c4core-install $CXX_
48+
- run: c4core-install ${{matrix.cxx}}
4849
- {name: show info, run: source .github/setenv.sh && c4_show_info}
4950
- name: shared64-configure---------------------------------------------------
5051
run: source .github/setenv.sh && c4_cfg_test shared64
@@ -67,25 +68,26 @@ jobs:
6768
- {name: shared32-run, run: source .github/setenv.sh && c4_run_test shared32}
6869
- {name: shared32-pack, run: source .github/setenv.sh && c4_package shared32}
6970

71+
#----------------------------------------------------------------------------
7072
clang_tabtokens:
7173
name: clang_tabtokens/${{matrix.cxx}}/c++${{matrix.std}}/${{matrix.bt}}
7274
continue-on-error: true
7375
if: always() # https://stackoverflow.com/questions/62045967/github-actions-is-there-a-way-to-continue-on-error-while-still-getting-correct
7476
runs-on: ubuntu-latest
75-
container: ghcr.io/biojppm/c4core/ubuntu18.04:latest # use the docker image
77+
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest # use the docker image
7678
strategy:
7779
fail-fast: false
7880
matrix:
7981
include:
80-
- {std: 20, cxx: "10" , bt: Debug , bitlinks: shared64 static32}
81-
- {std: 20, cxx: "10" , bt: Release, bitlinks: shared64 static32}
82-
- {std: 11, cxx: "6.0", bt: Debug , bitlinks: shared64 static32}
83-
- {std: 11, cxx: "6.0", bt: Release, bitlinks: shared64 static32}
84-
env: {STD: "${{matrix.std}}", CXX_: "clang++-${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}",
82+
- {std: 20, cxx: clang++-17 , bt: Debug , bitlinks: shared64 static32}
83+
- {std: 20, cxx: clang++-17 , bt: Release, bitlinks: shared64 static32}
84+
- {std: 11, cxx: clang++-9, bt: Debug , bitlinks: shared64 static32}
85+
- {std: 11, cxx: clang++-9, bt: Release, bitlinks: shared64 static32}
86+
env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}",
8587
CMAKE_FLAGS: "-DRYML_WITH_TAB_TOKENS=ON",
8688
VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
8789
steps:
88-
- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
90+
- {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
8991
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
9092
- run: c4core-install $CXX_
9193
- {name: show info, run: source .github/setenv.sh && c4_show_info}
@@ -116,21 +118,20 @@ jobs:
116118
continue-on-error: true
117119
if: always() # https://stackoverflow.com/questions/62045967/github-actions-is-there-a-way-to-continue-on-error-while-still-getting-correct
118120
runs-on: ubuntu-latest
119-
container: ghcr.io/biojppm/c4core/ubuntu18.04:latest # use the docker image
121+
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest # use the docker image
120122
strategy:
121123
fail-fast: false
122124
matrix:
123125
include:
124-
- {std: 20, cxx: "10" , bt: Debug , bitlinks: shared64 static32}
125-
- {std: 20, cxx: "10" , bt: Release, bitlinks: shared64 static32}
126-
- {std: 11, cxx: "6.0", bt: Debug , bitlinks: shared64 static32}
127-
- {std: 11, cxx: "6.0", bt: Release, bitlinks: shared64 static32}
128-
env: {CXXFLAGS: "-fno-exceptions -fno-rtti", STD: "${{matrix.std}}", CXX_: "clang++-${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
126+
- {std: 20, cxx: clang++-17 , bt: Debug , bitlinks: shared64 static32}
127+
- {std: 20, cxx: clang++-17 , bt: Release, bitlinks: shared64 static32}
128+
- {std: 11, cxx: clang++-9 , bt: Debug , bitlinks: shared64 static32}
129+
- {std: 11, cxx: clang++-9 , bt: Release, bitlinks: shared64 static32}
130+
env: {CXXFLAGS: "-fno-exceptions -fno-rtti", STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
129131
steps:
130-
- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
131-
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
132-
- run: c4core-install $CXX_
132+
- {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
133133
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
134+
- run: c4core-install ${{matrix.cxx}}
134135
- {name: show info, run: source .github/setenv.sh && c4_show_info}
135136
- name: shared64-configure---------------------------------------------------
136137
run: source .github/setenv.sh && c4_cfg_test shared64
@@ -164,39 +165,51 @@ jobs:
164165
fail-fast: false
165166
matrix:
166167
include:
167-
- {std: 11, cxx: "16" , bt: Debug , vg: on, img: ubuntu18.04}
168-
- {std: 11, cxx: "16" , bt: Release, vg: on, img: ubuntu18.04}
169-
- {std: 11, cxx: "15" , bt: Debug , vg: on, img: ubuntu22.04} # install of clang15 fails on ubuntu18.04
170-
- {std: 11, cxx: "15" , bt: Release, vg: on, img: ubuntu22.04} # install of clang15 fails on ubuntu18.04
171-
- {std: 11, cxx: "14" , bt: Debug , vg: on, img: ubuntu22.04} # install of clang14 fails on ubuntu18.04
172-
- {std: 11, cxx: "14" , bt: Release, vg: on, img: ubuntu22.04} # install of clang14 fails on ubuntu18.04
173-
- {std: 11, cxx: "13" , bt: Debug , vg: on, img: ubuntu18.04}
174-
- {std: 11, cxx: "13" , bt: Release, vg: on, img: ubuntu18.04}
175-
- {std: 11, cxx: "12" , bt: Debug , vg: on, img: ubuntu18.04}
176-
- {std: 11, cxx: "12" , bt: Release, vg: on, img: ubuntu18.04}
177-
- {std: 11, cxx: "11" , bt: Debug , vg: on, img: ubuntu18.04}
178-
- {std: 11, cxx: "11" , bt: Release, vg: on, img: ubuntu18.04}
179-
- {std: 11, cxx: "10" , bt: Debug , vg: on, img: ubuntu18.04}
180-
- {std: 11, cxx: "10" , bt: Release, vg: on, img: ubuntu18.04}
181-
- {std: 11, cxx: "9" , bt: Debug , vg: on, img: ubuntu18.04}
182-
- {std: 11, cxx: "9" , bt: Release, vg: on, img: ubuntu18.04}
183-
- {std: 11, cxx: "8" , bt: Debug , vg: on, img: ubuntu18.04}
184-
- {std: 11, cxx: "8" , bt: Release, vg: on, img: ubuntu18.04}
185-
- {std: 11, cxx: "7" , bt: Debug , vg: on, img: ubuntu18.04}
186-
- {std: 11, cxx: "7" , bt: Release, vg: on, img: ubuntu18.04}
187-
- {std: 11, cxx: "6.0", bt: Debug , vg: on, img: ubuntu18.04}
188-
- {std: 11, cxx: "6.0", bt: Release, vg: on, img: ubuntu18.04}
189-
- {std: 11, cxx: "5.0", bt: Debug , vg: on, img: ubuntu18.04}
190-
- {std: 11, cxx: "5.0", bt: Release, vg: on, img: ubuntu18.04}
191-
- {std: 11, cxx: "4.0", bt: Debug , vg: on, img: ubuntu18.04}
192-
- {std: 11, cxx: "4.0", bt: Release, vg: on, img: ubuntu18.04}
193-
- {std: 11, cxx: "3.9", bt: Debug , vg: on, img: ubuntu18.04}
194-
- {std: 11, cxx: "3.9", bt: Release, vg: on, img: ubuntu18.04}
195-
env: {STD: "${{matrix.std}}", CXX_: "clang++-${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
168+
- {std: 11, cxx: clang++-17 , bt: Debug , vg: on, img: ubuntu22.04}
169+
- {std: 11, cxx: clang++-17 , bt: Release, vg: on, img: ubuntu22.04}
170+
- {std: 11, cxx: clang++-16 , bt: Debug , vg: on, img: ubuntu22.04}
171+
- {std: 11, cxx: clang++-16 , bt: Release, vg: on, img: ubuntu22.04}
172+
- {std: 11, cxx: clang++-15 , bt: Debug , vg: on, img: ubuntu22.04} # install of clang15 fails on ubuntu18.04
173+
- {std: 11, cxx: clang++-15 , bt: Release, vg: on, img: ubuntu22.04} # install of clang15 fails on ubuntu18.04
174+
- {std: 11, cxx: clang++-14 , bt: Debug , vg: on, img: ubuntu22.04} # install of clang14 fails on ubuntu18.04
175+
- {std: 11, cxx: clang++-14 , bt: Release, vg: on, img: ubuntu22.04} # install of clang14 fails on ubuntu18.04
176+
- {std: 11, cxx: clang++-13 , bt: Debug , vg: on, img: ubuntu18.04}
177+
- {std: 11, cxx: clang++-13 , bt: Release, vg: on, img: ubuntu18.04}
178+
- {std: 11, cxx: clang++-12 , bt: Debug , vg: on, img: ubuntu18.04}
179+
- {std: 11, cxx: clang++-12 , bt: Release, vg: on, img: ubuntu18.04}
180+
- {std: 11, cxx: clang++-11 , bt: Debug , vg: on, img: ubuntu18.04}
181+
- {std: 11, cxx: clang++-11 , bt: Release, vg: on, img: ubuntu18.04}
182+
- {std: 11, cxx: clang++-10 , bt: Debug , vg: on, img: ubuntu18.04}
183+
- {std: 11, cxx: clang++-10 , bt: Release, vg: on, img: ubuntu18.04}
184+
- {std: 11, cxx: clang++-9 , bt: Debug , vg: on, img: ubuntu18.04}
185+
- {std: 11, cxx: clang++-9 , bt: Release, vg: on, img: ubuntu18.04}
186+
- {std: 11, cxx: clang++-8 , bt: Debug , vg: on, img: ubuntu18.04}
187+
- {std: 11, cxx: clang++-8 , bt: Release, vg: on, img: ubuntu18.04}
188+
- {std: 11, cxx: clang++-7 , bt: Debug , vg: on, img: ubuntu18.04}
189+
- {std: 11, cxx: clang++-7 , bt: Release, vg: on, img: ubuntu18.04}
190+
- {std: 11, cxx: clang++-6.0, bt: Debug , vg: on, img: ubuntu18.04}
191+
- {std: 11, cxx: clang++-6.0, bt: Release, vg: on, img: ubuntu18.04}
192+
- {std: 11, cxx: clang++-5.0, bt: Debug , vg: on, img: ubuntu18.04}
193+
- {std: 11, cxx: clang++-5.0, bt: Release, vg: on, img: ubuntu18.04}
194+
- {std: 11, cxx: clang++-4.0, bt: Debug , vg: on, img: ubuntu18.04}
195+
- {std: 11, cxx: clang++-4.0, bt: Release, vg: on, img: ubuntu18.04}
196+
- {std: 11, cxx: clang++-3.9, bt: Debug , vg: on, img: ubuntu18.04}
197+
- {std: 11, cxx: clang++-3.9, bt: Release, vg: on, img: ubuntu18.04}
198+
env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
196199
steps:
197-
- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
198-
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
199-
- run: c4core-install $CXX_
200+
# cannot use the checkout@v3 or v4 action on ubuntu18.04 because of nodejs version
201+
#- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
202+
#... so we checkout manually:
203+
- name: checkout
204+
run: |
205+
set -x
206+
git init -q .
207+
git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
208+
git remote add origin $GITHUB_SERVER_URL/$GITHUB_REPOSITORY
209+
git fetch origin $GITHUB_HEAD_REF
210+
git reset --hard FETCH_HEAD
211+
git submodule update --init --recursive
212+
- run: c4core-install ${{matrix.cxx}}
200213
- {name: show info, run: source .github/setenv.sh && c4_show_info}
201214
- name: shared64-configure---------------------------------------------------
202215
run: source .github/setenv.sh && c4_cfg_test shared64
@@ -221,36 +234,36 @@ jobs:
221234

222235
#----------------------------------------------------------------------------
223236
clangsan:
224-
name: clang/${{matrix.cxx}}/${{matrix.bt}}/c++${{matrix.std}}
237+
name: clang/${{matrix.bt}}/c++${{matrix.std}}
225238
continue-on-error: true
226239
if: always() # https://stackoverflow.com/questions/62045967/github-actions-is-there-a-way-to-continue-on-error-while-still-getting-correct
227240
runs-on: ubuntu-latest
228-
container: ghcr.io/biojppm/c4core/ubuntu18.04:latest # use the docker image
241+
container: ghcr.io/biojppm/c4core/ubuntu22.04:latest # use the docker image
229242
strategy:
230243
fail-fast: false
231244
matrix:
232245
include:
233-
- {std: 11, cxx: "16" , bt: asan, bitlinks: static64}
234-
- {std: 14, cxx: "16" , bt: asan, bitlinks: static64}
235-
- {std: 17, cxx: "16" , bt: asan, bitlinks: static64}
236-
- {std: 20, cxx: "16" , bt: asan, bitlinks: static64}
237-
- {std: 11, cxx: "16" , bt: lsan, bitlinks: static64}
238-
- {std: 14, cxx: "16" , bt: lsan, bitlinks: static64}
239-
- {std: 17, cxx: "16" , bt: lsan, bitlinks: static64}
240-
- {std: 20, cxx: "16" , bt: lsan, bitlinks: static64}
241-
- {std: 11, cxx: "16" , bt: tsan, bitlinks: static64}
242-
- {std: 14, cxx: "16" , bt: tsan, bitlinks: static64}
243-
- {std: 17, cxx: "16" , bt: tsan, bitlinks: static64}
244-
- {std: 20, cxx: "16" , bt: tsan, bitlinks: static64}
245-
- {std: 11, cxx: "16" , bt: ubsan, bitlinks: static64}
246-
- {std: 14, cxx: "16" , bt: ubsan, bitlinks: static64}
247-
- {std: 17, cxx: "16" , bt: ubsan, bitlinks: static64}
248-
- {std: 20, cxx: "16" , bt: ubsan, bitlinks: static64}
249-
env: {STD: "${{matrix.std}}", CXX_: "clang++-${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
246+
- {std: 11, cxx: clang++-17 , bt: asan, bitlinks: static64}
247+
- {std: 14, cxx: clang++-17 , bt: asan, bitlinks: static64}
248+
- {std: 17, cxx: clang++-17 , bt: asan, bitlinks: static64}
249+
- {std: 20, cxx: clang++-17 , bt: asan, bitlinks: static64}
250+
- {std: 11, cxx: clang++-17 , bt: lsan, bitlinks: static64}
251+
- {std: 14, cxx: clang++-17 , bt: lsan, bitlinks: static64}
252+
- {std: 17, cxx: clang++-17 , bt: lsan, bitlinks: static64}
253+
- {std: 20, cxx: clang++-17 , bt: lsan, bitlinks: static64}
254+
- {std: 11, cxx: clang++-17 , bt: tsan, bitlinks: static64}
255+
- {std: 14, cxx: clang++-17 , bt: tsan, bitlinks: static64}
256+
- {std: 17, cxx: clang++-17 , bt: tsan, bitlinks: static64}
257+
- {std: 20, cxx: clang++-17 , bt: tsan, bitlinks: static64}
258+
- {std: 11, cxx: clang++-17 , bt: ubsan, bitlinks: static64}
259+
- {std: 14, cxx: clang++-17 , bt: ubsan, bitlinks: static64}
260+
- {std: 17, cxx: clang++-17 , bt: ubsan, bitlinks: static64}
261+
- {std: 20, cxx: clang++-17 , bt: ubsan, bitlinks: static64}
262+
env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
250263
steps:
251-
- {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
264+
- {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
252265
- run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
253-
- run: c4core-install $CXX_
266+
- run: c4core-install ${{matrix.cxx}}
254267
- {name: show info, run: source .github/setenv.sh && c4_show_info}
255268
- name: shared64-configure---------------------------------------------------
256269
run: source .github/setenv.sh && c4_cfg_test shared64
@@ -294,7 +307,7 @@ jobs:
294307
# - {std: 20, cxx: clang++-10, bt: Release, bitlinks: shared64, os: ubuntu-20.04}
295308
# env: {STD: "${{matrix.std}}", CXX_: "${{matrix.cxx}}", BT: "${{matrix.bt}}", BITLINKS: "${{matrix.bitlinks}}", VG: "${{matrix.vg}}", SAN: "${{matrix.san}}", LINT: "${{matrix.lint}}", OS: "${{matrix.os}}"}
296309
# steps:
297-
# - {name: checkout, uses: actions/checkout@v3, with: {submodules: recursive}}
310+
# - {name: checkout, uses: actions/checkout@v4, with: {submodules: recursive}}
298311
# - run: git config --system --add safe.directory '*' # needed for running in the docker image. see https://github.com/actions/checkout/issues/1169
299312
# - {name: install requirements, run: source .github/reqs.sh && c4_install_test_requirements $OS}
300313
# - {name: show info, run: source .github/setenv.sh && c4_show_info}

0 commit comments

Comments
 (0)