Skip to content

Commit db003cb

Browse files
committed
Merge remote-tracking branch 'origin/master'
2 parents 4be27ba + b282c35 commit db003cb

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

.github/workflows/build-apk.yml

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -40,26 +40,28 @@ jobs:
4040
- name: Grant execute permission to gradlew
4141
run: chmod +x ./gradlew
4242

43-
# --- Sürüm Bilgilerini Al ve Etiket Oluştur ---
4443
- name: Get App Version and Generate Tags
4544
id: version_info
4645
run: |
4746
# APP_VERSION_CODE için Unix timestamp kullanıyoruz, bu her zaman benzersiz ve artan olacaktır.
48-
# APP_VERSION_NAME için Git tag'ını kullanmayı deneyelim. Eğer yoksa veya boşsa, varsayılan bir değer kullanırız.
49-
50-
# En son Git tag'ını al (örn: v1.0.0). Eğer tag yoksa veya boşsa '1.0.0' gibi bir varsayılan kullan
51-
APP_VERSION_NAME=$(git describe --tags --abbrev=0 --always | sed 's/^v//' || echo "1.0.0") # 'v' önekini kaldırır
52-
53-
# Eğer git describe komutu başarısız olursa veya boş bir string dönerse
54-
if [ -z "$APP_VERSION_NAME" ] || [ "$APP_VERSION_NAME" == "v" ]; then
55-
APP_VERSION_NAME="1.0.0" # Güvenli bir varsayılan değer
56-
fi
57-
5847
APP_VERSION_CODE=$(date +%s) # Unix timestamp (saniye cinsinden) olarak benzersiz versionCode
5948
60-
# RELEASE_TAG, APK dosya adı ve changelog için kullanılacak
61-
# RELEASE_TAG'ı daha kısa tutalım ve versionCode ile bitirelim
62-
RELEASE_TAG="v${APP_VERSION_NAME}-${{ env.APP_VERSION_CODE }}"
49+
# APP_VERSION_NAME için Git tag'ını kullanmayı deneyelim.
50+
# Eğer tag yoksa veya 'v' önekiyle birlikte commit hash'i dönerse,
51+
# daha okunabilir bir varsayılan değer (örn. '1.0.0') kullanalım.
52+
RAW_APP_VERSION_NAME=$(git describe --tags --abbrev=0 --always)
53+
APP_VERSION_NAME="${RAW_APP_VERSION_NAME#v}" # "v" önekini kaldırır
54+
55+
# Eğer APP_VERSION_NAME hala bir commit hash'i gibi görünüyorsa veya boşsa,
56+
# fallback olarak run_number'ı kullanan bir versiyon adı oluşturalım.
57+
# Commit hash'i genellikle en az 7 karakter uzunluğundadır, bu bir kontrol olabilir.
58+
if [[ -z "$APP_VERSION_NAME" || ${#APP_VERSION_NAME} -gt 6 && "$APP_VERSION_NAME" =~ ^[0-9a-fA-F]+$ ]]; then
59+
APP_VERSION_NAME="0.0.${{ github.run_number }}" # Örneğin: 0.0.1, 0.0.2 vb.
60+
fi
61+
62+
# RELEASE_TAG, GitHub Release ve APK dosya adı için kullanılacak.
63+
# Formatı 'v<versionName>-<timestamp>' olarak belirleyelim, bu genellikle kabul görür.
64+
RELEASE_TAG="v${APP_VERSION_NAME}-${APP_VERSION_CODE}"
6365
NEW_APK_NAME="BirthdayReminder-${{ env.RELEASE_TAG }}.apk"
6466
6567
# Bu değerleri sonraki adımlarda kullanmak üzere ortam değişkenlerine yaz

0 commit comments

Comments
 (0)