mirror of
https://github.com/wger-project/flutter.git
synced 2026-02-18 00:17:48 +01:00
153 lines
3.9 KiB
YAML
153 lines
3.9 KiB
YAML
name: Build release artefacts
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version:
|
|
description: Version to tag and release (X.Y.Z)
|
|
required: true
|
|
type: string
|
|
|
|
jobs:
|
|
|
|
ci:
|
|
name: CI
|
|
uses: ./.github/workflows/ci.yml
|
|
|
|
determine_version:
|
|
needs: ci
|
|
name: Prepare
|
|
uses: ./.github/workflows/bump-version.yml
|
|
with:
|
|
app_version: ${{ github.event.inputs.version }}
|
|
|
|
build_linux:
|
|
name: Linux
|
|
needs: determine_version
|
|
uses: ./.github/workflows/build-linux.yml
|
|
with:
|
|
ref: ${{ github.event.inputs.version }}
|
|
secrets:
|
|
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
|
|
|
|
build_android:
|
|
name: Android
|
|
needs: determine_version
|
|
uses: ./.github/workflows/build-android.yml
|
|
with:
|
|
ref: ${{ github.event.inputs.version }}
|
|
secrets:
|
|
DECRYPTKEY_PLAYSTORE_SIGNING_KEY: ${{ secrets.DECRYPTKEY_PLAYSTORE_SIGNING_KEY }}
|
|
DECRYPTKEY_PROPERTIES: ${{ secrets.DECRYPTKEY_PROPERTIES }}
|
|
|
|
build_apple:
|
|
name: Apple
|
|
needs: determine_version
|
|
uses: ./.github/workflows/build-apple.yml
|
|
with:
|
|
ref: ${{ github.event.inputs.version }}
|
|
|
|
build_windows:
|
|
name: Microsoft
|
|
needs: determine_version
|
|
uses: ./.github/workflows/build-windows.yml
|
|
with:
|
|
ref: ${{ github.event.inputs.version }}
|
|
|
|
upload_play_store:
|
|
name: Upload to Play Store
|
|
runs-on: ubuntu-latest
|
|
needs:
|
|
- build_android
|
|
- build_linux
|
|
steps:
|
|
- name: Checkout application
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: ${{ github.event.inputs.version }}
|
|
|
|
- name: Download builds
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: /tmp/
|
|
|
|
- name: Setup Ruby
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: 3.4
|
|
|
|
- name: Decrypt config files
|
|
run: |
|
|
cd ./fastlane/metadata/envfiles
|
|
chmod +x ./decrypt_secrets.sh
|
|
./decrypt_secrets.sh
|
|
shell: bash
|
|
env:
|
|
DECRYPTKEY_PLAYSTORE: ${{ secrets.DECRYPTKEY_PLAYSTORE }}
|
|
|
|
- name: Upload build to Play Store
|
|
run: |
|
|
mkdir -p ./build/app/outputs/bundle/release/
|
|
cp /tmp/builds-aab/app-release.aab ./build/app/outputs/bundle/release/app-release.aab
|
|
bundle install
|
|
bundle exec fastlane android production
|
|
|
|
#
|
|
# This is currently commented out since the iOS upload are currently being handled
|
|
# by the fastlane script in the ios folder. We use the account of pthaler for this
|
|
# and he runs the script manually.
|
|
#
|
|
|
|
# upload_app_store:
|
|
# name: Upload to App Store (placeholder)
|
|
# runs-on: ubuntu-latest
|
|
# needs:
|
|
# - build_android
|
|
# - build_apple
|
|
# steps:
|
|
# - name: Checkout application
|
|
# uses: actions/checkout@v4
|
|
# with:
|
|
# ref: feature/build-process
|
|
# # ref: ${{ github.event.inputs.version }}
|
|
#
|
|
# - name: Common flutter setup
|
|
# uses: ./.github/actions/flutter-common
|
|
#
|
|
# - name: Download builds
|
|
# uses: actions/download-artifact@v4
|
|
# with:
|
|
# path: /tmp/
|
|
#
|
|
# - name: Upload build to App Store
|
|
# run: |
|
|
# # bundle exec fastlane todo
|
|
|
|
make_gh_release:
|
|
name: Make Github Release
|
|
runs-on: ubuntu-latest
|
|
needs:
|
|
- upload_play_store
|
|
- build_linux
|
|
- build_windows
|
|
- build_apple
|
|
|
|
steps:
|
|
- name: Download builds
|
|
uses: actions/download-artifact@v4
|
|
|
|
- name: Make Github release
|
|
uses: softprops/action-gh-release@v2
|
|
with:
|
|
generate_release_notes: true
|
|
tag_name: ${{ inputs.version }}
|
|
files: |
|
|
builds-aab/app-release.aab
|
|
builds-apk/app-release.apk
|
|
builds-linux/wger-linux-x86.tar.gz
|
|
builds-ios/Runner.app
|
|
builds-ipa/Runner.xcarchive
|
|
builds-macos/wger.app
|
|
builds-windows/wger.exe
|
|
|
|
|