Skip to content

Build Android project #21

Build Android project

Build Android project #21

name: Build Android project
on:
workflow_dispatch:
inputs:
version:
type: string
required: true
description: "Version name"
env:
KEYSTORE_PATH: "${{ github.workspace }}/keystore.jks"
jobs:
build:
name: Build project
runs-on: macos-14
steps:
- name: "Check out code"
uses: actions/checkout@v3
- name: "Setup dependencies: Node"
uses: actions/setup-node@v4
- name: "Install Node dependencies"
run: |
npm install -g yarn
npm install -g @angular/cli
npm install -g @ionic/cli
npm install -g @capacitor/core
npm install -g @capacitor/cli
yarn install
- name: "Build Ionic app"
run: ionic build -c production
- name: "Sync Android project"
run: cap sync android
- name: "Save signing keystore"
run: base64 -d <<< "${{secrets.ANDROID_KEYSTORE_BASE64}}" > $KEYSTORE_PATH
- name: "Set current date as env variable"
run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
- name: Set Up JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: "Build project"
env:
VERSION_NUMBER: ${{ inputs.version }}
KEYSTORE_FILE_PATH: ${{env.KEYSTORE_PATH}}
KEYSTORE_FILE_PASSWORD: ${{secrets.ANDROID_KEYSTORE_PASSWORD}}
KEYSTORE_FILE_ALIAS: ${{secrets.ANDROID_KEYSTORE_KEY}}
run: |
export BUILD_NUMBER=$(( ${{ github.run_number }} + 300 ))
cd android
which bundle || gem install bundler
bundle config path vendor/bundle
bundle install
bundle exec fastlane build
- name: "Upload"
env:
PLAYSTORE_CREDENTIALS: ${{secrets.PLAYSTORE_CREDENTIALS}}
run: |
cd android
bundle exec fastlane beta