summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2023-03-27 22:20:08 +0300
committerAndrew Dolgov <[email protected]>2023-03-27 22:20:08 +0300
commitdcab924aff10ec414ddaf0a3c10707d0dbb37b7f (patch)
treedfb6010b23a855af59ee6153c08703a8eb020f85
parent5e9f099252c299155fb895a07754a40bf4050643 (diff)
jenkins -> gitea ci
-rw-r--r--.gitea/workflows/build.yml40
-rw-r--r--Jenkinsfile58
2 files changed, 40 insertions, 58 deletions
diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml
new file mode 100644
index 0000000..9fa42f8
--- /dev/null
+++ b/.gitea/workflows/build.yml
@@ -0,0 +1,40 @@
+# yaml-language-server: $schema=https://json.schemastore.org/github-workflow.json
+
+name: build
+
+on:
+ push:
+ branches:
+ - "master"
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ env:
+ ANDROID_HOME: /toolcache/android-sdk
+ FDROID_JKS: /toolcache/android-jks/fdroid.jks
+ GRADLE_USER_HOME: /toolcache/gradle
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: assemble fdroid
+ run: |
+ bash ./gradlew --no-daemon assembleFdroid \
+ -PFDROID_STORE_FILE=${FDROID_JKS} \
+ -PFDROID_STORE_PASSWORD=${{ secrets.FDROID_STORE_PASSWORD }} \
+ -PFDROID_KEY_ALIAS=fdroid \
+ -PFDROID_KEY_PASSWORD=${{ secrets.FDROID_KEY_PASSWORD }}
+
+ - name: prepare ssh
+ run: |
+ mkdir -p ~/.ssh
+ echo "${{ secrets.APK_DEPLOY_SSH_KEY }}" | tr -d \\r > ~/.ssh/id_ed25519
+ chmod 600 ~/.ssh/id_ed25519
+
+ - name: deploy apks
+ run: |
+ find . -name '*.apk' -type f | while read APK; do
+ scp -oStrictHostKeyChecking=no $APK ${{ secrets.APK_DEPLOY_USER }}@${{ secrets.APK_DEPLOY_HOST }}:fdroid/repo/
+ done
+
+ ssh -oStrictHostKeyChecking=no ${{ secrets.APK_DEPLOY_USER }}@${{ secrets.APK_DEPLOY_HOST }} sudo -u docker-mgr /usr/local/sbin/fdroid-update-repo
diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index 6398972..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,58 +0,0 @@
-pipeline {
- agent any
-
- options {
- buildDiscarder(logRotator(numToKeepStr: '5'))
- }
-
- environment {
- deploy_key = "srv.tt-rss.org"
- deploy_host = "tt-rss.fakecake.org"
- }
-
- stages {
- stage('build') {
- steps {
- withCredentials([string(credentialsId: 'fdroid.jks', variable: 'FDROID_PASSWORD')]) {
- sh("bash ./gradlew assembleFdroid " +
- "-PFDROID_STORE_FILE=/var/jenkins_home/android-jks/fdroid.jks " +
- "-PFDROID_STORE_PASSWORD=$FDROID_PASSWORD " +
- "-PFDROID_KEY_ALIAS=fdroid " +
- "-PFDROID_KEY_PASSWORD=$FDROID_PASSWORD")
- }
- }
- }
- stage('archive') {
- steps {
- archiveArtifacts '**/*.apk'
- }
- }
- stage('deploy') {
- when {
- branch 'master'
- }
- steps {
- sshagent(credentials: ["${deploy_key}"]) {
- script {
- def files = findFiles(glob: '**/*.apk')
-
- for (String file : files) {
- sh("scp -oStrictHostKeyChecking=no ${file} ${deploy_host}:fdroid/repo/")
- }
-
- sh("ssh -oStrictHostKeyChecking=no ${deploy_host} sudo /usr/local/sbin/fdroid-update-repo")
- }
- }
- }
- }
- }
- post {
- failure {
- mail body: "Project: ${env.JOB_NAME} <br>Build Number: ${env.BUILD_NUMBER}<br> build URL: ${env.BUILD_URL}",
- charset: 'UTF-8', from: '[email protected]',
- mimeType: 'text/html',
- subject: "Build failed: ${env.JOB_NAME}",
- }
- }
-}