name: quality-checks on: [ push, pull_request ] jobs: lint: runs-on: ubuntu-latest strategy: matrix: lint-command: - npm run lint:eslint - npm run lint:yaml - npm run lint:md - npm run lint:md:relative-urls - npm run lint:md:consistency os: [ macos, ubuntu, windows ] fail-fast: false # Still interested to see results from other combinations steps: - name: Checkout uses: actions/checkout@v4 - name: Setup node uses: ./.github/actions/setup-node - name: Install dependencies uses: ./.github/actions/npm-install-dependencies - name: Lint run: ${{ matrix.lint-command }} todo-check: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Scan latest commit for TODO comments shell: bash run: |- readonly todo_comment_search_pattern='TODO'':' # Define search pattern in parts to prevent IDE from flagging this script line as a TODO item if git grep "$todo_comment_search_pattern" HEAD; then echo 'TODO comments found in the latest commit.' exit 1 else echo 'No TODO comments found in the latest commit.' exit 0 fi