# -*- fill-column: 1000 -*- name: Build x86_64 kind: pipeline type: docker volumes: - name: debian-package-cache host: path: /var/cache/debian-package-cache trigger: event: exclude: - tag steps: - name: GCC 10 / clang 11 image: debian:bullseye-slim pull: always environment: CXX: g++-10 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json3-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DWITH_TESTS=YES .. - make VERBOSE=1 - make install DESTDIR=install - ctest -V - cd ../ - rm -rf build && mkdir -p build && cd build - CXX="clang++" cmake -G "Unix Makefiles" -DWITH_TESTS=YES .. - make VERBOSE=1 - make install DESTDIR=install - ctest -V volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: Download CMake 3.12 installer image: plugins/download settings: source: https://cmake.org/files/v3.12/cmake-3.12.0-Linux-x86_64.sh destination: cmake_installer.sh skip_verify: true sha256: 052b7daa2adab40211c6644da200ef95096d2adbcebd4cc5e60230d9023168bd - name: GCC 8 / clang 6 image: ubuntu:bionic pull: always environment: CXX: g++-8 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 pugixml_DIR: "/usr/share/libpugixml-dev/cmake" nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq g++-8 build-essential clang locales - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - sh cmake_installer.sh --skip-license --exclude-subdir --prefix=/usr/local - cp /usr/lib/x86_64-linux-gnu/libpugixml* /lib/x86_64-linux-gnu/ - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DWITH_TESTS=YES .. - make VERBOSE=1 - make install DESTDIR=install - ctest -V - cd ../ - rm -rf build && mkdir -p build && cd build - CXX="clang++" cmake -G "Unix Makefiles" -DWITH_TESTS=YES .. - make VERBOSE=1 - make install DESTDIR=install - ctest -V volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: notify image: drillster/drone-email pull: always settings: host: mail.tzend.de from: drone@tzend.de username: from_secret: email_username password: from_secret: email_password when: status: [ changed, failure ] --- name: Packages x86_64 kind: pipeline type: docker volumes: - name: debian-package-cache host: path: /var/cache/debian-package-cache trigger: event: - tag steps: - name: Debian bullseye image: debian:bullseye-slim pull: always environment: CXX: g++-10 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales lsb-release - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json3-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 - make install DESTDIR=install - cpack -G DEB - cp -v epubgrep_${DRONE_TAG}-0_amd64_bullseye.deb .. volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: Debian buster image: debian:buster-slim pull: always environment: CXX: g++-8 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales lsb-release - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 - make install DESTDIR=install - cpack -G DEB - cp -v epubgrep_${DRONE_TAG}-0_amd64_buster.deb .. volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: Ubuntu focal image: ubuntu:focal pull: always environment: CXX: g++-9 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales lsb-release - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json3-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 - make install DESTDIR=install - cpack -G DEB - cp -v epubgrep_${DRONE_TAG}-0_amd64_focal.deb .. volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: Download CMake 3.12 installer image: plugins/download settings: source: https://cmake.org/files/v3.12/cmake-3.12.0-Linux-x86_64.sh destination: cmake_installer.sh skip_verify: true sha256: 052b7daa2adab40211c6644da200ef95096d2adbcebd4cc5e60230d9023168bd - name: Ubuntu bionic image: ubuntu:bionic pull: always environment: CXX: g++-8 CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 pugixml_DIR: "/usr/share/libpugixml-dev/cmake" nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq g++-8 build-essential clang locales lsb-release - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - sh cmake_installer.sh --skip-license --exclude-subdir --prefix=/usr/local - cp /usr/lib/x86_64-linux-gnu/libpugixml* /lib/x86_64-linux-gnu/ - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 - make install DESTDIR=install - cpack -G DEB - cp -v epubgrep_${DRONE_TAG}-0_amd64_bionic.deb .. volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: gitea_release image: plugins/gitea-release pull: always settings: base_url: https://schlomp.space api_key: from_secret: gitea_token title: ${DRONE_TAG} prerelease: true files: - epubgrep_${DRONE_TAG}-0_amd64_buster.deb - epubgrep_${DRONE_TAG}-0_amd64_bullseye.deb - epubgrep_${DRONE_TAG}-0_amd64_focal.deb - epubgrep_${DRONE_TAG}-0_amd64_bionic.deb checksum: - sha512 - name: notification image: drillster/drone-email pull: always settings: host: mail.tzend.de from: drone@tzend.de username: from_secret: email_username password: from_secret: email_password when: status: [ changed, failure ]