135 lines
4.2 KiB
YAML
135 lines
4.2 KiB
YAML
workspace:
|
|
base: /media/sf_GOPATH1/src/cwtch.im
|
|
path: ui
|
|
|
|
pipeline:
|
|
build-linux:
|
|
mem_limit: 3G
|
|
image: therecipe/qt:linux_static
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
event: [ push, pull_request ]
|
|
environment:
|
|
- QT_DIR=/opt/Qt
|
|
- QT_DOCKER='true'
|
|
- QT_API=5.13.0
|
|
- GO111MODULE=on
|
|
commands:
|
|
- export PATH=$PATH:/home/user/work/bin:/media/sf_GOPATH1/bin
|
|
- apt-get -qq update && apt-get --no-install-recommends -qq -y install ca-certificates curl git openssh-client
|
|
- go mod download
|
|
- $QT_DIR/$QT_API/gcc_64/bin/lrelease ui.pro
|
|
- git fetch --tags
|
|
- export VERSION=`git describe --tags`
|
|
- export BUILDDATE=`date +%G-%m-%d-%H-%M`
|
|
- go mod vendor
|
|
- qtdeploy -ldflags "-X main.buildVer=$VERSION -X main.buildDate=$BUILDDATE" build linux
|
|
- cp README.md deploy/linux
|
|
- cp -R assets deploy/linux/
|
|
- export FILENAME=cwtch-linux-$BUILDDATE.tar.gz
|
|
- cd deploy
|
|
- mv linux cwtch
|
|
- tar -czf $FILENAME cwtch
|
|
- sha256sum $FILENAME > $FILENAME.sha256
|
|
- rm -r cwtch
|
|
build-android:
|
|
mem_limit: 3G
|
|
image: therecipe/qt:android
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
event: push
|
|
environment:
|
|
- QT_DIR=/opt/Qt
|
|
- QT_DOCKER='true'
|
|
- QT_API=5.13.0
|
|
- ANDROID_NDK_DIR=/home/user/android-ndk-r18b
|
|
- ANDROID_SDK_DIR=/home/user/android-sdk-linux
|
|
- GO111MODULE=on
|
|
commands:
|
|
- export PATH=$PATH:/home/user/work/bin:/media/sf_GOPATH1/bin
|
|
- apt-get -qq update && apt-get --no-install-recommends -qq -y install ca-certificates curl git
|
|
- rm -r vendor/
|
|
- make clean
|
|
- go mod download
|
|
- export VERSION=`git describe --tags`
|
|
- export BUILDDATE=`date +%G-%m-%d-%H-%M`
|
|
- go mod vendor
|
|
- qtsetup generate android
|
|
- mv assets android/
|
|
- qtdeploy -ldflags "-X main.buildVer=$VERSION -X main.buildDate=$BUILDDATE" build android
|
|
- mv android/assets assets
|
|
- cd deploy
|
|
- export FILENAME=cwtch-android-$BUILDDATE.apk
|
|
- cp android/build-debug.apk $FILENAME
|
|
- sha256sum $FILENAME > $FILENAME.sha256
|
|
build-windows:
|
|
mem_limit: 3G
|
|
image: therecipe/qt:windows_64_static
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
event: push
|
|
environment:
|
|
- QT_DIR=/opt/Qt
|
|
- QT_DOCKER='true'
|
|
- QT_API=5.13.0
|
|
- GO111MODULE=on
|
|
commands:
|
|
- export PATH=$PATH:/home/user/work/bin:/media/sf_GOPATH1/bin
|
|
- apt-get -qq update && apt-get --no-install-recommends -qq -y install ca-certificates curl git zip
|
|
- rm -r vendor
|
|
- make clean
|
|
- go mod download
|
|
- export VERSION=`git describe --tags`
|
|
- export BUILDDATE=`date +%G-%m-%d-%H-%M`
|
|
- go mod vendor
|
|
- qtdeploy -ldflags "-X main.buildVer=$VERSION -X main.buildDate=$BUILDDATE" build windows
|
|
- cp README.md deploy/windows
|
|
- cp -R assets deploy/windows/
|
|
- cp -r windows/* deploy/windows
|
|
- cd deploy
|
|
- mv windows cwtch
|
|
- export FILENAME=cwtch-windows-$BUILDDATE.zip
|
|
- zip -r $FILENAME cwtch
|
|
- sha256sum $FILENAME > $FILENAME.sha256
|
|
- rm -r cwtch
|
|
deploy-buildfiles:
|
|
image: pivotaldata/concourse-ssh
|
|
secrets: [buildfiles_key]
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
event: push
|
|
status: [ success ]
|
|
commands:
|
|
- apk add --no-cache git
|
|
- echo $BUILDFILES_KEY > ~/id_rsab64
|
|
- base64 -d ~/id_rsab64 > ~/id_rsa
|
|
- chmod 400 ~/id_rsa
|
|
- export DIR=`date +%G.%m.%d-%H.%M`-`git describe --tags`
|
|
- cd deploy
|
|
- mkdir $DIR
|
|
- mv cwtch* $DIR/
|
|
- scp -r -o StrictHostKeyChecking=no -i ~/id_rsa $DIR buildfiles@openprivacy.ca:/home/buildfiles/buildfiles/
|
|
notify-email:
|
|
image: drillster/drone-email
|
|
host: build.openprivacy.ca
|
|
port: 25
|
|
skip_verify: true
|
|
from: drone@openprivacy.ca
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
status: [ failure ]
|
|
notify-gogs:
|
|
image: openpriv/drone-gogs
|
|
when:
|
|
repo: cwtch.im/ui
|
|
branch: master
|
|
event: pull_request
|
|
status: [ success, changed, failure ]
|
|
secrets: [gogs_account_token]
|
|
gogs_url: https://git.openprivacy.ca
|