KShare/.drone.yml

72 lines
2.6 KiB
YAML

kind: pipeline
type: docker
name: build
platform:
os: linux
arch: amd64
steps:
- name: build-ubuntu
image: buildpack-deps:19.10
volumes:
- name: cache
path: /release
commands:
- apt-get update -yqq && apt-get install -yqq build-essential cmake \gcc g++ qt5-default qt5-qmake qtmultimedia5-dev libqt5svg5-dev libx11-dev libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libqt5x11extras5-dev libxcb-util-dev libxcb-cursor-dev libxcb1-dev
- qmake --version
- git submodule sync
- git submodule update --init
- mkdir build && pwd && ls -lahR .
- cd build && pwd && ls; qmake ..; make -j2; cd ..
- mkdir /release || true
- cp build/src/kshare /release/
- cd packages/; ./makedeb.sh ci; cp *.deb /release/; cd ..
- rm -rf build/
- name: build-arch
image: archlinux/base:latest
volumes:
- name: cache
path: /release
commands:
- pacman -Sy && pacman -S --noconfirm base-devel git sudo wget
- "echo 'Set disable_coredump false' >> /etc/sudo.conf"
- "mkdir /home/build && useradd --home /home/build --shell=/bin/false build && usermod -L build && chown build:build /home/build && echo 'build ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers && echo 'root ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers"
- cd /home/build && sudo -u build wget https://raw.githubusercontent.com/Gurkengewuerz/KShare/${DRONE_BRANCH}/packages/arch/${DRONE_BRANCH}-KShare/PKGBUILD
- cd /home/build && pwd && ls -lah
- cd /home/build && sudo -u build makepkg --syncdeps --noconfirm
- mkdir /release || true
- cp /home/build/*.pkg.tar.xz /release/
- name: artifacts
image: alpine:latest
volumes:
- name: cache
path: /release
commands:
- cat /etc/issue
- apk add --no-cache openssh-client ca-certificates sshpass
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- export REMOTE_PATH=/data/${DRONE_REPO_OWNER}/${DRONE_REPO_NAME}/${DRONE_BRANCH}/$(date +'%Y%m%d-%H%M%S')-${DRONE_COMMIT_SHA:0:9}/
- export SSHPASS=$${REMOTE_PASSWORD}
- sshpass -e ssh $${REMOTE_USERNAME}@$${REMOTE_HOST} "mkdir -p $REMOTE_PATH"
- "sshpass -e scp -r /release/* $${REMOTE_USERNAME}@$${REMOTE_HOST}:$REMOTE_PATH"
environment:
REMOTE_USERNAME:
from_secret: remote_username
REMOTE_PASSWORD:
from_secret: remote_password
REMOTE_HOST:
from_secret: remote_host
when:
event:
- push
- tag
volumes:
- name: cache
temp: {}