This repository has been archived by the owner on Sep 11, 2024. It is now read-only.
bump(deps): update expo monorepo (major) #313
This file contains 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: | |
workflow_dispatch: | |
pull_request: | |
branches: [main] | |
merge_group: | |
branches: [main] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} | |
cancel-in-progress: true | |
permissions: | |
contents: read | |
jobs: | |
lint_prettier: | |
name: Lint [prettier] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- run: yarn install --frozen-lockfile | |
- run: yarn prettier --check . | |
lint_eslint: | |
name: Lint [eslint] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- run: yarn install --frozen-lockfile | |
- run: yarn turbo run lint | |
drift_expo_install_check: | |
name: Drift [expo install --check] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- run: yarn install --frozen-lockfile | |
- run: yarn expo install --check | |
working-directory: ./app | |
export: | |
name: Export | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- run: yarn install --frozen-lockfile | |
- run: yarn turbo run export | |
build_version: | |
name: Build Version | |
runs-on: ubuntu-latest | |
outputs: | |
result: ${{ steps.calver.outputs.result }} | |
steps: | |
- name: CalVer | |
id: calver | |
run: | | |
export VERSION=$(date "+%Y.%m.%d") | |
echo ::set-output name=result::${VERSION} | |
eas_preview: | |
name: EAS Preview | |
environment: EAS Preview | |
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository | |
runs-on: ubuntu-latest | |
needs: [build_version] | |
permissions: | |
contents: read | |
pull-requests: write | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- uses: expo/expo-github-action@4479f0b3692e25169fa71a02c30d6586ec2f5601 # v8.0.0 | |
with: | |
eas-version: latest | |
token: ${{ secrets.EXPO_TOKEN }} | |
- run: yarn install --frozen-lockfile | |
- run: yarn run version ${{ needs.build_version.outputs.result }} | |
working-directory: ./app | |
- run: yarn turbo run build | |
working-directory: ./app | |
- uses: expo/expo-github-action/preview@4479f0b3692e25169fa71a02c30d6586ec2f5601 # v8.0.0 | |
with: | |
working-directory: ./app | |
command: eas update --branch pr-${{ github.event.number }} --message "PR ${{ github.event.number }} with commit ${{ github.sha }}" | |
test_playwright: | |
name: Test [Playwright] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
shardIndex: [1, 2] | |
shardTotal: [2] | |
steps: | |
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0 | |
- run: corepack enable yarn | |
- uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 | |
with: | |
node-version-file: '.nvmrc' | |
cache: yarn | |
- run: yarn install --frozen-lockfile | |
- uses: actions/cache/restore@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3.3.2 | |
id: cache-restore | |
with: | |
path: ~/.cache/ms-playwright | |
key: playwright-${{ runner.os }} | |
- name: playwright install | |
working-directory: app | |
if: steps.cache-restore.outputs.cache-hit != 'true' | |
run: yarn playwright install --with-deps | |
- name: playwright test | |
working-directory: app | |
run: yarn playwright test --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }} | |
- uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 | |
if: always() | |
with: | |
name: app-playwright | |
path: app/playwright/ | |
retention-days: 7 | |
- uses: actions/cache/save@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3.3.2 | |
if: always() && steps.cache-restore.outputs.cache-hit != 'true' && matrix.shardIndex == 1 | |
with: | |
path: ~/.cache/ms-playwright | |
key: playwright-${{ runner.os }} | |
test_completed: | |
name: Test [completed] | |
runs-on: ubuntu-latest | |
if: always() | |
needs: | |
- test_playwright | |
steps: | |
- run: | | |
if ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled') }} ; then | |
exit 1 | |
fi |