@@ -315,6 +315,111 @@ jobs:
315315 filename : ' .\nuget\*.nupkg'
316316 api-key : ${{ secrets.NUGET_DOT_ORG_API_KEY }}
317317 if : startsWith(github.ref, 'refs/tags/')
318+ # #### conan - linux #####
319+ conan-linux :
320+ strategy :
321+ fail-fast : false
322+ matrix :
323+ include :
324+ - {os: debian, codename: bookworm, image_owner: }
325+ # - {os: debian, codename: bookworm, image_owner: i386/, labels: [i386,docker]}
326+ # - {os: debian, codename: bookworm, image_owner: arm32v7/, labels: [ubuntu-24.04-arm]}
327+ # - {os: debian, codename: bookworm, image_owner: arm64v8/, labels: [ubuntu-24.04-arm]}
328+ runs-on : ${{ (matrix.labels == '' && 'ubuntu-latest') || matrix.labels }}
329+ container : ${{ matrix.image_owner }}${{ matrix.os }}:${{ matrix.codename }}
330+ name : conan - linux | ${{ matrix.image_owner }}
331+ steps :
332+ - name : add llvm repo (for clang-format)
333+ uses : myci-actions/add-deb-repo@main
334+ with :
335+ repo : deb http://apt.llvm.org/${{ matrix.codename }} llvm-toolchain-${{ matrix.codename }} main
336+ repo-name : llvm
337+ keys-asc : https://apt.llvm.org/llvm-snapshot.gpg.key
338+ install : clang-format clang-tidy
339+ - name : add cppfw deb repo
340+ uses : myci-actions/add-deb-repo@main
341+ with :
342+ repo : deb https://gagis.hopto.org/repo/cppfw/${{ matrix.os }} ${{ matrix.codename }} main
343+ repo-name : cppfw
344+ keys-asc : https://gagis.hopto.org/repo/cppfw/pubkey.gpg
345+ install : devscripts equivs myci pipx cmake git
346+ - name : add ~/.local/bin to PATH
347+ uses : myci-actions/export-env-var@main
348+ with : {name: PATH, value: "$PATH:$HOME/.local/bin"}
349+ - name : install conan
350+ run : pipx install conan
351+ - name : create default conan profile
352+ run : |
353+ conan profile detect --name default
354+ sed -i -E "s/compiler.cppstd=.*$/compiler.cppstd=17/g" ~/.conan2/profiles/default
355+ - name : git clone
356+ uses : myci-actions/checkout@main
357+ - name : set PACKAGE_VERSION
358+ uses : myci-actions/export-env-var@main
359+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
360+ if : startsWith(github.ref, 'refs/tags/')
361+ - name : build
362+ run : |
363+ conan remote add cppfw $MYCI_CONAN_REMOTE
364+ conan create build/conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
365+ - name : deploy conan package
366+ run : |
367+ conan remote login --password $MYCI_CONAN_PASSWORD cppfw $MYCI_CONAN_USER
368+ conan upload --check --remote cppfw $PACKAGE_NAME/$PACKAGE_VERSION@$MYCI_CONAN_USER/main
369+ if : startsWith(github.ref, 'refs/tags/')
370+ # #### conan - macosx #####
371+ conan-macosx :
372+ strategy :
373+ fail-fast : false
374+ matrix :
375+ os :
376+ # - macos-10.15
377+ # - macos-11
378+ # - macos-12
379+ - macos-latest
380+ name : conan - ${{ matrix.os }}
381+ runs-on : ${{ matrix.os }}
382+ steps :
383+ - name : workaround python2 and python3 issue when upgrading python
384+ run : |
385+ rm -rf /usr/local/bin/2to3*
386+ rm -rf /usr/local/bin/idle3*
387+ rm -rf /usr/local/bin/pydoc3*
388+ rm -rf /usr/local/bin/python3
389+ rm -rf /usr/local/bin/python3-config
390+ rm -rf /usr/local/bin/python3*
391+ rm -rf /usr/local/bin/python3*-config
392+ - name : install clang-tidy and clang-format
393+ run : |
394+ brew install llvm
395+ ln -s "$(brew --prefix llvm)/bin/clang-format" "/usr/local/bin/clang-format"
396+ ln -s "$(brew --prefix llvm)/bin/clang-tidy" "/usr/local/bin/clang-tidy"
397+ ln -s "$(brew --prefix llvm)/bin/clang-apply-replacements" "/usr/local/bin/clang-apply-replacements"
398+ - name : git clone
399+ uses : myci-actions/checkout@main
400+ - name : add cppfw tap
401+ run : |
402+ brew tap cppfw/tap
403+ brew update
404+ - name : install ci tools
405+ run : brew install myci conan
406+ - name : create default conan profile
407+ run : |
408+ conan profile detect --name default
409+ sed -i -E "s/compiler.cppstd=.*$/compiler.cppstd=17/g" ~/.conan2/profiles/default
410+ - name : set PACKAGE_VERSION
411+ uses : myci-actions/export-env-var@main
412+ with : {name: PACKAGE_VERSION, value: $(myci-deb-version.sh)}
413+ if : startsWith(github.ref, 'refs/tags/')
414+ - name : build
415+ run : |
416+ conan remote add cppfw $MYCI_CONAN_REMOTE
417+ conan create build/conan --build=missing --user $MYCI_CONAN_USER --channel main --version $PACKAGE_VERSION
418+ - name : deploy conan package
419+ run : |
420+ conan remote login --password $MYCI_CONAN_PASSWORD cppfw $MYCI_CONAN_USER
421+ conan upload --check --remote cppfw $PACKAGE_NAME/$PACKAGE_VERSION@$MYCI_CONAN_USER/main
422+ if : startsWith(github.ref, 'refs/tags/')
318423# #### conan - emscripten #####
319424 conan-emscripten :
320425 strategy :
0 commit comments