# -*- fill-column: 1000 -*- kind: pipeline name: build x86_64 volumes: - name: debian-package-cache host: path: /var/cache/debian-package-cache trigger: event: exclude: - tag steps: - name: gcc6 image: debian:stretch-slim pull: always environment: CXX: g++-6 CXXFLAGS: -pipe -O2 LANG: en_US.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 -qy g++-6 cmake pkg-config libmagick++-dev catch - rm -rf build && mkdir -p build && cd build - cmake -DWITH_TESTS=YES .. - cmake --build . - make install DESTDIR=install - cd tests && ctest -V volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: gcc9 image: debian:stretch-slim pull: always environment: CXX: g++-9 CXXFLAGS: -pipe -O2 LANG: en_US.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 - echo "APT::Default-Release \"stretch\";" >> /etc/apt/apt.conf.d/00default_release - echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial main" >> /etc/apt/sources.list.d/ubuntu-toolchain-r.list - apt-get install -qy gnupg - gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x60c317803a41ba51845e371a1e9377a2ba9ef27f - gpg --armor --export 0x60c317803a41ba51845e371a1e9377a2ba9ef27f | apt-key add - - apt-get update -q - apt-get install -qy -t xenial g++-9 - apt-get install -qy cmake pkg-config libmagick++-dev - rm -rf build && mkdir -p build && cd build - cmake .. - cmake --build . volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: clang7 image: debian:buster-slim pull: always environment: CXX: clang++ CXXFLAGS: -pipe -O2 LANG: en_US.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 -qy clang cmake pkg-config libmagick++-dev - rm -rf build && mkdir -p build && cd build - cmake .. - cmake --build . volumes: - name: debian-package-cache path: /var/cache/apt/archives --- kind: pipeline name: packages x86_64 volumes: - name: debian-package-cache host: path: /var/cache/debian-package-cache - name: centos-package-cache host: path: /var/cache/centos-package-cache - name: gpg-key host: path: /home/tastytea/misc/autosign_gpg.key trigger: event: - tag steps: - name: deb image: debian:stretch-slim pull: always environment: CXX: g++-6 CXXFLAGS: -pipe -O2 LANG: en_US.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 -qy g++-6 cmake pkg-config libmagick++-dev gnupg - rm -rf build && mkdir -p build && cd build - cmake -DWITH_DEB=YES .. - make package - gpg --import /var/autosign_gpg.key - gpg --verbose --detach-sign *.deb - cp -v identiconpp_${DRONE_TAG}-0_amd64.deb .. - cp -v identiconpp_${DRONE_TAG}-0_amd64.deb.sig .. volumes: - name: debian-package-cache path: /var/cache/apt/archives - name: gpg-key path: /var/autosign_gpg.key - name: rpm image: centos:7 pull: always environment: CXX: /opt/rh/devtoolset-6/root/usr/bin/g++ CXXFLAGS: -pipe -O2 LANG: en_US.utf-8 commands: - sed -i 's/keepcache=0/keepcache=1/' /etc/yum.conf - curl -s -o /var/cache/yum/epel-release-latest-7.noarch.rpm http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm - rpm -i /var/cache/yum/epel-release-latest-7.noarch.rpm - yum install -qy centos-release-scl - yum install -qy devtoolset-6 - scl enable devtoolset-6 bash - yum install -qy rpm-build ImageMagick-c++-devel gnupg - yum --enablerepo=epel install -qy cmake3 - rm -rf build && mkdir -p build && cd build - cmake3 -DWITH_RPM=YES .. - make package - gpg --import /var/autosign_gpg.key - gpg --verbose --detach-sign *.rpm - cp -v identiconpp-${DRONE_TAG}-0.x86_64.rpm .. - cp -v identiconpp-${DRONE_TAG}-0.x86_64.rpm.sig .. volumes: - name: centos-package-cache path: /var/cache/yum - name: gpg-key path: /var/autosign_gpg.key - name: 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: - identiconpp_${DRONE_TAG}-0_amd64.deb - identiconpp_${DRONE_TAG}-0_amd64.deb.sig - identiconpp-${DRONE_TAG}-0.x86_64.rpm - identiconpp-${DRONE_TAG}-0.x86_64.rpm.sig checksum: - sha512 - name: notify image: drillster/drone-email pull: always settings: host: cryptoparty-celle.de from: drone@tzend.de username: from_secret: email_username password: from_secret: email_password when: status: [ changed, failure ]