mirror of
https://git.selfprivacy.org/kherel/selfprivacy.org.app.git
synced 2024-11-16 21:53:17 +00:00
test pipeline
This commit is contained in:
parent
13c60141e5
commit
e2ea1c7eb9
181
.drone.yml
181
.drone.yml
|
@ -2,13 +2,13 @@ kind: pipeline
|
|||
type: exec
|
||||
name: Continuous Integration
|
||||
|
||||
environment:
|
||||
test: echo hi
|
||||
|
||||
steps:
|
||||
- name: Build Debug Artifacts
|
||||
- name: Test
|
||||
commands:
|
||||
- flutter build apk --debug --split-per-abi
|
||||
- mv build/app/outputs/flutter-apk/*-debug.apk .
|
||||
- rename app pro.kherel.selfprivacy *.apk && rename debug "$DRONE_COMMIT" *.apk
|
||||
- ls *.apk
|
||||
- "$test"
|
||||
|
||||
trigger:
|
||||
event:
|
||||
|
@ -18,98 +18,81 @@ trigger:
|
|||
node:
|
||||
server: builder
|
||||
|
||||
---
|
||||
#---
|
||||
|
||||
kind: pipeline
|
||||
type: exec
|
||||
name: Release
|
||||
|
||||
steps:
|
||||
- name: Prepare for Build
|
||||
commands:
|
||||
# Reset building environment
|
||||
- nixos-container stop isolated
|
||||
- nixos-container start isolated
|
||||
# Prepare SSH keys
|
||||
- eval `ssh-agent -s`
|
||||
- echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# Copy sources to the building environment
|
||||
- scp -r `pwd` builder@isolated:~
|
||||
environment:
|
||||
SSH_PRIVATE_KEY:
|
||||
from_secret: SSH_PRIVATE_KEY
|
||||
|
||||
- name: Build Intermediate Release Artifact
|
||||
commands:
|
||||
# Prepare SSH keys
|
||||
- eval `ssh-agent -s`
|
||||
- echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# Build intermediate release artifact
|
||||
- ssh builder@isolated "cd src && flutter build apk --release"
|
||||
# Fetch the release artifact
|
||||
- scp builder@isolated:src/build/app/outputs/flutter-apk/app-release.apk .
|
||||
environment:
|
||||
SSH_PRIVATE_KEY:
|
||||
from_secret: SSH_PRIVATE_KEY
|
||||
|
||||
- name: Sign Release Artifact for Standalone Use
|
||||
commands:
|
||||
# Get app build ID
|
||||
- export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# Prepare SSH keys
|
||||
- eval `ssh-agent -s`
|
||||
- echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# Upload and sign the artifact
|
||||
- scp app-release.apk builder@isolated:~
|
||||
- ssh builder@isolated "zipalign -f -v 4 app-release.apk standalone_app-release.apk && apksigner sign --ks /run/secrets/standalone-keystore --ks-key-alias standalone --ks-pass file:/run/secrets/standalone-keystore-pass standalone_app-release.apk"
|
||||
# Fetch the signed artifact
|
||||
- scp builder@isolated:standalone_app-release.apk standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk
|
||||
- scp builder@isolated:standalone_app-release.apk.idsig standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk.idsig
|
||||
environment:
|
||||
SSH_PRIVATE_KEY:
|
||||
from_secret: SSH_PRIVATE_KEY
|
||||
|
||||
- name: Sign Release Artifact for F-Droid Repository
|
||||
commands:
|
||||
# Get app build ID
|
||||
- export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# Prepare SSH keys
|
||||
- eval `ssh-agent -s`
|
||||
- echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# Upload and sign the artifact
|
||||
- scp app-release.apk fdroid@isolated:unsigned/pro.kherel.selfprivacy_"$APP_BUILD_ID".apk
|
||||
- ssh fdroid@isolated 'export FDROID_KEY_STORE_PASS=`cat /run/secrets/fdroid-keystore-pass` && fdroid publish && fdroid update'
|
||||
- scp -r fdroid@isolated:repo .
|
||||
environment:
|
||||
SSH_PRIVATE_KEY:
|
||||
from_secret: SSH_PRIVATE_KEY
|
||||
|
||||
- name: Create Release on Gitea Repository
|
||||
commands:
|
||||
# Get app build ID
|
||||
- export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# Prepare tea CLI
|
||||
- tea login add --token "$GITEA_RELEASE_TOKEN" --url https://git.selfprivacy.org
|
||||
# Create release and push artifacts
|
||||
- tea releases create --repo "$DRONE_REPO" --tag "$DRONE_SEMVER" --title "$DRONE_SEMVER" --asset standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk --asset standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk.idsig
|
||||
environment:
|
||||
GITEA_RELEASE_TOKEN:
|
||||
from_secret: GITEA_RELEASE_TOKEN
|
||||
|
||||
- name: Deploy F-Droid Repository
|
||||
commands:
|
||||
# Prepare SSH keys
|
||||
- eval `ssh-agent -s`
|
||||
- echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# Copy the repository to the production server
|
||||
- scp -r repo/* deployer@production:/var/www/fdroid.selfprivacy.org
|
||||
environment:
|
||||
SSH_PRIVATE_KEY:
|
||||
from_secret: SSH_PRIVATE_KEY
|
||||
|
||||
trigger:
|
||||
event:
|
||||
- tag
|
||||
|
||||
node:
|
||||
server: builder
|
||||
#kind: pipeline
|
||||
#type: exec
|
||||
#name: Release
|
||||
#
|
||||
#steps:
|
||||
# - name: Build Intermediate Release Artifact
|
||||
# commands:
|
||||
# # Prepare SSH keys
|
||||
# - eval `ssh-agent -s`
|
||||
# - echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# # Build intermediate release artifact
|
||||
# - ssh builder@isolated "cd src && flutter build apk --release"
|
||||
# # Fetch the release artifact
|
||||
# - scp builder@isolated:src/build/app/outputs/flutter-apk/app-release.apk .
|
||||
#
|
||||
# - name: Sign Release Artifact for Standalone Use
|
||||
# commands:
|
||||
# # Get app build ID
|
||||
# - export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# # Prepare SSH keys
|
||||
# - eval `ssh-agent -s`
|
||||
# - echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# # Upload and sign the artifact
|
||||
# - scp app-release.apk builder@isolated:~
|
||||
# - ssh builder@isolated "zipalign -f -v 4 app-release.apk standalone_app-release.apk && apksigner sign --ks /run/secrets/standalone-keystore --ks-key-alias standalone --ks-pass file:/run/secrets/standalone-keystore-pass standalone_app-release.apk"
|
||||
# # Fetch the signed artifact
|
||||
# - scp builder@isolated:standalone_app-release.apk standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk
|
||||
# - scp builder@isolated:standalone_app-release.apk.idsig standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk.idsig
|
||||
# environment:
|
||||
# SSH_PRIVATE_KEY:
|
||||
# from_secret: SSH_PRIVATE_KEY
|
||||
#
|
||||
# - name: Sign Release Artifact for F-Droid Repository
|
||||
# commands:
|
||||
# # Get app build ID
|
||||
# - export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# # Prepare SSH keys
|
||||
# - eval `ssh-agent -s`
|
||||
# - echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# # Upload and sign the artifact
|
||||
# - scp app-release.apk fdroid@isolated:unsigned/pro.kherel.selfprivacy_"$APP_BUILD_ID".apk
|
||||
# - ssh fdroid@isolated 'export FDROID_KEY_STORE_PASS=`cat /run/secrets/fdroid-keystore-pass` && fdroid publish && fdroid update'
|
||||
# - scp -r fdroid@isolated:repo .
|
||||
# environment:
|
||||
# SSH_PRIVATE_KEY:
|
||||
# from_secret: SSH_PRIVATE_KEY
|
||||
#
|
||||
# - name: Create Release on Gitea Repository
|
||||
# commands:
|
||||
# # Get app build ID
|
||||
# - export APP_BUILD_ID=`yq '.version' pubspec.yaml | cut -d "+" -f2`
|
||||
# # Prepare tea CLI
|
||||
# - tea login add --token "$GITEA_RELEASE_TOKEN" --url https://git.selfprivacy.org
|
||||
# # Create release and push artifacts
|
||||
# - tea releases create --repo "$DRONE_REPO" --tag "$DRONE_SEMVER" --title "$DRONE_SEMVER" --asset standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk --asset standalone_pro.kherel.selfprivacy_"$APP_BUILD_ID".apk.idsig
|
||||
# environment:
|
||||
# GITEA_RELEASE_TOKEN:
|
||||
# from_secret: GITEA_RELEASE_TOKEN
|
||||
#
|
||||
# - name: Deploy F-Droid Repository
|
||||
# commands:
|
||||
# # Prepare SSH keys
|
||||
# - eval `ssh-agent -s`
|
||||
# - echo "$SSH_PRIVATE_KEY" | ssh-add -
|
||||
# # Copy the repository to the production server
|
||||
# - scp -r repo/* deployer@production:/var/www/fdroid.selfprivacy.org
|
||||
# environment:
|
||||
# SSH_PRIVATE_KEY:
|
||||
# from_secret: SSH_PRIVATE_KEY
|
||||
#
|
||||
#trigger:
|
||||
# event:
|
||||
# - tag
|
||||
#
|
||||
#node:
|
||||
# server: builder
|
||||
|
|
Loading…
Reference in a new issue