name: Validate ARC Runners

on:
  pull_request:
    branches:
      - "**"
    paths:
      - "runner/**"
      - "test/startup/**"
      - "!**.md"

permissions:
  contents: read

concurrency:
  # This will make sure we only apply the concurrency limits on pull requests
  # but not pushes to master branch by making the concurrency group name unique
  # for pushes
  group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
  cancel-in-progress: true

jobs:
  shellcheck:
    name: runner / shellcheck
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - name: "Run shellcheck"
        run: make shellcheck

  test-runner-entrypoint:
    name: Test entrypoint
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v5

      - name: Run tests
        run: |
          make acceptance/runner/startup
