#kind: pipeline #type: exec #name: Continuous Integration # #steps: # - name: Prepare # commands: # - ln -s /var/lib/drone-runner-exec/.local $HOME/.local # # - name: Run Tests # commands: # - ./ci.py --ci-run-tests # - sonar-scanner -Dsonar.projectKey=SelfPrivacy-Flutter-App -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN" # environment: # SONARQUBE_TOKEN: # from_secret: SONARQUBE_TOKEN # # - name: Build Linux Target # commands: # - ./ci.py --ci-build-linux # # - name: Build APK Target # commands: # - ./ci.py --ci-build-apk # #trigger: # event: # - push # - pull_request # #node: # server: builder # #--- kind: pipeline type: exec name: Release steps: - name: Prepare commands: - ln -s /var/lib/drone-runner-exec/.local $HOME/.local - if podman volume exists release; then podman volume rm -f release; podman volume create release; else podman volume create release; fi - git config user.email "builder@selfprivacy.org" - git config user.name "Builder" - name: Build Intermediate Linux Release Artifact (Binary) commands: - ./ci.py --build-linux environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Build Intermediate Android Release Artifact (.APK) commands: - ./ci.py --build-apk environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Build Intermediate Android Release Artifact (Bundle) commands: - ./ci.py --build-bundle environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Sign Android Release Artifact (.APK) for Standalone Use commands: - ./ci.py --sign-apk-standalone environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Sign Android Release Artifact (.APK) for F-Droid Repository commands: - ./ci.py --sign-apk-fdroid environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Sign Android Release Artifact (Bundle) for Google Play commands: - ./ci.py --sign-bundle environment: STANDALONE_KEYSTORE_PASS: from_secret: STANDALONE_KEYSTORE_PASS FDROID_KEYSTORE_PASS: from_secret: FDROID_KEYSTORE_PASS GOOGLE_KEYSTORE_PASS: from_secret: GOOGLE_KEYSTORE_PASS - name: Package Linux AppImage Artifact commands: - ./ci.py --package-linux-appimage - name: Package Linux Flatpak Artifact commands: - ./ci.py --package-linux-flatpak - name: Package Linux Archive Artifact commands: - ./ci.py --package-linux-archive - name: Push Artifacts to the Release Volume commands: - git add -v *.AppImage *.AppImage.zsync *.flatpak *.apk *.apk.idsig *.aab *.tar.zstd - git commit -m Release - git archive --format=tar HEAD | podman volume import release - trigger: event: - tag node: server: builder --- kind: pipeline type: exec name: Deploy steps: - name: Prepare commands: - ln -s /var/lib/drone-runner-exec/.local $HOME/.local - podman unshare podman volume mount release - name: Create Release and Deploy Artifacts commands: - ./ci.py --deploy-gitea-release environment: GITEA_RELEASE_TOKEN: from_secret: GITEA_RELEASE_TOKEN - name: Deploy F-Droid Repo commands: - ./ci.py --deploy-fdroid-repo environment: SSH_PRIVATE_KEY: from_secret: SSH_PRIVATE_KEY trigger: event: - tag node: server: builder depends_on: - Release --- kind: pipeline type: exec name: Windows platform: os: windows arch: amd64 steps: - name: Build Windows Binary commands: - flutter build windows