diff options
-rw-r--r-- | .gitea/workflows/build.yml | 40 | ||||
-rw-r--r-- | Jenkinsfile | 58 |
2 files changed, 40 insertions, 58 deletions
diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 00000000..9fa42f89 --- /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 63989724..00000000 --- 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}", - to: "[email protected]"; - } - } -} |