name: Static analysis on: pull_request: merge_group: jobs: tests: name: Static analysis runs-on: ${{ matrix.os }} strategy: matrix: python-version: - "3.11" os: ["ubuntu-24.04"] steps: - uses: actions/checkout@v6 - name: Set up Python uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} - name: Install system requirements run: sudo apt update && sudo apt install -y libxmlsec1-dev - name: Install pip run: make pre-requirements - name: Get pip cache dir id: pip-cache-dir run: echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT - name: Cache pip dependencies id: cache-dependencies uses: actions/cache@v5 with: path: ${{ steps.pip-cache-dir.outputs.dir }} key: ${{ runner.os }}-pip-${{ hashFiles('requirements/edx/development.txt') }} restore-keys: ${{ runner.os }}-pip- - name: Install python dependencies run: make dev-requirements - name: Static code analysis run: make check-types