From f39e2682ce2235213a24524a033fe1e028439a58 Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Thu, 22 Apr 2021 11:44:09 +0200 Subject: [PATCH] Add QA build/workflow capability Signed-off-by: Andy Scherzinger --- .github/workflow/qa.yml | 29 ++ app/build.gradle | 19 +- app/src/qa/ic_launcher-web.png | Bin 0 -> 31078 bytes .../talk/utils/ClosedInterfaceImpl.java | 36 ++ .../drawable-v24/ic_launcher_background.xml | 26 ++ .../res/drawable/ic_launcher_background.xml | 37 +++ .../res/drawable/ic_launcher_foreground.xml | 15 + .../qa/res/mipmap-anydpi-v26/ic_launcher.xml | 5 + app/src/qa/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5184 bytes app/src/qa/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 3229 bytes app/src/qa/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7299 bytes app/src/qa/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 11233 bytes app/src/qa/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 16182 bytes app/src/qa/res/values/setup.xml | 25 ++ drawable_resources/icon-background.svg | 313 +----------------- drawable_resources/icon-foreground_qa.svg | 5 + scripts/uploadArtifact.sh | 35 ++ 17 files changed, 232 insertions(+), 313 deletions(-) create mode 100644 .github/workflow/qa.yml create mode 100644 app/src/qa/ic_launcher-web.png create mode 100644 app/src/qa/java/com/nextcloud/talk/utils/ClosedInterfaceImpl.java create mode 100644 app/src/qa/res/drawable-v24/ic_launcher_background.xml create mode 100644 app/src/qa/res/drawable/ic_launcher_background.xml create mode 100644 app/src/qa/res/drawable/ic_launcher_foreground.xml create mode 100644 app/src/qa/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 app/src/qa/res/mipmap-hdpi/ic_launcher.png create mode 100644 app/src/qa/res/mipmap-mdpi/ic_launcher.png create mode 100644 app/src/qa/res/mipmap-xhdpi/ic_launcher.png create mode 100644 app/src/qa/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 app/src/qa/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 app/src/qa/res/values/setup.xml create mode 100644 drawable_resources/icon-foreground_qa.svg create mode 100644 scripts/uploadArtifact.sh diff --git a/.github/workflow/qa.yml b/.github/workflow/qa.yml new file mode 100644 index 000000000..fe98a553e --- /dev/null +++ b/.github/workflow/qa.yml @@ -0,0 +1,29 @@ +name: "QA" + +on: + pull_request: + branches: [ master, stable-* ] + +jobs: + qa: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Build QA + env: + KS_PASS: ${{ secrets.KS_PASS }} + KEY_PASS: ${{ secrets.KEY_PASS }} + LOG_USERNAME: ${{ secrets.LOG_USERNAME }} + LOG_PASSWORD: ${{ secrets.LOG_PASSWORD }} + run: | + mkdir -p $HOME/.gradle + echo "org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError" > $HOME/.gradle/gradle.properties + sed -i "/qa/,/\}/ s/versionCode .*/versionCode ${{github.event.number}} /" build.gradle + sed -i "/qa/,/\}/ s/versionName .*/versionName \"${{github.event.number}}\"/" build.gradle + ./gradlew assembleQaDebug + $(find /usr/local/lib/android/sdk/build-tools/*/apksigner | sort | tail -n1) sign --ks-pass pass:$KS_PASS --key-pass pass:$KEY_PASS --ks-key-alias key0 --ks scripts/QA_keystore.jks build/outputs/apk/qa/debug/qa-debug-*.apk + sudo scripts/uploadArtifact.sh $LOG_USERNAME $LOG_PASSWORD ${{github.event.number}} ${{github.event.number}} ${{ secrets.GITHUB_TOKEN }} diff --git a/app/build.gradle b/app/build.gradle index 357dbe3c5..3d3f4e739 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -33,7 +33,6 @@ android { compileSdkVersion 29 buildToolsVersion '28.0.3' defaultConfig { - applicationId "com.nextcloud.talk2" minSdkVersion 21 targetSdkVersion 29 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" @@ -49,9 +48,20 @@ android { productFlavors { // used for f-droid - generic - gplay - + generic { + applicationId 'com.nextcloud.talk2' + dimension "default" + } + gplay { + applicationId 'com.nextcloud.talk2' + dimension "default" + } + qa { + applicationId "com.nextcloud.talk2.qa" + dimension "default" + versionCode 1 + versionName "1" + } } // Enabling multidex support. @@ -86,6 +96,7 @@ android { } packagingOptions { + exclude 'META-INF/LICENSE.txt' exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' exclude 'META-INF/rxjava.properties' diff --git a/app/src/qa/ic_launcher-web.png b/app/src/qa/ic_launcher-web.png new file mode 100644 index 0000000000000000000000000000000000000000..9bde487a33852cf9a3f4aa34a19877bb64a003ca GIT binary patch literal 31078 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 GsQ&|^KBDyi literal 0 HcmV?d00001 diff --git a/app/src/qa/java/com/nextcloud/talk/utils/ClosedInterfaceImpl.java b/app/src/qa/java/com/nextcloud/talk/utils/ClosedInterfaceImpl.java new file mode 100644 index 000000000..66496bd31 --- /dev/null +++ b/app/src/qa/java/com/nextcloud/talk/utils/ClosedInterfaceImpl.java @@ -0,0 +1,36 @@ +/* + * Nextcloud Talk application + * + * @author Mario Danic + * Copyright (C) 2017-2018 Mario Danic + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.nextcloud.talk.utils; + + +import com.nextcloud.talk.interfaces.ClosedInterface; + +public class ClosedInterfaceImpl implements ClosedInterface { + @Override + public void providerInstallerInstallIfNeededAsync() { + // does absolutely nothing :) + } + + @Override + public boolean isGooglePlayServicesAvailable() { + return false; + } +} diff --git a/app/src/qa/res/drawable-v24/ic_launcher_background.xml b/app/src/qa/res/drawable-v24/ic_launcher_background.xml new file mode 100644 index 000000000..3f3d4b826 --- /dev/null +++ b/app/src/qa/res/drawable-v24/ic_launcher_background.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + diff --git a/app/src/qa/res/drawable/ic_launcher_background.xml b/app/src/qa/res/drawable/ic_launcher_background.xml new file mode 100644 index 000000000..a931ebc5f --- /dev/null +++ b/app/src/qa/res/drawable/ic_launcher_background.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + diff --git a/app/src/qa/res/drawable/ic_launcher_foreground.xml b/app/src/qa/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 000000000..2b7fc86b2 --- /dev/null +++ b/app/src/qa/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/app/src/qa/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/qa/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 000000000..bbd3e0212 --- /dev/null +++ b/app/src/qa/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/qa/res/mipmap-hdpi/ic_launcher.png b/app/src/qa/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..99024db8ebd23bbb5638ed52cea41fac902a102c GIT binary patch literal 5184 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 literal 0 HcmV?d00001 diff --git a/app/src/qa/res/mipmap-mdpi/ic_launcher.png b/app/src/qa/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..2b6d24b1c0984fcea6fb0296eaf17e702a866cbd GIT binary patch literal 3229 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 P00000NkvXXu0mjf$`ckF literal 0 HcmV?d00001 diff --git a/app/src/qa/res/mipmap-xhdpi/ic_launcher.png b/app/src/qa/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a0528c11be638a176148ea733b196de14cb6cc33 GIT binary patch literal 7299 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�CBgoJ2bMP8?tyM_OV08d> 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 QdU!xtUR|zS#w_Un06%TK^#A|> literal 0 HcmV?d00001 diff --git a/app/src/qa/res/values/setup.xml b/app/src/qa/res/values/setup.xml new file mode 100644 index 000000000..0650249ab --- /dev/null +++ b/app/src/qa/res/values/setup.xml @@ -0,0 +1,25 @@ + + + + + Nextcloud Talk QA + Nextcloud + diff --git a/drawable_resources/icon-background.svg b/drawable_resources/icon-background.svg index b2618fccd..fc99ed29e 100644 --- a/drawable_resources/icon-background.svg +++ b/drawable_resources/icon-background.svg @@ -1,309 +1,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/drawable_resources/icon-foreground_qa.svg b/drawable_resources/icon-foreground_qa.svg new file mode 100644 index 000000000..42f765cfa --- /dev/null +++ b/drawable_resources/icon-foreground_qa.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/scripts/uploadArtifact.sh b/scripts/uploadArtifact.sh new file mode 100644 index 000000000..e14f48ad1 --- /dev/null +++ b/scripts/uploadArtifact.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash + +#1: LOG_USERNAME +#2: LOG_PASSWORD +#3: DRONE_BUILD_NUMBER +#4: DRONE_PULL_REQUEST +#5: GITHUB_TOKEN + +DAV_URL=https://nextcloud.kaminsky.me/remote.php/webdav/android-artifacts/ +PUBLIC_URL=https://www.kaminsky.me/nc-dev/android-artifacts +USER=$1 +PASS=$2 +BUILD=$3 +PR=$4 +GITHUB_TOKEN=$5 + +if ! test -e build/outputs/apk/qa/debug/qa-debug-*.apk ; then + exit 1 +fi +echo "Uploaded artifact to $DAV_URL/$BUILD.apk" + +# delete all old comments, starting with "APK file:" +oldComments=$(curl 2>/dev/null --header "authorization: Bearer $GITHUB_TOKEN" -X GET https://api.github.com/repos/nextcloud/android/issues/$PR/comments | jq '.[] | (.id |tostring) + "|" + (.user.login | test("github-actions") | tostring) + "|" + (.body | test("APK file:.*") | tostring)' | grep "true|true" | tr -d "\"" | cut -f1 -d"|") + +echo $oldComments | while read comment ; do + curl 2>/dev/null --header "authorization: Bearer $GITHUB_TOKEN" -X DELETE https://api.github.com/repos/nextcloud/android/issues/comments/$comment +done + +apt-get -y install qrencode + +qrencode -o $PR.png "$PUBLIC_URL/$BUILD.apk" + +curl -u $USER:$PASS -X PUT $DAV_URL/$BUILD.apk --upload-file build/outputs/apk/qa/debug/qa-debug-*.apk +curl -u $USER:$PASS -X PUT $DAV_URL/$BUILD.png --upload-file $PR.png +curl --header "authorization: Bearer $GITHUB_TOKEN" -X POST https://api.github.com/repos/nextcloud/android/issues/$PR/comments -d "{ \"body\" : \"APK file: $PUBLIC_URL/$BUILD.apk

![qrcode]($PUBLIC_URL/$BUILD.png)

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app. \" }"