chiark / gitweb /
jenkins-build-makebuildserver: test the whole build/publish workflow
authorHans-Christoph Steiner <hans@eds.org>
Thu, 9 Feb 2017 14:50:58 +0000 (15:50 +0100)
committerHans-Christoph Steiner <hans@eds.org>
Mon, 13 Feb 2017 19:08:45 +0000 (20:08 +0100)
For full deployments like f-droid.org, the building happens on a separate
machine from the signing.  This adds a basic test of that kind of setup.

jenkins-build-makebuildserver

index f54f4443f7b5dbe70a02ee3d190f4e7734866fb1..12145a2f915aa4b3da0611cdf710177950b82038 100755 (executable)
@@ -62,7 +62,22 @@ else
 fi
 
 cd fdroiddata
-echo "build_server_always = True" > config.py
+
+if [ -z $ANDROID_HOME ]; then
+    if [ -e ~/.android/bashrc ]; then
+        . ~/.android/bashrc
+    else
+        echo "ANDROID_HOME must be set!"
+        exit
+    fi
+fi
+
+../fdroid init --verbose
+export GNUPGHOME=$WORKSPACE/tests/gnupghome
+echo "gpghome = '$GNUPGHOME'" >> config.py
+echo "gpgkey = 'CE71F7FB'" >> config.py
+echo "build_server_always = True" >> config.py
+
 # if it can't build fdroid, then its really broken
 ../fdroid build --verbose --stop --latest org.fdroid.fdroid
 # Gradle, JNI, preassemble
@@ -73,3 +88,13 @@ echo "build_server_always = True" > config.py
 ../fdroid build --verbose --stop org.fdroid.fdroid:96150
 # VLC is important, and uses cmake
 ../fdroid build --verbose --stop org.videolan.vlc:12000604
+# test OTA update ZIP build and publish
+../fdroid build --verbose --stop --latest org.fdroid.fdroid.privileged.ota
+
+# publish process when building and signing are on separate machines
+test -d repo || mkdir repo
+test -d archive || mkdir archive
+../fdroid publish --verbose
+../fdroid gpgsign --verbose
+../fdroid update --verbose --nosign
+../fdroid signindex --verbose