Skip to content

Add android build and release #19

Add android build and release

Add android build and release #19

Workflow file for this run

name: Build Apps & Deploy to GitHub Pages
on:
push:
branches:
- master
paths:
- "lib/**"
- "android/**"
- "web/**"
- "pubspec.yaml"
- ".github/workflows/**"
- "scripts/**"
pull_request:
branches:
- master
paths:
- "lib/**"
- "android/**"
- "web/**"
- "pubspec.yaml"
- ".github/workflows/**"
- "scripts/**"
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
# - name: Setup Python
# uses: actions/[email protected]
# with:
# python-version: "3.11"
# - name: Install Packages
# working-directory: ./scripts
# run: |
# python -m pip install --upgrade pip
# pip install -r requirements.txt
# - name: Compile Menu
# working-directory: ./scripts
# run: python scrapeToJson.py
# - name: Copy Data File
# run: cp ./scripts/data.dart ./lib/data.dart
# - name: Cache Flutter dependencies
# uses: actions/cache@v1
# with:
# path: /opt/hostedtoolcache/flutter
# key: ${{ runner.OS }}-flutter-install-cache-${{ env.flutter_version }}
- name: Install Flutter
uses: subosito/[email protected]
with:
channel: 'stable'
- name: Get dependencies
run: flutter pub get
# - name: Analyze project
# run: flutter analyze
# - name: Test project
# run: flutter test
- name: Build Web Release
run: flutter build web --base-href "/IIITB_Menu/" --web-renderer canvaskit
- name: Build Android Release
run: flutter build apk --split-per-abi --release --no-track-widget-creation --analyze-size --target-platform "android-arm64
- name: Create Release
uses: marvinpinto/[email protected]
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
draft: false
title: "Git Build"
files: build/app/outputs/flutter-apk/app-arm64-v8a-release.apk
- name: Upload production-ready build files
uses: actions/[email protected]
with:
name: production-files
path: ./build/web
deploy:
name: Deploy
needs: build
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master'
steps:
- name: Download artifact
uses: actions/[email protected]
with:
name: production-files
path: ./build
- name: Deploy to gh-pages
uses: peaceiris/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build