--- kind: pipeline type: docker name: linux-android-test clone: disable: true steps: - name: clone image: cirrusci/flutter:dev environment: buildbot_key_b64: from_secret: buildbot_key_b64 commands: - mkdir ~/.ssh - echo $buildbot_key_b64 > ~/.ssh/id_rsa.b64 - base64 -d ~/.ssh/id_rsa.b64 > ~/.ssh/id_rsa - chmod 400 ~/.ssh/id_rsa # force by pass of ssh host key check, less secure - ssh-keyscan -H git.openprivacy.ca >> ~/.ssh/known_hosts - git clone gogs@git.openprivacy.ca:flutter/flutter_app.git . - git checkout $DRONE_COMMIT - 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 - echo `git describe --tags` > VERSION - echo `date +%G-%m-%d-%H-%M` > BUILDDATE - flutter pub get - mkdir deploy - ./fetch-libcwtch-go.sh #- 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:linux-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 linux/cwtch.desktop deploy/linux - cp linux/cwtch.png deploy/linux - cp linux/libCwtch.so deploy/linux/lib/ - cp /sdks/flutter/bin/cache/artifacts/engine/linux-x64/icudtl.dat deploy/linux - name: build-android image: cirrusci/flutter:dev when: event: push environment: upload_jks_file_b64: from_secret: upload_jks_file_b64 upload_jks_pass: from_secret: upload_jks_pass volumes: - name: deps path: /root/.pub-cache commands: - echo $upload_jks_file_b64 > upload-keystore.jks.b64 - base64 -i --decode upload-keystore.jks.b64 > android/app/upload-keystore.jks - sed -i "s/%jks-password%/$upload_jks_pass/g" android/key.properties - flutter build appbundle # cant do debug for final release, this is just a stop gap - flutter build apk # or build apk --split-per-abi ? - mkdir deploy/android - cp build/app/outputs/bundle/release/app-release.aab deploy/android - cp build/app/outputs/apk/release/app-release.apk deploy/android #- cp build/app/outputs/flutter-apk/app-debug.apk 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 #arch: amd64 version: 1809 clone: disable: true steps: - name: clone image: openpriv/flutter-desktop:windows-sdk30-fdev2.2rc environment: buildbot_key_b64: from_secret: buildbot_key_b64 commands: #- # force by pass of ssh host key check, less secure #- ssh-keyscan -H git.openprivacy.ca >> ..\known_hosts - echo $Env:buildbot_key_b64 > ..\id_rsa.b64 - certutil -decode ..\id_rsa.b64 ..\id_rsa - git init # -o UserKnownHostsFile=../known_hosts - git config core.sshCommand 'ssh -o StrictHostKeyChecking=no -i ../id_rsa' - git remote add origin gogs@git.openprivacy.ca:flutter/flutter_app.git - git pull origin trunk - git fetch --tags - git checkout $DRONE_COMMIT - name: fetch image: openpriv/flutter-desktop:windows-sdk30-fdev2.2rc commands: - powershell -command "Invoke-WebRequest -Uri https://www.torproject.org/dist/torbrowser/10.0.16/tor-win32-0.4.5.7.zip -OutFile tor.zip" - powershell -command "if ((Get-FileHash tor.zip -Algorithm sha512).Hash -ne '2b7d683f036d0fec149f1d2bdfcf5b7ef4c337005a2b685c056b00047fdb2b57d4c25b8559ad7ef5c7a030b273934be82a9f83ef6e391f5d7d13d8d6c83e8048' ) { Write-Error 'tor.zip sha512sum mismatch' }" - git describe --tags > VERSION - powershell -command "Get-Date -Format 'yyyy-MM-dd-HH-mm'" > BUILDDATE - .\fetch-libcwtch-go.ps1 - - name: build-windows image: openpriv/flutter-desktop:windows-beta commands: - flutter pub get - flutter build windows # flwtch-`cat VERSION`-`cat BUILDDATE` - $Env:buildname = 'flwtch-win-' - $Env:buildname += type .\VERSION - $Env:buildname += '-' - $Env:buildname += type .\BUILDDATE - $Env:builddir += $Env:buildname - $Env:zip = 'flwtch.zip' - $Env:sha = $Env:zip - $Env:sha += '.sha512' - mkdir deploy - move build\\windows\\runner\\Release $Env:builddir - copy windows\libCwtch.dll $Env:builddir - powershell -command "Expand-Archive -Path tor.zip -DestinationPath $Env:builddir\Tor" - powershell -command "Compress-Archive -Path $Env:builddir -DestinationPath $Env:zip" - powershell -command "(Get-FileHash *.zip -Algorithm sha512).Hash" > $Env:sha - mkdir deploy\$Env:builddir - move $Env:zip deploy\$Env:builddir - move $Env:sha deploy\$Env:builddir - name: deploy-windows image: openpriv/flutter-desktop:windows-sdk30-fdev2.2rc when: event: push status: [ success ] environment: BUILDFILES_KEY: from_secret: buildfiles_key commands: - echo $Env:BUILDFILES_KEY > id_rsab64 - certutil -decode id_rsab64 id_rsa - scp -r -o StrictHostKeyChecking=no -i id_rsa deploy\\* buildfiles@openprivacy.ca:/home/buildfiles/buildfiles/ trigger: repo: flutter/flutter_app branch: trunk event: - push