name: Core SDK CI on: pull_request: paths: - "sdk/core/**" - "common/**" - ".github/workflows/core-sdk-ci.yml" - ".github/actions/**" jobs: build: runs-on: ubuntu-latest permissions: contents: read steps: - uses: actions/checkout@v6 - name: Install Dependencies uses: ./.github/actions/yarn-install - name: Build dependencies run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/core build - name: Cache build artifacts uses: ./.github/actions/cache-core-sdk-build with: mode: save cache-version: v1 lint: runs-on: ubuntu-latest needs: build permissions: contents: read steps: - uses: actions/checkout@v6 - name: Setup Corepack run: | corepack enable corepack prepare yarn@4.12.0 --activate - name: Restore build artifacts id: build-cache uses: ./.github/actions/cache-core-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Install Dependencies if: steps.build-cache.outputs.cache-hit != 'true' uses: ./.github/actions/yarn-install - name: Build dependencies (fallback on cache miss) if: steps.build-cache.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/core build - name: Run linter run: yarn workspace @selfxyz/core lint types: runs-on: ubuntu-latest needs: build permissions: contents: read steps: - uses: actions/checkout@v6 - name: Setup Corepack run: | corepack enable corepack prepare yarn@4.12.0 --activate - name: Restore build artifacts id: build-cache uses: ./.github/actions/cache-core-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Install Dependencies if: steps.build-cache.outputs.cache-hit != 'true' uses: ./.github/actions/yarn-install - name: Build dependencies (fallback on cache miss) if: steps.build-cache.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/core build - name: Type checking run: yarn workspace @selfxyz/core types test: runs-on: ubuntu-latest needs: build permissions: contents: read steps: - uses: actions/checkout@v6 - name: Setup Corepack run: | corepack enable corepack prepare yarn@4.12.0 --activate - name: Restore build artifacts id: build-cache uses: ./.github/actions/cache-core-sdk-build with: mode: restore cache-version: v1 fail-on-cache-miss: false - name: Install Dependencies if: steps.build-cache.outputs.cache-hit != 'true' uses: ./.github/actions/yarn-install - name: Build dependencies (fallback on cache miss) if: steps.build-cache.outputs.cache-hit != 'true' run: | yarn workspace @selfxyz/common build yarn workspace @selfxyz/core build - name: Run tests run: yarn workspace @selfxyz/core test