From 9df10cc4c8ab3b065425e5f72c05e9ec60724066 Mon Sep 17 00:00:00 2001 From: Gurkengewuerz Date: Mon, 1 Jun 2020 19:32:37 +0200 Subject: [PATCH] switched from circleci to selfhosted droneci --- .circleci/config.yml | 109 ------------------------------------------- .drone.yml | 71 ++++++++++++++++++++++++++++ README.md | 6 ++- packages/makedeb.sh | 2 + 4 files changed, 77 insertions(+), 111 deletions(-) delete mode 100644 .circleci/config.yml create mode 100644 .drone.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 33da868..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,109 +0,0 @@ -workflows: - version: 2 - build: - jobs: - - build_ubuntu - - build_arch - -version: 2 -jobs: - build_ubuntu: - docker: - - image: buildpack-deps:19.10 - steps: - - run: - name: Install pre deps - command: | - 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 \ - - run: - name: QMake Version - command: qmake --version - - checkout - - run: git submodule sync - - run: git submodule update --init - - run: - name: LS - command: ls -lahR ~/project - - run: - name: Create Build Env - command: mkdir build && pwd && ls - - run: - name: Build - command: | - cd build && pwd && ls; - qmake ..; - make -j2; - cd ..; - - run: - name: Create Artifact Path - command: mkdir /kshare - - run: - name: Store Build - command: cp build/src/kshare /kshare/ - - run: - name: Build Debian Package - command: | - cd packages/; - ./makedeb.sh ci; - cp *.deb /kshare/ - - store_artifacts: - path: /kshare/ - build_arch: - docker: - - image: archlinux/base:latest - steps: - - run: - name: Install pre deps - command: | - pacman -Sy \ - && pacman -S --noconfirm \ - base-devel \ - git \ - sudo \ - wget \ - - run: - name: disable_coredump - command: echo "Set disable_coredump false" >> /etc/sudo.conf - - run: - name: create build user - command: | - 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 \ - - run: - name: wget PKGBUILD - command: cd /home/build &&sudo -u build wget https://raw.githubusercontent.com/Gurkengewuerz/KShare/${CIRCLE_BRANCH}/packages/arch/${CIRCLE_BRANCH}-KShare/PKGBUILD - - run: - name: Where am I? - command: cd /home/build && pwd && ls -lah - - run: - name: Make arch package and install dependencies - command: cd /home/build && sudo -u build makepkg --syncdeps --noconfirm - - run: - name: Create Artifact Path - command: mkdir /kshare - - run: - name: Store Build - command: cp /home/build/*.pkg.tar.xz /kshare/ - - store_artifacts: - path: /kshare/ diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..36cf6fb --- /dev/null +++ b/.drone.yml @@ -0,0 +1,71 @@ +kind: pipeline +type: docker +name: build + +platform: + os: linux + arch: amd64 + +steps: + - 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_COMMIT_BRANCH}/packages/arch/${DRONE_COMMIT_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: 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: 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_REPO_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: {} \ No newline at end of file diff --git a/README.md b/README.md index 003418e..5a713dd 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,10 @@ Originally written by [ArsenArsen](https://github.com/ArsenArsen) and here enhan | | Linux | Windows | |--------|-------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| master | [![CircleCI](https://circleci.com/gh/Gurkengewuerz/KShare/tree/master.svg?style=svg)](https://circleci.com/gh/Gurkengewuerz/KShare/tree/master) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/master?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/master) | -| dev | [![CircleCI](https://circleci.com/gh/Gurkengewuerz/KShare/tree/dev.svg?style=svg)](https://circleci.com/gh/Gurkengewuerz/KShare/tree/dev) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/dev?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/dev) | +| master | [![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/master)](https://giteaci.mc8051.de/Gurkengewuerz/KShare) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/master?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/master) | +| dev | [![Build Status](https://giteaci.mc8051.de/api/badges/Gurkengewuerz/KShare/status.svg?ref=refs/heads/dev)](https://giteaci.mc8051.de/Gurkengewuerz/KShare) | [![Build status](https://ci.appveyor.com/api/projects/status/ujxmg1dk7f5p8ijh/branch/dev?svg=true)](https://ci.appveyor.com/project/Gurkengewuerz/kshare/branch/dev) | + +[Artifacts](https://artifacts.mc8051.de/Gurkengewuerz/KShare) ## Screenshot Made with KShare itself, of course :) diff --git a/packages/makedeb.sh b/packages/makedeb.sh index d47ff1f..551d346 100755 --- a/packages/makedeb.sh +++ b/packages/makedeb.sh @@ -29,8 +29,10 @@ else fi cd work +echo "md5sum" >&2 md5sum usr/bin/kshare usr/share/applications/KShare.desktop > DEBIAN/md5sums cd .. +echo "dpkg-deb" >&2 dpkg-deb -b work/ mv work.deb kshare_v${VERSION}.deb rm -rf work