diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e651d883dc8a8c5e07c94fc44c1efd19b9e79ab3..e51bbb4ad3a02de92972e6f0b381f3bdda12e337 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -56,10 +56,6 @@ cache: &global_cache
     output_metadata: 'app/build/outputs/apk/debug/output-metadata.json'
   before_script: 
     - git fetch --unshallow --tags
-  after_script:
-    - export versionCode=`$ANDROID_HOME/build-tools/30.0.2/aapt dump badging $apk_file | grep versionCode | awk '{print $3}' | sed s/versionCode=//g | sed s/\'//g`
-    - apt update && apt install gettext-base
-    - cat $metadata_template | envsubst > $metadata_file
   extends: .gradle-default
   artifacts:
     paths:
@@ -70,6 +66,13 @@ cache: &global_cache
     # inherit all global cache settings
     <<: *global_cache
 
+.build-for-repo:
+  extends: .build
+  after_script:
+    - export versionCode=`$ANDROID_HOME/build-tools/30.0.2/aapt dump badging $apk_file | grep versionCode | awk '{print $3}' | sed s/versionCode=//g | sed s/\'//g`
+    - apt update && apt install gettext-base
+    - cat $metadata_template | envsubst > $metadata_file
+
 test:
   extends: .gradle-default
   stage: test
@@ -105,7 +108,12 @@ coverage:
       cobertura: $COBERTURA_REPORT
 
 build-develop:
-  extends: .build
+  variables:
+    apk_file: 'app/build/outputs/apk/debug/app-debug.apk'
+    metadata_file: 'metadata/audio.funkwhale.android.dev.yml'
+    metadata_template: 'metadata/preview.template.yml'
+    output_metadata: 'app/build/outputs/apk/debug/output-metadata.json'
+  extends: .build-for-repo
   script:
     - echo -n $PREVIEW_SIGNING_KEY_STORE | base64 -d > app/android.keystore
     - ./gradlew --stacktrace --no-daemon assembleDebug -x check -Psigning.store=android.keystore -Psigning.store_passphrase=$PREVIEW_SIGNING_KEY_PASS -Psigning.key_passphrase=$PREVIEW_SIGNING_KEY_PASS
@@ -118,7 +126,7 @@ build-release:
     output_metadata: 'app/build/outputs/apk/release/output-metadata.json'
     metadata_template: 'metadata/release.template.yml'
     metadata_file: 'metadata/audio.funkwhale.android.yml'
-  extends: .build
+  extends: .build-for-repo
   script:
     - echo -n $SIGNING_KEY_STORE | base64 -d > app/android.keystore
     - ./gradlew --stacktrace --no-daemon assembleRelease -Psigning.store=android.keystore -Psigning.store_passphrase=$SIGNING_KEY_PASS -Psigning.key_passphrase=$SIGNING_KEY_PASS