diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4b5a646..9515c42 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -46,6 +46,26 @@ assembleDebug: artifacts: paths: - app/build/outputs/ +# Job for building signed release APK for any tag +assembleRelease: + stage: build + script: + - | + if [[ "$CI_COMMIT_TAG" == "released" ]]; then + echo "Copying keystore file" + cp $KEYSTORE_FILE $CI_PROJECT_DIR/app/keystore.jks + echo "Building signed release APK" + ./gradlew assembleRelease -Pandroid.injected.signing.store.file=$CI_PROJECT_DIR/app/keystore.jks \ + -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD \ + -Pandroid.injected.signing.key.alias=$KEY_ALIAS \ + -Pandroid.injected.signing.key.password=$KEY_PASSWORD + else + echo "Tag '$CI_COMMIT_TAG' is not 'released'. Skipping release build." + fi + artifacts: + paths: + - app/build/outputs/ + expire_in: never debugTests: needs: [lintDebug, assembleDebug] @@ -65,27 +85,4 @@ publishTestResults: artifacts: when: always reports: - junit: app/build/test-results/testDebugUnitTest/*.xml - -# Job for building signed release APK for any tag -assembleRelease: - stage: build - script: - - | - if [[ "$CI_COMMIT_TAG" == "released" ]]; then - echo "Copying keystore file" - cp $KEYSTORE_FILE $CI_PROJECT_DIR/app/keystore.jks - echo "Building signed release APK" - ./gradlew assembleRelease -Pandroid.injected.signing.store.file=$CI_PROJECT_DIR/app/keystore.jks \ - -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD \ - -Pandroid.injected.signing.key.alias=$KEY_ALIAS \ - -Pandroid.injected.signing.key.password=$KEY_PASSWORD - else - echo "Tag '$CI_COMMIT_TAG' is not 'released'. Skipping release build." - fi - only: - - tags - artifacts: - paths: - - app/build/outputs/ - expire_in: never \ No newline at end of file + junit: app/build/test-results/testDebugUnitTest/*.xml \ No newline at end of file