Skip to content

Commit a84749b

Browse files
committed
CI build fixes from v2_develop, core: hw fsync
1 parent 5ebca7c commit a84749b

File tree

7 files changed

+494
-69
lines changed

7 files changed

+494
-69
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Build and Test viewer on Linux and macOS
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
11+
jobs:
12+
build-and-test:
13+
runs-on: ${{ matrix.os }}
14+
strategy:
15+
matrix:
16+
os:
17+
- ubuntu-latest
18+
- ubuntu-24.04
19+
- ubuntu-22.04
20+
- macos-latest
21+
- macos-14
22+
- macos-13
23+
24+
steps:
25+
- name: Checkout repository
26+
uses: actions/checkout@v4
27+
28+
- name: Set execute permissions for install script
29+
run: chmod +x docs/install_depthai.sh
30+
31+
- name: Run installation script
32+
run: ./docs/install_depthai.sh
33+
34+
- name: Verify installation success
35+
run: echo "Installation script executed successfully"

.github/workflows/docker-hub.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
with:
2828
args: /bin/sh -c "rm -rf /github/workspace/.* || rm -rf /github/workspace/*"
2929
- name: Checkout
30-
uses: actions/checkout@v3
30+
uses: actions/checkout@v4
3131
with:
3232
submodules: recursive
3333
- name: Login to DockerHub
@@ -46,7 +46,7 @@ jobs:
4646
run: echo "LUXONIS_IMAGE_TAG=${GITHUB_REF#refs/*/}-${{ matrix.arch }}" >> $GITHUB_ENV
4747

4848
- name: Build and push
49-
uses: docker/build-push-action@v3
49+
uses: docker/build-push-action@v4
5050
with:
5151
push: true
5252
file: ci/Dockerfile

.github/workflows/main.yml

Lines changed: 45 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ jobs:
3232
runs-on: ubuntu-latest
3333
steps:
3434
- name: Cache .hunter folder
35-
uses: actions/cache@v3
35+
uses: actions/cache@v4
3636
with:
3737
path: ~/.hunter
3838
key: hunter-ubuntu-latest
3939
- name: List .hunter cache directory
4040
run: ls -a -l ~/.hunter/_Base/ || true
41-
- uses: actions/checkout@v3
41+
- uses: actions/checkout@v4
4242
with:
4343
submodules: 'recursive'
4444
- name: Set up Python
@@ -55,7 +55,7 @@ jobs:
5555
- name: Build target 'pybind11_mkdoc'
5656
run: cmake --build build --target pybind11_mkdoc --parallel 4
5757
- name: Upload docstring artifacts
58-
uses: actions/upload-artifact@v3
58+
uses: actions/upload-artifact@v4
5959
with:
6060
name: docstrings
6161
path: docstrings/
@@ -79,22 +79,22 @@ jobs:
7979
cmake-version: '3.29.x'
8080
- name: Cache .hunter folder
8181
if: matrix.os != 'windows-latest'
82-
uses: actions/cache@v3
82+
uses: actions/cache@v4
8383
with:
8484
path: ~/.hunter/
8585
key: hunter-pytest-${{ matrix.os }}
8686
- name: Cache .hunter folder
8787
if: matrix.os == 'windows-latest'
88-
uses: actions/cache@v3
88+
uses: actions/cache@v4
8989
with:
9090
path: C:/.hunter/
9191
key: hunter-pytest-${{ matrix.os }}
9292

93-
- uses: actions/checkout@v3
93+
- uses: actions/checkout@v4
9494
with:
9595
submodules: 'recursive'
9696

97-
- uses: actions/download-artifact@v3
97+
- uses: actions/download-artifact@v4
9898
with:
9999
name: 'docstrings'
100100
path: docstrings
@@ -136,20 +136,16 @@ jobs:
136136
needs: build-docstrings
137137
strategy:
138138
matrix:
139-
rpi-os: [rpi-buster, rpi-bullseye, rpi-bookworm]
139+
rpi-os: [rpi-bullseye, rpi-bookworm]
140140
runs-on: ${{ matrix.rpi-os }}
141-
env:
142-
# workaround required for cache@v3, https://github.com/actions/cache/issues/1428
143-
# to be removed when upgrading the manylinux image
144-
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
145141
steps:
146142
- name: Print home directory
147143
run: echo Home directory inside container $HOME
148-
- uses: actions/checkout@v3
144+
- uses: actions/checkout@v4
149145
with:
150146
submodules: 'recursive'
151147

