mirror of
https://git.selfprivacy.org/kherel/selfprivacy.org.app.git
synced 2024-11-17 14:19:16 +00:00
188 lines
4.4 KiB
YAML
188 lines
4.4 KiB
YAML
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
|
|
|
|
steps:
|
|
- name: Build Windows Binary
|
|
commands:
|
|
- flutter build windows
|
|
|
|
node:
|
|
server: windows
|