From 21b19188e501256b00d1c6f08dfb68ceb23bbf40 Mon Sep 17 00:00:00 2001 From: Chandrashekhar Reddy Date: Tue, 15 Oct 2024 10:05:30 +0000 Subject: [PATCH] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c201211..4b5a646 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,12 +4,12 @@ variables: ANDROID_COMPILE_SDK: "34" ANDROID_BUILD_TOOLS: "33.0.2" ANDROID_SDK_TOOLS: "9477386" - + # Keystore credentials stored as GitLab CI/CD variables - KEYSTORE_FILE: "${CI_PROJECT_DIR}/keystore.jks" # Path to your keystore file - KEYSTORE_PASSWORD: $KS_PASSWORD # GitLab CI/CD variable for the keystore password - KEY_ALIAS: $KS_ALIAS # GitLab CI/CD variable for the key alias - KEY_PASSWORD: $KS_KEY_PASSWORD # GitLab CI/CD variable for the key password + KEYSTORE_FILE: "${CI_PROJECT_DIR}/keystore.jks" + KEYSTORE_PASSWORD: $KS_PASSWORD + KEY_ALIAS: $KS_ALIAS + KEY_PASSWORD: $KS_KEY_PASSWORD before_script: - apt-get --quiet update --yes @@ -67,19 +67,24 @@ publishTestResults: reports: junit: app/build/test-results/testDebugUnitTest/*.xml -# Job for building signed release APK when tag 'released' is created +# Job for building signed release APK for any tag assembleRelease: stage: build script: - - 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 + - | + 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: - - /^released$/ + - tags artifacts: paths: - app/build/outputs/