--- name: CI - Web on: push: branches: - main - next - version-* pull_request: branches: - main - version-* jobs: lint: runs-on: ubuntu-latest strategy: fail-fast: false matrix: command: - lint - lint:lockfile - tsc - prettier-check project: - web include: - command: tsc project: web - command: lit-analyse project: web steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v5 - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v5 with: node-version-file: ${{ matrix.project }}/package.json cache: "npm" cache-dependency-path: ${{ matrix.project }}/package-lock.json - working-directory: ${{ matrix.project }}/ run: | npm ci - name: Lint working-directory: ${{ matrix.project }}/ run: npm run ${{ matrix.command }} build: runs-on: ubuntu-latest steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v5 - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v5 with: node-version-file: web/package.json cache: "npm" cache-dependency-path: web/package-lock.json - working-directory: web/ run: npm ci - name: build working-directory: web/ run: npm run build ci-web-mark: if: always() needs: - build - lint runs-on: ubuntu-latest steps: - uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # release/v1 with: jobs: ${{ toJSON(needs) }} test: needs: - ci-web-mark runs-on: ubuntu-latest steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v5 - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v5 with: node-version-file: web/package.json cache: "npm" cache-dependency-path: web/package-lock.json - working-directory: web/ run: npm ci - name: test working-directory: web/ run: npm run test || exit 0