mirror of
https://github.com/JustinZeus/Wholphin.git
synced 2026-07-08 23:51:21 +02:00
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [actions/cache](https://redirect.github.com/actions/cache) | action | major | `v4` → `v5` | | [actions/checkout](https://redirect.github.com/actions/checkout) | action | major | `v5` → `v6` | | [actions/setup-python](https://redirect.github.com/actions/setup-python) | action | major | `v5` → `v6` | | [actions/upload-artifact](https://redirect.github.com/actions/upload-artifact) | action | major | `v5` → `v6` | --- ### Release Notes <details> <summary>actions/cache (actions/cache)</summary> ### [`v5`](https://redirect.github.com/actions/cache/compare/v4...v5) [Compare Source](https://redirect.github.com/actions/cache/compare/v4...v5) </details> <details> <summary>actions/checkout (actions/checkout)</summary> ### [`v6`](https://redirect.github.com/actions/checkout/compare/v5...v6) [Compare Source](https://redirect.github.com/actions/checkout/compare/v5...v6) </details> <details> <summary>actions/setup-python (actions/setup-python)</summary> ### [`v6`](https://redirect.github.com/actions/setup-python/compare/v5...v6) [Compare Source](https://redirect.github.com/actions/setup-python/compare/v5...v6) </details> <details> <summary>actions/upload-artifact (actions/upload-artifact)</summary> ### [`v6`](https://redirect.github.com/actions/upload-artifact/compare/v5...v6) [Compare Source](https://redirect.github.com/actions/upload-artifact/compare/v5...v6) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/damontecres/Wholphin). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45Ny4wIiwidXBkYXRlZEluVmVyIjoiNDIuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
101 lines
3.7 KiB
YAML
101 lines
3.7 KiB
YAML
name: Development build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- develop/*
|
|
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
BRANCH_NAME: ${{ github.ref_name }}
|
|
GRADLE_OPTS: "-Dorg.gradle.jvmargs='-Xmx4g -XX:MaxMetaspaceSize=512m'"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
steps:
|
|
- name: Checkout the code
|
|
uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0 # Need the tags to build
|
|
- name: Setup
|
|
uses: ./.github/actions/setup
|
|
- name: Native build
|
|
uses: ./.github/actions/native-build
|
|
with:
|
|
cache: true
|
|
|
|
- name: Get version names
|
|
run: |
|
|
LATEST_TAG=$(git describe --tags --match 'v*' --abbrev=0)
|
|
VERSION_NAME=$(git describe --tags --match 'v*' --long)
|
|
if [[ $BRANCH_NAME == "main" ]]; then
|
|
TAG_NAME="develop"
|
|
else
|
|
TAG_NAME="${BRANCH_NAME/\//-}"
|
|
fi
|
|
|
|
echo "LATEST_TAG=$LATEST_TAG" >> "$GITHUB_ENV"
|
|
echo "VERSION_NAME=$VERSION_NAME" >> "$GITHUB_ENV"
|
|
echo "TAG_NAME=$TAG_NAME" >> "$GITHUB_ENV"
|
|
- name: Build release app
|
|
id: build
|
|
env:
|
|
KEY_ALIAS: "${{ secrets.KEY_ALIAS }}"
|
|
KEY_PASSWORD: "${{ secrets.KEY_PASSWORD }}"
|
|
KEY_STORE_PASSWORD: "${{ secrets.KEY_STORE_PASSWORD }}"
|
|
SIGNING_KEY: "${{ secrets.SIGNING_KEY }}"
|
|
run: |
|
|
./gradlew clean assembleRelease assembleDebug --no-daemon
|
|
- name: Verify signatures
|
|
run: |
|
|
echo "Verify APK signatures"
|
|
find app/build/outputs/apk -name '*.apk'
|
|
find app/build/outputs/apk -name '*.apk' -print0 | xargs -t -0 -n1 ${{env.ANDROID_SDK_ROOT}}/build-tools/${{ env.BUILD_TOOLS_VERSION }}/apksigner verify --verbose --print-certs
|
|
- name: Copy APK to shorter names
|
|
id: apks
|
|
run: |
|
|
find app/build/outputs/apk -name '*.apk' -print0 |
|
|
while IFS= read -r -d '' line; do
|
|
# Wholphin-release-0.2.9-62-g5c12e03-16-arm64-v8a.apk => Wholphin-arm64-v8a.apk
|
|
short_name="$(echo $line | sed -E 's/-[0-9]+\.[0-9]+\.[0-9]+-[0-9]+-g[a-fA-F0-9]+-[0-9]+//')"
|
|
echo "$line => $short_name"
|
|
cp "$line" "$short_name"
|
|
done
|
|
apks=$(find app/build/outputs/apk -name '*.apk' -print0 | tr '\0' ',' | sed 's/,$//')
|
|
echo "apks=$apks" >> "$GITHUB_OUTPUT"
|
|
- name: Checksums
|
|
run: |
|
|
echo "SHA256 checksums:"
|
|
find app/build/outputs/apk -name '*.apk' -print0 | xargs -0 sha256sum
|
|
- name: Delete ${{ env.TAG_NAME }} tag and release
|
|
env:
|
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
run: |
|
|
gh release delete "${{ env.TAG_NAME }}" --cleanup-tag -y || true
|
|
|
|
|
|
echo '### `${{ env.BRANCH_NAME }}` development build
|
|
|
|
This pre-release tracks the development build of Wholphin from the `${{ env.BRANCH_NAME }}` unstable branch.
|
|
|
|
See https://github.com/damontecres/Wholphin/releases/latest for the latest stable release.
|
|
|
|
If you want to update to this version in-app, change Settings->Advanced->Update URL to https://api.github.com/repos/damontecres/Wholphin/releases/tags/${{ env.TAG_NAME }} (replace `latest` with `tags/${{ env.TAG_NAME }}`).
|
|
|
|
[See changes since `${{ env.LATEST_TAG }}`](https://github.com/damontecres/Wholphin/compare/${{ env.LATEST_TAG }}...${{ env.TAG_NAME }})' > ci_release_note.txt
|
|
|
|
|
|
gh release create "${{ env.TAG_NAME }}" \
|
|
--latest=false --prerelease --title "${{ env.VERSION_NAME }}" --target "${{ env.BRANCH_NAME }}" -F ci_release_note.txt \
|
|
"app/build/outputs/apk/**/*.apk"
|