128 lines
4.5 KiB
YAML
128 lines
4.5 KiB
YAML
pipeline:
|
|
gcc6:
|
|
image: debian:stretch-slim
|
|
pull: true
|
|
environment:
|
|
- LANG=C.utf8
|
|
- CXX=g++-6
|
|
- CXXFLAGS=-pipe -O2
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- echo "APT::Default-Release \"stretch\";" >> /etc/apt/apt.conf.d/00default_release
|
|
- echo "deb http://deb.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list
|
|
- apt-get update -q
|
|
- apt-get install -qy build-essential cmake pkg-config
|
|
- apt-get install -qy libcurl4-openssl-dev libjsoncpp-dev
|
|
- apt-get install -qy -t sid libcurlpp-dev
|
|
- apt-get install -qy rpm file
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -DWITH_EXAMPLES=ON -DWITH_TESTS=ON ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
- ctest ..
|
|
- make package
|
|
- cmake -DWITH_DEB=ON ..
|
|
- make package
|
|
- cmake -DWITH_DEB=OFF -DWITH_RPM=ON ..
|
|
- make package
|
|
volumes:
|
|
- /var/cache/debian-package-cache:/var/cache/apt/archives
|
|
|
|
gcc7:
|
|
image: debian:stretch-slim
|
|
pull: true
|
|
when:
|
|
event: [push, pull_request]
|
|
environment:
|
|
- LANG=C.utf8
|
|
- CXX=g++-7
|
|
- CXXFLAGS=-pipe -O2
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- apt-get update -q
|
|
- echo "APT::Default-Release \"stretch\";" >> /etc/apt/apt.conf.d/00default_release
|
|
- echo "deb http://deb.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list
|
|
- 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 build-essential cmake pkg-config
|
|
- apt-get install -qy -t xenial g++-7
|
|
- apt-get install -qy libcurl4-openssl-dev libjsoncpp-dev
|
|
- apt-get install -qy -t sid libcurlpp-dev
|
|
- apt-get install -qy rpm file
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -DWITH_EXAMPLES=ON -DWITH_TESTS=ON ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
volumes:
|
|
- /var/cache/debian-package-cache:/var/cache/apt/archives
|
|
|
|
gcc8:
|
|
image: debian:stretch-slim
|
|
pull: true
|
|
when:
|
|
event: [push, pull_request]
|
|
environment:
|
|
- LANG=C.utf8
|
|
- CXX=g++-8
|
|
- CXXFLAGS=-pipe -O2
|
|
commands:
|
|
- rm /etc/apt/apt.conf.d/docker-clean
|
|
- apt-get update -q
|
|
- echo "APT::Default-Release \"stretch\";" >> /etc/apt/apt.conf.d/00default_release
|
|
- echo "deb http://deb.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list
|
|
- 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 build-essential cmake pkg-config
|
|
- apt-get install -qy -t xenial g++-8
|
|
- apt-get install -qy libcurl4-openssl-dev libjsoncpp-dev
|
|
- apt-get install -qy -t sid libcurlpp-dev
|
|
- apt-get install -qy rpm file
|
|
- rm -rf build && mkdir -p build && cd build
|
|
- cmake -DWITH_EXAMPLES=ON -DWITH_TESTS=ON ..
|
|
- make VERBOSE=1
|
|
- make install DESTDIR=install
|
|
volumes:
|
|
- /var/cache/debian-package-cache:/var/cache/apt/archives
|
|
|
|
prepare_release:
|
|
image: debian:stretch-slim
|
|
pull: true
|
|
when:
|
|
event: tag
|
|
commands:
|
|
- cp -v build/mastodon-cpp-${DRONE_TAG}_x86_64.tar.gz .
|
|
- cp -v build/libmastodon-cpp_${DRONE_TAG}-0_amd64.deb .
|
|
- cp -v build/libmastodon-cpp-${DRONE_TAG}-0.x86_64.rpm .
|
|
|
|
gitea_release:
|
|
image: plugins/gitea-release
|
|
pull: true
|
|
when:
|
|
event: tag
|
|
base_url: https://schlomp.space
|
|
secrets: [ gitea_token ]
|
|
title: ${DRONE_TAG}
|
|
prerelease: true
|
|
files:
|
|
- mastodon-cpp-${DRONE_TAG}_x86_64.tar.gz
|
|
- libmastodon-cpp_${DRONE_TAG}-0_amd64.deb
|
|
- libmastodon-cpp-${DRONE_TAG}-0.x86_64.rpm
|
|
checksum:
|
|
- sha256
|
|
- sha512
|
|
|
|
notify:
|
|
when:
|
|
status: [ changed, failure ]
|
|
image: drillster/drone-email
|
|
pull: true
|
|
host: cryptoparty-celle.de
|
|
secrets: [ email_username, email_password ]
|
|
from: drone@tzend.de
|