From 258351be49c144f8f8e59b97f4c94c45d2bc03b6 Mon Sep 17 00:00:00 2001 From: Akshay Gupta Date: Tue, 5 Mar 2024 13:26:44 +0530 Subject: [PATCH] Push the apk build workflow to root --- .github/workflows/mobile-build.yml | 69 ++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 .github/workflows/mobile-build.yml diff --git a/.github/workflows/mobile-build.yml b/.github/workflows/mobile-build.yml new file mode 100644 index 0000000000..3bc5e3670a --- /dev/null +++ b/.github/workflows/mobile-build.yml @@ -0,0 +1,69 @@ +name: Manual build + +on: + workflow_dispatch: # Enable manual run only + +jobs: + build: + # This job will run on ubuntu virtual machine + runs-on: ubuntu-latest + defaults: + run: + working-directory: mobile + steps: + # Setup Java environment in order to build the Android app. + - uses: actions/checkout@v4 + with: + submodules: recursive + - uses: actions/setup-java@v4 + with: + distribution: 'adopt' + java-version: '11' + + # Setup the flutter environment. + - uses: subosito/flutter-action@v2 + with: + channel: 'stable' + flutter-version: '3.13.4' + + # Fetch sub modules + - run: git submodule update --init --recursive + + # Get flutter dependencies. + - run: flutter pub get + + - name: Setup keys + uses: timheuer/base64-to-file@v1 + with: + fileName: 'keystore/ente_photos_key.jks' + encodedString: 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 + + # Build independent apk. + - name: Build + run: flutter build apk --release --flavor independent && mv build/app/outputs/flutter-apk/app-independent-release.apk build/app/outputs/flutter-apk/ente.apk + env: + SIGNING_KEY_PATH: '/home/runner/work/_temp/keystore/ente_photos_key.jks' + SIGNING_KEY_ALIAS: entekey + SIGNING_KEY_PASSWORD: foobar + SIGNING_STORE_PASSWORD: ALpZoF9cblvbikN + + - name: Checksum + run: sha256sum build/app/outputs/flutter-apk/ente.apk > build/app/outputs/flutter-apk/sha256sum + + # Upload generated apk to the artifacts. + - uses: actions/upload-artifact@v4 + with: + name: release-apk + path: build/app/outputs/flutter-apk/ente.apk + + - uses: actions/upload-artifact@v4 + with: + name: release-checksum + path: build/app/outputs/flutter-apk/sha256sum + + # Create a pre-release + # - uses: ncipollo/release-action@v1.14.0 + # with: + # artifacts: "build/app/outputs/flutter-apk/ente.apk,build/app/outputs/flutter-apk/sha256sum" + # token: ${{ secrets.GITHUB_TOKEN }} + # prerelease: true