From 6a05c42ee8708dba688cc47dc0cedb6035e3b2f6 Mon Sep 17 00:00:00 2001 From: Vadim <44135514+vodemn@users.noreply.github.com> Date: Thu, 16 Feb 2023 00:25:13 +0300 Subject: [PATCH] Build signed appbundle (#36) * Create cd.yml * added artifact upload * fixed jobs sequence * moved upload to build job * jobs rename * keystore * Update cd.yml * macos runner * cd_dev * Update build.gradle * Added CD for Prod App Bundle * Clean up --- .github/workflows/cd_dev.yml | 3 +- .github/workflows/cd_prod.yml | 52 +++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/cd_prod.yml diff --git a/.github/workflows/cd_dev.yml b/.github/workflows/cd_dev.yml index 55bef58..60f19e3 100644 --- a/.github/workflows/cd_dev.yml +++ b/.github/workflows/cd_dev.yml @@ -3,11 +3,10 @@ # separate terms of service, privacy policy, and support # documentation. -name: Build app-dev-release.apk +name: Build Dev APK on: push: - branches: ["cd"] tags: - "v*.*.*" workflow_dispatch: diff --git a/.github/workflows/cd_prod.yml b/.github/workflows/cd_prod.yml new file mode 100644 index 0000000..57a5e11 --- /dev/null +++ b/.github/workflows/cd_prod.yml @@ -0,0 +1,52 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +name: Build Prod App Bundle + +on: + workflow_dispatch: + +jobs: + build: + runs-on: macos-11 + timeout-minutes: 30 + + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-java@v2 + with: + distribution: "zulu" + java-version: "11" + + - name: Restore Android keystore .jsk and .properties files + env: + KEYSTORE: ${{ secrets.KEYSTORE }} + KEYSTORE_PROPERTIES: ${{ secrets.KEYSTORE_PROPERTIES }} + run: | + KEYSTORE_PATH=$RUNNER_TEMP/keystore.jks + echo -n "$KEYSTORE" | base64 --decode --output $KEYSTORE_PATH + cp $KEYSTORE_PATH ./android/app + KEYSTORE_PROPERTIES_PATH=$RUNNER_TEMP/key.properties + echo -n "$KEYSTORE_PROPERTIES" | base64 --decode --output $KEYSTORE_PROPERTIES_PATH + cp $KEYSTORE_PROPERTIES_PATH ./android + + - name: Install Flutter + uses: subosito/flutter-action@v2 + with: + channel: "stable" + + - name: Prepare flutter project + run: | + flutter --version + flutter pub get + flutter pub run intl_utils:generate + + - name: Build Apk + run: flutter build appbundle --release --flavor prod --dart-define cameraPreviewAspectRatio=2/3 -t lib/main_prod.dart + + - uses: actions/upload-artifact@v3 + with: + name: m3_lightmeter.apk + path: build/app/outputs/flutter-apk/app-prod-release.apk