Rc/3.0.0 #118
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 |