@@ -51,14 +51,15 @@ jobs:
5151 - name : test
5252 run : make config=gcov test
5353 - name : generate coverage report
54- run : pipx run gcovr --gcov-ignore-parse-errors --exclude-throw-branches --filter src/ --cobertura > cobertura.xml
54+ # due to some bug in gcov, we need to use --gcov-ignore-parse-errors=negative_hits.warn
55+ run : pipx run gcovr --gcov-ignore-parse-errors=negative_hits.warn --exclude-throw-branches --filter src/ --cobertura > cobertura.xml
5556 - name : upload coverage report to artifacts
5657 uses : actions/upload-artifact@v4
5758 with :
5859 name : cobertura.xml
5960 path : cobertura.xml
6061 - name : upload coverage data to codecov.io
61- uses : codecov/codecov-action@v4
62+ uses : codecov/codecov-action@v5
6263 if : always() # even if previous steps fail, this one needs to be run
6364 with :
6465 token : ${{ secrets.CODECOV_TOKEN }}
@@ -167,15 +168,15 @@ jobs:
167168 uses : myci-actions/checkout@main
168169 - name : set PACKAGE_VERSION
169170 uses : myci-actions/export-env-var@main
170- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
171+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
171172 - name : prepare debian package
172173 run : myci-deb-prepare.sh
173174 - name : install deps
174175 run : myci-deb-install-build-deps.sh
175176 - name : build
176177 run : |
178+ cd build
177179 dpkg-buildpackage --unsigned-source --unsigned-changes
178- mv ../*.*deb .
179180 # - name: upload deb packages to artifacts
180181 # uses: actions/upload-artifact@v4
181182 # with:
@@ -214,7 +215,7 @@ jobs:
214215 # uses: myci-actions/checkout@main
215216 # - name: set PACKAGE_VERSION
216217 # uses: myci-actions/export-env-var@main
217- # with: {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
218+ # with: {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
218219 # # makepkg needs to install dependency packages, so nobody user needs sudo rights
219220 # - name: add nobody to sudoers
220221 # run: |
@@ -223,12 +224,12 @@ jobs:
223224 # run: |
224225 # # provide write access to user nobody
225226 # chmod --recursive 777 .
226- # cd archlinux
227+ # cd build/ archlinux
227228 # sudo --user=nobody --preserve-env=PACKAGE_VERSION makepkg --syncdeps --noconfirm --skipinteg --noprogressbar
228229 # - name: deploy
229230 # run: |
230231 # echo "${{ secrets.MYCI_REPO_SSH_KEY }}" > repo_key_rsa && chmod 600 repo_key_rsa
231- # myci-deploy-pacman-ssh.sh --server gagis.hopto.org --key repo_key_rsa --repo cppfw/archlinux/${{ matrix.arch }} --database cppfw archlinux/$PACKAGE_NAME-*.pkg.*
232+ # myci-deploy-pacman-ssh.sh --server gagis.hopto.org --key repo_key_rsa --repo cppfw/archlinux/${{ matrix.arch }} --database cppfw build/ archlinux/$PACKAGE_NAME-*.pkg.*
232233 # if: startsWith(github.ref, 'refs/tags/')
233234# #### macosx #####
234235 macosx :
@@ -301,7 +302,7 @@ jobs:
301302 uses : myci-actions/checkout@main
302303 - name : set PACKAGE_VERSION
303304 uses : myci-actions/export-env-var@main
304- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
305+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
305306 - name : add cocoapods repo
306307 run :
pod repo add --silent cppfw https://[email protected] /cppfw/cocoapods-repo.git 307308 - name : install deps
@@ -322,7 +323,7 @@ jobs:
322323 - name : deploy
323324 run : |
324325 echo "${{ secrets.MYCI_REPO_SSH_KEY }}" > repo_key_rsa && chmod 600 repo_key_rsa
325- myci-deploy-cocoapods-ssh.sh --repo cppfw --version $PACKAGE_VERSION --server gagis.hopto.org --key repo_key_rsa --generic-repo cppfw/cocoapods --package $PACKAGE_NAME-$PACKAGE_VERSION.zip cocoapods/$PACKAGE_NAME.podspec.in
326+ myci-deploy-cocoapods-ssh.sh --repo cppfw --version $PACKAGE_VERSION --server gagis.hopto.org --key repo_key_rsa --generic-repo cppfw/cocoapods --package $PACKAGE_NAME-$PACKAGE_VERSION.zip build/ cocoapods/$PACKAGE_NAME.podspec.in
326327 if : startsWith(github.ref, 'refs/tags/')
327328# #### android #####
328329 android :
@@ -340,15 +341,15 @@ jobs:
340341 install : myci
341342 - name : set PACKAGE_VERSION
342343 uses : myci-actions/export-env-var@main
343- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
344+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
344345 - name : build
345346 run : |
346- cd android
347+ cd build/ android
347348 ./gradlew copy_aar --warning-mode all
348349 myci-apply-version.sh --version $PACKAGE_VERSION *.pom.in
349350 myci-apply-version.sh --version $PACKAGE_VERSION *.aar.in --filename-only
350351 - name : deploy
351- run : myci-deploy-maven-nexus.sh --base-url https://gagis.hopto.org/nexus --repo android android/$PACKAGE_NAME-$PACKAGE_VERSION.aar
352+ run : myci-deploy-maven-nexus.sh --base-url https://gagis.hopto.org/nexus --repo android build/ android/$PACKAGE_NAME-$PACKAGE_VERSION.aar
352353 if : startsWith(github.ref, 'refs/tags/')
353354# #### msys2 #####
354355 msys2 :
@@ -390,17 +391,17 @@ jobs:
390391 - name : git clone
391392 uses : myci-actions/checkout@main
392393 - name : prepare pacman package
393- run : myci-apply-version.sh --version $(myci-deb-version.sh debian/changelog) msys2/PKGBUILD.in
394+ run : myci-apply-version.sh build/ msys2/PKGBUILD.in
394395 - name : build
395396 # to make makepkg-mingw build only one architecture we need to set the MINGW_ARCH
396397 env : {MINGW_ARCH: '${{ matrix.repo }}'}
397398 run : |
398- cd msys2
399+ cd build/ msys2
399400 PKGEXT='.pkg.tar.xz' makepkg-mingw --syncdeps --noconfirm --skipinteg
400401 - name : deploy
401402 run : |
402403 echo "${{ secrets.MYCI_REPO_SSH_KEY }}" > repo_key_rsa && chmod 600 repo_key_rsa
403- for f in $(find msys2 -name "mingw-w64-${{ matrix.arch }}-$PACKAGE_NAME-*-any.pkg.*"); do
404+ for f in $(find build/ msys2 -name "mingw-w64-${{ matrix.arch }}-$PACKAGE_NAME-*-any.pkg.*"); do
404405 myci-deploy-pacman-ssh.sh --server gagis.hopto.org --key repo_key_rsa --repo cppfw/msys2/${{ matrix.repo }} --database cppfw_${{ matrix.repo }} $f
405406 done
406407 if : startsWith(github.ref, 'refs/tags/')
@@ -564,12 +565,12 @@ jobs:
564565 uses : myci-actions/checkout@main
565566 - name : set PACKAGE_VERSION
566567 uses : myci-actions/export-env-var@main
567- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
568+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
568569 if : startsWith(github.ref, 'refs/tags/')
569570 - name : build
570571 run : |
571572 conan remote add cppfw $MYCI_CONAN_REMOTE
572- conan create conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
573+ conan create build/ conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
573574 - name : deploy conan package
574575 run : |
575576 conan remote login --password $MYCI_CONAN_PASSWORD cppfw $MYCI_CONAN_USER
@@ -617,12 +618,12 @@ jobs:
617618 sed -i -E "s/compiler.cppstd=.*$/compiler.cppstd=17/g" ~/.conan2/profiles/default
618619 - name : set PACKAGE_VERSION
619620 uses : myci-actions/export-env-var@main
620- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
621+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
621622 if : startsWith(github.ref, 'refs/tags/')
622623 - name : build
623624 run : |
624625 conan remote add cppfw $MYCI_CONAN_REMOTE
625- conan create conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
626+ conan create build/ conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
626627 - name : deploy conan package
627628 run : |
628629 conan remote login --password $MYCI_CONAN_PASSWORD cppfw $MYCI_CONAN_USER
@@ -662,13 +663,13 @@ jobs:
662663 submodules : false
663664 - name : set PACKAGE_VERSION
664665 uses : myci-actions/export-env-var@main
665- with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh debian/changelog )}
666+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
666667 if : startsWith(github.ref, 'refs/tags/')
667668 - name : build
668669 run : |
669670 conan remote add cppfw $MYCI_CONAN_REMOTE
670671 # NOTE: specifying empty test folder to skip the test stage
671- conan create conan --profile:build default --profile:host emscripten/conan.profile --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION --test-folder ""
672+ conan create build/ conan --profile:build default --profile:host build/ emscripten/conan.profile --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION --test-folder ""
672673 - name : deploy conan package
673674 run : |
674675 conan remote login --password $MYCI_CONAN_PASSWORD cppfw $MYCI_CONAN_USER
0 commit comments