kind: pipeline name: default type: docker steps: - name: test-debug-linux image: deukhoofd/linux64builder environment: CC: /usr/bin/clang CXX: /usr/bin/clang++ CMAKE_RANLIB: /usr/bin/llvm-ranlib CMAKE_AR: /usr/bin/llvm-ar commands: - cmake -DCMAKE_BUILD_TYPE=Debug . -B build-debug -DSTATICC=ON -DTESTS=ON - cmake --build build-debug --target all -- -j 4 - build-debug/ArbutilsTests -s --durations yes --use-colour yes - name: test-release-linux image: deukhoofd/linux64builder environment: CC: /usr/bin/clang CXX: /usr/bin/clang++ CMAKE_RANLIB: /usr/bin/llvm-ranlib CMAKE_AR: /usr/bin/llvm-ar commands: - cmake -DCMAKE_BUILD_TYPE=Release . -B build-release -DSTATICC=ON -DTESTS=ON - cmake --build build-release --target all -- -j 4 - build-release/ArbutilsTests -s --durations yes --use-colour yes - valgrind --tool=memcheck --gen-suppressions=all --leak-check=full --leak-resolution=med --track-origins=yes --vgdb=no --error-exitcode=1 build-release/ArbutilsTests exclude:"Throw exception get stack trace" - name: style-check image: deukhoofd/linux64builder failure: ignore commands: - run-clang-format.py -r src/ tests/ --exclude "*MacroUtils.hpp" - name: test-release-windows image: deukhoofd/windowsbuilder commands: - update-alternatives --set i686-w64-mingw32-gcc /usr/bin/i686-w64-mingw32-gcc-posix - update-alternatives --set i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix - update-alternatives --set x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix - update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix - cmake -DCMAKE_BUILD_TYPE=Release . -B build-release-windows -D CMAKE_C_COMPILER=/usr/bin/x86_64-w64-mingw32-gcc -D CMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ -DWINDOWS=ON -DSTATICC=ON -DTESTS=ON - cmake --build build-release-windows --target all -- -j 4 - export WINEARCH=win64 - wine build-release-windows/ArbutilsTests.exe -s exclude:"Throw exception get stack trace" - name: conan-deploy image: deukhoofd/linux64builder environment: CONAN_LOGIN_USERNAME: from_secret: conan_username CONAN_PASSWORD: from_secret: conan_password commands: - rm -rf build-debug - rm -rf build-release-windows - cmake -DCMAKE_BUILD_TYPE=Release . -B build-conan -D CMAKE_C_COMPILER=/usr/bin/clang -D CMAKE_CXX_COMPILER=clang++ -DWINDOWS=0 - conan export-pkg . $DRONE_COMMIT@epsilon/$DRONE_BRANCH --build-folder build-conan -s compiler='clang' -s compiler.version=8 -s compiler.libcxx='libstdc++11' - conan alias Arbutils/latest@epsilon/$DRONE_BRANCH Arbutils/$DRONE_COMMIT@epsilon/$DRONE_BRANCH - conan remote add epsilon-public https://packages.p-epsilon.com/ - conan user -p -r=epsilon-public - conan upload Arbutils/$DRONE_COMMIT@epsilon/$DRONE_BRANCH --all -r=epsilon-public --force - conan upload Arbutils/latest@epsilon/$DRONE_BRANCH --all -r=epsilon-public - conan user --clean