This commit is contained in:
@@ -30,12 +30,6 @@ jobs:
|
|||||||
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
|
||||||
apt-get install -y nodejs
|
apt-get install -y nodejs
|
||||||
|
|
||||||
- name: Install F-Droid Server
|
|
||||||
run: |
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y fdroidserver
|
|
||||||
|
|
||||||
|
|
||||||
# ------------------- Extract version -------------------
|
# ------------------- Extract version -------------------
|
||||||
- name: Extract versionName
|
- name: Extract versionName
|
||||||
id: extract_version
|
id: extract_version
|
||||||
@@ -81,97 +75,6 @@ jobs:
|
|||||||
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
|
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
|
||||||
run: ./gradlew --no-daemon assembleRelease
|
run: ./gradlew --no-daemon assembleRelease
|
||||||
|
|
||||||
# ------------------- Prepare F-Droid Repo -------------------
|
|
||||||
- name: Prepare F-Droid Repo
|
|
||||||
if: env.CONTINUE == 'true'
|
|
||||||
run: |
|
|
||||||
LICENSE="MIT"
|
|
||||||
AUTHOR="Alex Denisov"
|
|
||||||
ICON="repo/icons/app_icon.png"
|
|
||||||
mkdir -p fdroid-repo/repo fdroid-repo/metadata fdroid-repo/repo/icons
|
|
||||||
|
|
||||||
# Декодируем keystore
|
|
||||||
echo "${{ secrets.FDROID_KEYSTORE_BASE64 }}" | base64 -d > fdroid-repo/keystore.p12
|
|
||||||
|
|
||||||
# Получаем APPID и версию
|
|
||||||
APPID=$(grep 'applicationId' app/build.gradle | awk -F '"' '{print $2}')
|
|
||||||
VERSION=${{ steps.extract_version.outputs.version }}
|
|
||||||
VERSION_CODE=$(echo $VERSION | awk -F. '{ printf("%d%02d%02d", $1,$2,$3 ? $3 : 0); }')
|
|
||||||
|
|
||||||
# Копируем APK и иконки
|
|
||||||
for apk in app/build/outputs/apk/release/*.apk; do
|
|
||||||
NEW_NAME="${APPID}_${VERSION}.apk"
|
|
||||||
cp "$apk" "fdroid-repo/repo/$NEW_NAME"
|
|
||||||
done
|
|
||||||
cp assets/icon.png fdroid-repo/repo/icons/icon.png
|
|
||||||
cp assets/app_icon.png fdroid-repo/repo/icons/app_icon.png
|
|
||||||
|
|
||||||
# Генерируем metadata
|
|
||||||
for apk in fdroid-repo/repo/*.apk; do
|
|
||||||
FILENAME=$(basename "$apk")
|
|
||||||
SHA256=$(sha256sum "$apk" | awk '{print $1}')
|
|
||||||
|
|
||||||
printf '%s\n' \
|
|
||||||
"License: $LICENSE" \
|
|
||||||
"AuthorName: $AUTHOR" \
|
|
||||||
"Categories:" \
|
|
||||||
" - Internet" \
|
|
||||||
"SourceCode: https://git.daemonlord.ru/benya/AnabasisChatManager-android" \
|
|
||||||
"" \
|
|
||||||
"Builds:" \
|
|
||||||
" - versionName: $VERSION" \
|
|
||||||
" versionCode: $VERSION_CODE" \
|
|
||||||
" path: $FILENAME" \
|
|
||||||
" originalFileName: $FILENAME" \
|
|
||||||
" hashes:" \
|
|
||||||
" sha256: $SHA256" \
|
|
||||||
"" \
|
|
||||||
"CurrentVersion: $VERSION" \
|
|
||||||
"CurrentVersionCode: $VERSION_CODE" \
|
|
||||||
"AutoUpdateMode: Version %v" \
|
|
||||||
"UpdateCheckMode: Tags" \
|
|
||||||
> "fdroid-repo/metadata/$APPID.yml"
|
|
||||||
done
|
|
||||||
|
|
||||||
# ------------------- Generate F-Droid config.yml -------------------
|
|
||||||
- name: Generate F-Droid config.yml
|
|
||||||
if: env.CONTINUE == 'true'
|
|
||||||
run: |
|
|
||||||
KEY_ALIAS="${{ secrets.FDROID_GPG_KEY_ALIAS }}"
|
|
||||||
KEY_PASS="${{ secrets.FDROID_KEY_PASSWORD }}"
|
|
||||||
REPO_URL="https://fdroid.daemonlord.ru/fdroid/repo"
|
|
||||||
REPO_NAME="Anabasis F-Droid Repo"
|
|
||||||
REPO_DESC="Automatically generated F-Droid repository"
|
|
||||||
REPO_ICON="repo/icons/icon.png"
|
|
||||||
|
|
||||||
printf '%s\n' \
|
|
||||||
"repo_url: $REPO_URL" \
|
|
||||||
"repo_name: $REPO_NAME" \
|
|
||||||
"repo_description: $REPO_DESC" \
|
|
||||||
"repo_keyalias: $KEY_ALIAS" \
|
|
||||||
"keystore: keystore.p12" \
|
|
||||||
"keystorepass: $KEY_PASS" \
|
|
||||||
"keypass: $KEY_PASS" \
|
|
||||||
"repo_icon: $REPO_ICON" \
|
|
||||||
> fdroid-repo/config.yml
|
|
||||||
|
|
||||||
chmod 600 fdroid-repo/config.yml
|
|
||||||
|
|
||||||
# ------------------- Generate F-Droid Index -------------------
|
|
||||||
- name: Generate F-Droid Index
|
|
||||||
if: env.CONTINUE == 'true'
|
|
||||||
run: |
|
|
||||||
echo "=== DEBUG fdroid-repo ==="
|
|
||||||
ls -la fdroid-repo
|
|
||||||
ls -la fdroid-repo/repo
|
|
||||||
ls -la fdroid-repo/repo/icons
|
|
||||||
echo "=== config.yml ==="
|
|
||||||
cat fdroid-repo/config.yml
|
|
||||||
cd fdroid-repo
|
|
||||||
fdroid update --clean --verbose
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
|
|
||||||
# ------------------- Git tag -------------------
|
# ------------------- Git tag -------------------
|
||||||
- name: Create git tag
|
- name: Create git tag
|
||||||
if: env.CONTINUE == 'true'
|
if: env.CONTINUE == 'true'
|
||||||
|
|||||||
Reference in New Issue
Block a user