Skip to content

Bump Metro to 1.2.0 #303

Bump Metro to 1.2.0

Bump Metro to 1.2.0 #303

name: Metro Compatibility
on:
# Daily at 8:00 UTC. Needed because there's no trigger when the main branch in Metro changes.
schedule:
- cron: '0 8 * * *'
# Allow manual trigger.
workflow_dispatch:
# Verify for PRs as well.
pull_request:
permissions:
contents: read
jobs:
configure-kotlin-versions:
runs-on: ubuntu-latest
outputs:
kotlin-versions: ${{ steps.kotlin-versions.outputs.matrix }}
steps:
- uses: actions/checkout@v6
- id: kotlin-versions
uses: ./.github/actions/kotlin-versions
# with:
# preview-versions: 2.3.20-RC, 2.4.0-Beta1
# preview-versions: 2.3.20
metro-compatibility:
needs: configure-kotlin-versions
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
kotlin-version: ${{ fromJSON(needs.configure-kotlin-versions.outputs.kotlin-versions) }}
name: metro-compatibility (Kotlin ${{ matrix.kotlin-version }})
steps:
- uses: actions/checkout@v6
- name: Checkout Metro
uses: actions/checkout@v6
with:
repository: ZacSweers/metro
path: metro
- name: Setup
uses: ./.github/actions/setup-action
with:
gradle-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
java-version: '25'
- name: Compiler tests
run: ./gradlew :compiler:test -PuseLocalMetro -PlocalMetroPath=metro --stacktrace --show-version -Pkotlin.version=${{ matrix.kotlin-version }}
- name: Integration tests
run: ./gradlew -p integration-tests test -PuseLocalMetro -PlocalMetroPath=metro --stacktrace --show-version -Pkotlin.version=${{ matrix.kotlin-version }}
- name: Upload Test Results
uses: actions/upload-artifact@v6
if: failure()
with:
name: metro-compat-test-results-kotlin-${{ matrix.kotlin-version }}
path: ./**/build/reports/