160 lines
4.1 KiB
YAML
160 lines
4.1 KiB
YAML
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: linux-android-test
|
|
|
|
steps:
|
|
- name: fetch
|
|
image: cirrusci/flutter:dev
|
|
volumes:
|
|
- name: deps
|
|
path: /root/.pub-cache
|
|
commands:
|
|
- wget https://git.openprivacy.ca/openprivacy/buildfiles/raw/master/tor/tor
|
|
- wget https://git.openprivacy.ca/openprivacy/buildfiles/raw/master/tor/torrc
|
|
- chmod a+x tor
|
|
- git fetch --tags
|
|
- echo `git describe --tags` > VERSION
|
|
- echo `date +%G-%m-%d-%H-%M` > BUILDDATE
|
|
- flutter pub get
|
|
- mkdir deploy
|
|
|
|
#- name: quality
|
|
# image: golang
|
|
# volumes:
|
|
# - name: deps
|
|
# path: /go
|
|
# commands:
|
|
# - go list ./... | xargs go vet
|
|
# - go list ./... | xargs golint
|
|
# #Todo: fix all the lint errors and add `-set_exit_status` above to enforce linting
|
|
|
|
- name: build-linux
|
|
image: openpriv/flutter-desktop:dev
|
|
volumes:
|
|
- name: deps
|
|
path: /root/.pub-cache
|
|
commands:
|
|
- flutter build linux
|
|
- mkdir deploy/linux
|
|
- cp -r build/linux/x64/release/bundle/* deploy/linux
|
|
- cp /sdks/flutter/bin/cache/artifacts/engine/linux-x64/icudtl.dat deploy/linux
|
|
|
|
- name: build-android
|
|
image: cirrusci/flutter:dev
|
|
volumes:
|
|
- name: deps
|
|
path: /root/.pub-cache
|
|
commands:
|
|
- flutter build appbundle
|
|
# or build apk --split-per-abi ?
|
|
- mkdir deploy/android
|
|
- cp build/app/outputs/bundle/release/app-release.aab deploy/android
|
|
|
|
- name: widget-tests
|
|
image: cirrusci/flutter:dev
|
|
volumes:
|
|
- name: deps
|
|
path: /root/.pub-cache
|
|
commands:
|
|
# - flutter config --enable-linux-desktop
|
|
- flutter test --coverage
|
|
- genhtml coverage/lcov.info -o coverage/html
|
|
|
|
# Todo: gonna need more work on container
|
|
# https://flutter.dev/desktop
|
|
# requirements: Visual Studio 2019 (not to be confused with Visual Studio Code) with the “Desktop development with C++” workload installed, including all of its default components
|
|
#- name: build-windows
|
|
# image: cirrusci/flutter:dev
|
|
#- volumes:
|
|
# - name: deps
|
|
# path: /root/.pub-cache
|
|
# commands:
|
|
# - flutter config --enable-windows-desktop
|
|
# - flutter build windows
|
|
|
|
- name: deploy-buildfiles
|
|
image: kroniak/ssh-client
|
|
environment:
|
|
BUILDFILES_KEY:
|
|
from_secret: buildfiles_key
|
|
secrets: [gogs_account_token]
|
|
when:
|
|
event: push
|
|
status: [ success ]
|
|
commands:
|
|
- echo $BUILDFILES_KEY > ~/id_rsab64
|
|
- base64 -d ~/id_rsab64 > ~/id_rsa
|
|
- chmod 400 ~/id_rsa
|
|
- export DIR=flwtch-`cat VERSION`-`cat BUILDDATE`
|
|
- mv deploy $DIR
|
|
- cp -r coverage/html $DIR/coverage-tests
|
|
- cp -r test/failures $DIR/test-failures || true
|
|
- cd $DIR
|
|
- find . -type f -exec sha256sum {} \; > ./../sha256s.txt
|
|
- mv ./../sha256s.txt .
|
|
- cd ..
|
|
# TODO: do deployment once files actaully compile
|
|
- scp -r -o StrictHostKeyChecking=no -i ~/id_rsa $DIR buildfiles@openprivacy.ca:/home/buildfiles/buildfiles/
|
|
|
|
- name: notify-email
|
|
image: drillster/drone-email
|
|
settings:
|
|
host: build.openprivacy.ca
|
|
port: 25
|
|
skip_verify: true
|
|
from: drone@openprivacy.ca
|
|
when:
|
|
status: [ failure ]
|
|
|
|
- name: notify-gogs
|
|
image: openpriv/drone-gogs
|
|
when:
|
|
event: pull_request
|
|
status: [ success, changed, failure ]
|
|
environment:
|
|
GOGS_ACCOUNT_TOKEN:
|
|
from_secret: gogs_account_token
|
|
settings:
|
|
gogs_url: https://git.openprivacy.ca
|
|
|
|
volumes:
|
|
- name: deps
|
|
temp: {}
|
|
|
|
trigger:
|
|
repo: flutter/flutter_app
|
|
branch: trunk
|
|
event:
|
|
- push
|
|
- pull_request
|
|
|
|
|
|
---
|
|
kind: pipeline
|
|
type: docker
|
|
name: windows
|
|
|
|
platform:
|
|
os: windows
|
|
version: 1809
|
|
|
|
steps:
|
|
- name: fetch
|
|
image: openpriv/flutter-desktop:windows-dev
|
|
commands:
|
|
- git fetch --tags
|
|
- git describe --tags > VERSION
|
|
- date +%G-%m-%d-%H-%M > BUILDDATE
|
|
- name: build-windows
|
|
image: openpriv/flutter-desktop:windows-dev
|
|
commands:
|
|
- flutter pub get
|
|
- mkdir deploy
|
|
- flutter build windows
|
|
|
|
trigger:
|
|
repo: flutter/flutter_app
|
|
branch: trunk
|
|
event:
|
|
- push |