152-
- uses: actions/download-artifact@v3
148+
- uses: actions/download-artifact@v4
153149
with:
154150
name: 'docstrings'
155151
path: docstrings
@@ -169,9 +165,9 @@ jobs:
169165
mkdir -p wheelhouse/audited/
170166
for whl in wheelhouse/preaudited/*linux_armv6l*.whl; do cp "$whl" wheelhouse/audited/$(basename $whl); done
171167
- name: Archive wheel artifacts
172-
uses: actions/upload-artifact@v3
168+
uses: actions/upload-artifact@v4
173169
with:
174-
name: audited-wheels
170+
name: audited-wheels-${{ matrix.rpi-os }}
175171
path: wheelhouse/audited/
176172
- name: Deploy wheels to artifactory (if not a release)
177173
if: startsWith(github.ref, 'refs/tags/v') != true
@@ -188,20 +184,20 @@ jobs:
188184
runs-on: windows-latest
189185
strategy:
190186
matrix:
191-
python-version: [3.7, 3.8, 3.9, '3.10', '3.11', '3.12']
187+
python-version: [3.7, 3.8, 3.9, '3.10', '3.11', '3.12', '3.13']
192188
python-architecture: [x64, x86]
193189
fail-fast: false
194190
steps:
195191
- name: Cache .hunter folder
196-
uses: actions/cache@v3
192+
uses: actions/cache@v4
197193
with:
198194
path: C:/.hunter
199195
key: hunter-msvc
200-
- uses: actions/checkout@v3
196+
- uses: actions/checkout@v4
201197
with:
202198
submodules: 'recursive'
203199

204-
- uses: actions/download-artifact@v3
200+
- uses: actions/download-artifact@v4
205201
with:
206202
name: 'docstrings'
207203
path: docstrings
@@ -227,9 +223,9 @@ jobs:
227223
- name: Building wheels
228224
run: python -m pip wheel . -w ./wheelhouse/audited/ --verbose
229225
- name: Archive wheel artifacts
230-
uses: actions/upload-artifact@v3
226+
uses: actions/upload-artifact@v4
231227
with:
232-
name: audited-wheels
228+
name: audited-wheels-windows-${{ matrix.python-version }}-${{ matrix.python-architecture }}
233229
path: wheelhouse/audited/
234230
- name: Deploy wheels to artifactory (if not a release)
235231
if: startsWith(github.ref, 'refs/tags/v') != true
@@ -244,12 +240,12 @@ jobs:
244240
needs: build-docstrings
245241
strategy:
246242
matrix:
247-
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
243+
python-version: [3.8, 3.9, '3.10', '3.11', '3.12', '3.13']
248244
os: [macos-13, macos-14] # macos-13 is x64, macos-14 is arm64
249245
runs-on: ${{ matrix.os }}
250246
steps:
251247
- name: Cache .hunter folder
252-
uses: actions/cache@v3
248+
uses: actions/cache@v4
253249
with:
254250
path: ~/.hunter
255251
key: hunter-macos-latest
@@ -258,11 +254,11 @@ jobs:
258254
ls -a -l ~/.hunter/_Base/ || true
259255
echo "PATH=$PATH"
260256
261-
- uses: actions/checkout@v3
257+
- uses: actions/checkout@v4
262258
with:
263259
submodules: 'recursive'
264260

265-
- uses: actions/download-artifact@v3
261+
- uses: actions/download-artifact@v4
266262
with:
267263
name: 'docstrings'
268264
path: docstrings
@@ -288,9 +284,9 @@ jobs:
288284
- name: Auditing wheels
289285
run: ci/repair-whl-macos.sh `pwd`/wheelhouse/* `pwd`/wheelhouse/audited
290286
- name: Archive wheel artifacts
291-
uses: actions/upload-artifact@v3
287+
uses: actions/upload-artifact@v4
292288
with:
293-
name: audited-wheels
289+
name: audited-wheels-macos-${{ matrix.python-version }}-${{ matrix.os }}
294290
path: wheelhouse/audited/
295291
- name: Deploy wheels to artifactory (if not a release)
296292
if: startsWith(github.ref, 'refs/tags/v') != true
@@ -304,21 +300,17 @@ jobs:
304300
build-linux-x86_64:
305301
needs: build-docstrings
306302
runs-on: ubuntu-latest
307-
env:
308-
# workaround required for cache@v3, https://github.com/actions/cache/issues/1428
309-
# to be removed when upgrading the manylinux image
310-
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
311303
container:
312-
image: quay.io/pypa/manylinux2014_x86_64:latest
304+
image: quay.io/pypa/manylinux_2_28_x86_64:2024.12.05-1
313305
env:
314-
PLAT: manylinux2014_x86_64
306+
PLAT: manylinux_2_28_x86_64
315307
steps:
316308
- name: Cache .hunter folder
317-
uses: actions/cache@v3
309+
uses: actions/cache@v4
318310
with:
319311
path: ~/.hunter
320312
key: hunter-x86_64
321-
- uses: actions/checkout@v3
313+
- uses: actions/checkout@v4
322314
with:
323315
submodules: 'recursive'
324316
- name: Installing libusb1-devel dependency
@@ -330,7 +322,7 @@ jobs:
330322
- name: Create folder structure
331323
run: mkdir -p wheelhouse/audited/
332324

333-
- uses: actions/download-artifact@v3
325+
- uses: actions/download-artifact@v4
334326
with:
335327
name: 'docstrings'
336328
path: docstrings
@@ -352,13 +344,13 @@ jobs:
352344
/opt/python/cp38-cp38/bin/python3.8 setup.py sdist --formats=gztar
353345
mv dist/* wheelhouse/audited/
354346
- name: Build wheels
355-
run: for PYBIN in /opt/python/cp3{7..12}*/bin; do "${PYBIN}/pip" wheel . -w ./wheelhouse/ --verbose; done
347+
run: for PYBIN in /opt/python/cp3{7..13}*/bin; do "${PYBIN}/pip" wheel . -w ./wheelhouse/ --verbose; done
356348
- name: Audit wheels
357349
run: for whl in wheelhouse/*.whl; do auditwheel repair "$whl" --plat $PLAT -w wheelhouse/audited/; done
358350
- name: Archive wheel artifacts
359-
uses: actions/upload-artifact@v3
351+
uses: actions/upload-artifact@v4
360352
with:
361-
name: audited-wheels
353+
name: audited-wheels-linux-x86_64
362354
path: wheelhouse/audited/
363355
- name: Deploy wheels to artifactory (if not a release)
364356
if: startsWith(github.ref, 'refs/tags/v') != true
@@ -371,20 +363,16 @@ jobs:
371363
# This job builds wheels for ARM64 arch
372364
build-linux-arm64:
373365
needs: build-docstrings
374-
runs-on: [self-hosted, linux, ARM64]
375-
env:
376-
# workaround required for cache@v3, https://github.com/actions/cache/issues/1428
377-
# to be removed when upgrading the manylinux image
378-
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
366+
runs-on: ubuntu-24.04-arm
379367
container:
380-
image: quay.io/pypa/manylinux2014_aarch64:latest
368+
image: quay.io/pypa/manylinux_2_28_aarch64:2024.12.05-1
381369
env:
382-
PLAT: manylinux2014_aarch64
370+
PLAT: manylinux_2_28_aarch64
383371
# Mount local hunter cache directory, instead of transfering to Github and back
384372
volumes:
385373
- /.hunter:/github/home/.hunter
386374
steps:
387-
- uses: actions/checkout@v3
375+
- uses: actions/checkout@v4
388376
with:
389377
submodules: 'recursive'
390378
- name: Installing libusb1-devel dependency
@@ -396,7 +384,7 @@ jobs:
396384
- name: Create folder structure
397385
run: mkdir -p wheelhouse/audited/
398386

399-
- uses: actions/download-artifact@v3
387+
- uses: actions/download-artifact@v4
400388
with:
401389
name: 'docstrings'
402390
path: docstrings
@@ -413,13 +401,13 @@ jobs:
413401
if: startsWith(github.ref, 'refs/tags/v') != true
414402
run: echo "BUILD_COMMIT_HASH=${{github.sha}}" >> $GITHUB_ENV
415403
- name: Building wheels
416-
run: for PYBIN in /opt/python/cp3{7..12}*/bin; do "${PYBIN}/pip" wheel . -w ./wheelhouse/ --verbose; done
404+
run: for PYBIN in /opt/python/cp3{7..13}*/bin; do "${PYBIN}/pip" wheel . -w ./wheelhouse/ --verbose; done
417405
- name: Auditing wheels
418406
run: for whl in wheelhouse/*.whl; do auditwheel repair "$whl" --plat $PLAT -w wheelhouse/audited/; done
419407
- name: Archive wheel artifacts
420-
uses: actions/upload-artifact@v3
408+
uses: actions/upload-artifact@v4
421409
with:
422-
name: audited-wheels
410+
name: audited-wheels-linux-arm64
423411
path: wheelhouse/audited/
424412
- name: Deploy wheels to artifactory (if not a release)
425413
if: startsWith(github.ref, 'refs/tags/v') != true
@@ -435,7 +423,7 @@ jobs:
435423
runs-on: ubuntu-latest
436424

437425
steps:
438-
- uses: actions/checkout@v3
426+
- uses: actions/checkout@v4
439427
with:
440428
submodules: 'recursive'
441429

@@ -470,12 +458,13 @@ jobs:
470458
needs: [release]
471459
runs-on: ubuntu-latest
472460
steps:
473-
- uses: actions/checkout@v3
461+
- uses: actions/checkout@v4
474462
with:
475463
submodules: 'recursive'
476-
- uses: actions/download-artifact@v3
464+
- uses: actions/download-artifact@v4
477465
with:
478-
name: audited-wheels
466+
pattern: audited-wheels*
467+
merge-multiple: true
479468
path: wheelhouse/audited/
480469
- name: List files
481470
run: ls -lah

0 commit comments

Comments
 (0)