Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

bump(deps): update expo monorepo (major) #315

bump(deps): update expo monorepo (major)

bump(deps): update expo monorepo (major) #315

Workflow file for this run

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