name: rocprofiler-sdk Python Linting on: workflow_dispatch: push: branches: - develop paths: - 'projects/rocprofiler-sdk/**' - '!**/*.md' - '!**/*.rtf' - '!**/*.rst' - '!**/.markdownlint-ci2.yaml' - '!**/.readthedocs.yaml' - '!**/.spellcheck.local.yaml' - '!**/.wordlist.txt' - '!docs/**' - '!projects/*/docs/**' pull_request: paths: - 'projects/rocprofiler-sdk/**' - '!**/*.md' - '!**/*.rtf' - '!**/*.rst' - '!**/.markdownlint-ci2.yaml' - '!**/.readthedocs.yaml' - '!**/.spellcheck.local.yaml' - '!**/.wordlist.txt' - '!docs/**' - '!projects/*/docs/**' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: linting: runs-on: ubuntu-22.04 strategy: matrix: python-version: ['3.8', '3.10', '3.12'] steps: - uses: actions/checkout@v4 with: sparse-checkout: projects/rocprofiler-sdk - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies working-directory: projects/rocprofiler-sdk run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Lint with flake8 working-directory: projects/rocprofiler-sdk run: | # stop the build if there are Python syntax errors or undefined names flake8 source --count --show-source --statistics --select=E9,F63,F7,F82 # flake8 options are defined in .flake8 flake8 source --count --show-source --statistics