This repository has been archived by the owner on Feb 9, 2024. It is now read-only.
Add iOS to CI #10
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and release | |
on: | |
push: | |
# Pattern matched against refs/tags | |
tags: | |
- '*' # Push events to every tag not containing / | |
# Allows us to run the workflow manually from the Actions tab | |
workflow_dispatch: | |
branches: [deploy*] | |
env: | |
flutter_version: 3.13.6 | |
app_name: concordium_wallet | |
ruby_version: '3.2' | |
jobs: | |
android-build-and-release: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Flutter | |
uses: subosito/flutter-action@v2 | |
with: | |
flutter-version: ${{ env.flutter_version }} | |
channel: 'stable' | |
cache: true | |
- name: Download pub dependencies | |
run: flutter pub get | |
- name: Build Android App Bundle | |
run: flutter build appbundle | |
- name: Upload Bundle | |
uses: actions/upload-artifact@v3 | |
with: | |
name: concordium-wallet-${{ github.ref_name }}.aab | |
path: "${{github.workspace}}/build/app/outputs/bundle/release/app-release.aab" | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ${{ env.ruby_version }} | |
bundler-cache: true | |
- name: Release to Google Play (Internal) | |
env: | |
SUPPLY_PACKAGE_NAME: ${{ secrets.ANDROID_PACKAGE_NAME }} | |
SUPPLY_JSON_KEY_DATA: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }} | |
run: | | |
bundle exec fastlane supply \ | |
--aab build/app/outputs/bundle/release/app-release.aab \ | |
--track internal | |
ios-build-and-release: | |
runs-on: macos-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Setup Flutter | |
uses: subosito/flutter-action@v2 | |
with: | |
flutter-version: ${{ env.flutter_version }} | |
channel: 'stable' | |
cache: true | |
- name: Download pub dependencies | |
run: flutter pub get | |
- name: Build iOS IPA | |
run: flutter build ipa | |
- name: Upload Bundle | |
uses: actions/upload-artifact@v3 | |
with: | |
name: concordium-wallet-${{ github.ref_name }}.ipa | |
path: "${{github.workspace}}/build/ios/ipa/${{ env.app_name }}.ipa" | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: ${{ env.ruby_version }} | |
bundler-cache: true | |
- name: Upload to testflight | |
env: | |
PILOT_API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }} | |
run: | | |
bundle exec fastlane pilot upload \ | |
--ipa build/ios/ipa/${{ env.app_name }}.ipa \ | |
--track internal |