name: Mobile SDK CI on: pull_request: paths: - "packages/mobile-sdk-alpha/**" - ".github/workflows/mobile-sdk-ci.yml" - ".github/actions/**" jobs: # Build dependencies once and cache for other jobs build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Build dependencies shell: bash run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/mobile-sdk-alpha build - name: Cache build artifacts uses: ./.github/actions/cache-mobile-sdk-build with: mode: save cache-version: v1 lint: runs-on: ubuntu-latest needs: build steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Restore build artifacts id: restore-build uses: ./.github/actions/cache-mobile-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Build dependencies (fallback on cache miss) if: steps.restore-build.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/mobile-sdk-alpha build - name: Run linter run: yarn workspace @selfxyz/mobile-sdk-alpha lint format: runs-on: ubuntu-latest needs: build steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Restore build artifacts id: restore-build uses: ./.github/actions/cache-mobile-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Build dependencies (fallback on cache miss) if: steps.restore-build.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/mobile-sdk-alpha build - name: Check Prettier formatting run: yarn workspace @selfxyz/mobile-sdk-alpha prettier --check . types: runs-on: ubuntu-latest needs: build steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Restore build artifacts id: restore-build uses: ./.github/actions/cache-mobile-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Build dependencies (fallback on cache miss) if: steps.restore-build.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/mobile-sdk-alpha build - name: Type checking run: yarn workspace @selfxyz/mobile-sdk-alpha types test: runs-on: ubuntu-latest needs: build steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Restore build artifacts id: restore-build uses: ./.github/actions/cache-mobile-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Build dependencies (fallback on cache miss) if: steps.restore-build.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/mobile-sdk-alpha build - name: Run tests run: yarn workspace @selfxyz/mobile-sdk-alpha test