Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish to Appstore Connect and Playconsole form Github CI #1712

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions .github/workflows/publish_to_apple_appstore_connect.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Deploy Flutter App to Appstore Connect

on:
push:
branches:
- beta
- cl/publish-from-ci

jobs:
build-and-deploy:
runs-on: macos-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install flutter wrapper
run: ./scripts/install_flutter_wrapper.sh

- name: Get dependencies (i.e., melos)
run: .flutter/bin/dart pub get

- name: Melos Bootstrap
run: .flutter/bin/dart run melos bootstrap

- name: Setup Apple Code Signing - Import Certificates and Provisioning Profiles
uses: apple-actions/import-codesign-certs@v1
with:
p12-file-base64: ${{ secrets.CERT_P12_BASE64 }}
p12-password: ${{ secrets.CERT_P12_PASSWORD }}
mobileprovision-file-base64: ${{ secrets.MOBILE_PROVISION_BASE64 }}

- name: Build iOS IPA
run: .flutter/bin/dart run melos build-ipa-release
env:
CI: true

- name: Upload to App Store Connect
uses: appleboy/[email protected]
with:
issuer_id: ${{ secrets.APP_STORE_ISSUER_ID }}
key_id: ${{ secrets.APP_STORE_KEY_ID }}
private_key: ${{ secrets.APP_STORE_PRIVATE_KEY }}
ipa_path: app/build/ios/ipa/*.ipa
40 changes: 40 additions & 0 deletions .github/workflows/publish_to_googe_playconsole.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Deploy Flutter App to Google Playconsole

on:
push:
branches:
- beta

# Cancel a currently running workflow from the same PR, branch or tag when a new workflow is
# triggered (ref https://stackoverflow.com/a/72408109)
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
build-and-deploy:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install flutter wrapper
run: ./scripts/install_flutter_wrapper.sh

- name: Get dependencies (i.e., melos)
run: .flutter/bin/dart pub get

- name: Melos Bootstrap
run: .flutter/bin/dart run melos bootstrap

- name: Build Android AppBundle
run: .flutter/bin/dart run melos build-appbundle-release

- name: Deploy to Google Play (Beta)
uses: r0adkll/upload-google-play@v1
with:
serviceAccountJson: ${{ secrets.GOOGLE_PLAY_JSON }}
packageName: org.encointer.wallet
releaseFiles: app/build/app/outputs/bundle/release/app-release.aab
track: beta # Publish to the beta track
10 changes: 7 additions & 3 deletions melos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -111,9 +111,13 @@ scripts:
run: cd app && flutter build apk --split-per-abi --flavor dev
description: "Build an APK file"

build-appbundle:
run: cd app && flutter build appbundle
description: "Build an appbundle file"
build-appbundle-release:
run: cd app && flutter build appbundle --release
description: "Build an appbundle file ready to be submitted to the google play console"

build-ipa-release:
run: cd app && flutter build appbundle --release
description: "Build an appbundle file ready to be submitted to the google play console"

# Integration test Encointer Wallet
integration-app-test-android:
Expand Down
Loading