name: Check code formatting

on: [push, pull_request]

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  code-formatting:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - uses: actions/setup-python@v4
    - name: Install packages
      run: source tools/ci.sh && ci_code_formatting_setup
    - name: Run code formatting
      run: source tools/ci.sh && ci_code_formatting_run
    - name: Check code formatting
      run: git diff --exit-code

  code-spelling:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - uses: actions/setup-python@v4
    - name: Install packages
      run: source tools/ci.sh && ci_code_spell_setup
    - name: Run spell checker
      run: source tools/ci.sh && ci_code_spell_run
