Skip to content

Rc/3.0.0

Rc/3.0.0 #118

Workflow file for this run

name: CI
on:
push:
branches:
- main
paths-ignore:
- "**/*.md"
- ".github/**"
pull_request:
branches:
- main
paths-ignore:
- "**/*.md"
- ".github/**"
jobs:
lint:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup
uses: ./.github/actions/setup
- name: Lint files
run: npm run eslint -- --max-warnings=0
- name: Typecheck files
run: npm run typecheck
- name: Format check
run: npm run prettier -- --check
build-library:
timeout-minutes: 30
runs-on: ubuntu-latest
needs: [lint]
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup
uses: ./.github/actions/setup
- name: Build package
run: npm run ionic:build
- name: Verify build
run: |
if [ -n "$(git status --porcelain dist)" ]; then
echo "The 'dist' folder is out of sync. Please run 'npm run build' locally and commit the changes."
git status dist
git diff dist
exit 1
fi
build-android:
name: Build Android Example
runs-on: ubuntu-latest
needs: build-library
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup
uses: ./.github/actions/setup
- name: Install JDK
uses: actions/setup-java@v5
with:
distribution: "zulu"
java-version: "21"
- name: Finalize Android SDK
run: |
/bin/bash -c "yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses > /dev/null"
- name: Build Plugin
run: npm run build
- name: Build web assets
run: npm run build
working-directory: example
- name: Sync Capacitor
run: npx cap sync android
working-directory: example
- name: Build Android App
run: ./gradlew assembleRelease
working-directory: example/android
build-ios:
name: Build iOS Example
runs-on: macos-latest
needs: build-library
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup
uses: ./.github/actions/setup
- name: Build Plugin
run: npm run build
- name: Build web assets
run: npm run build
working-directory: example
- name: Sync Capacitor
run: npx cap sync ios
working-directory: example
- name: Build iOS App
run: xcodebuild -workspace ios/App/App.xcworkspace -scheme App -sdk iphonesimulator -destination 'generic/platform=iOS Simulator' CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO clean build
working-directory: example