# Run unitary test name: test on: workflow_call: jobs: source-code-checks: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Check formatting with Ruff uses: chartboost/ruff-action@v1 with: args: 'format --check' - name: Check linting with Ruff uses: chartboost/ruff-action@v1 with: args: 'check' - name: Static type check run: | echo "Skipping static type check for the moment, too much error..."; # pip install pyright # pyright glances test-linux: needs: source-code-checks # https://github.com/actions/runner-images?tab=readme-ov-file#available-images runs-on: ubuntu-22.04 strategy: matrix: python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: 'pip' - name: Install dependencies run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Unitary tests run: | python ./unittest-core.py # Error appear with h11, not related to Glances # Should be tested if correction is done # Installed c:\hostedtoolcache\windows\python\3.9.13\x64\lib\site-packages\exceptiongroup-1.2.1-py3.9.egg # error: h11 0.14.0 is installed but h11<0.13,>=0.11 is required by {'httpcore'} # Error: Process completed with exit code 1. # test-windows: # # https://github.com/actions/runner-images?tab=readme-ov-file#available-images # runs-on: windows-2022 # strategy: # matrix: # # Python version "3.12" introduce this issue: # # https://github.com/nicolargo/glances/actions/runs/6439648370/job/17487567454 # python-version: ["3.8", "3.9", "3.10", "3.11"] # steps: # - uses: actions/checkout@v4 # - name: Set up Python ${{ matrix.python-version }} # uses: actions/setup-python@v5 # with: # python-version: ${{ matrix.python-version }} # cache: 'pip' # - name: Install dependencies # run: | # python -m pip install --upgrade pip # if (Test-Path -PathType Leaf "requirements.txt") { python -m pip install -r requirements.txt } # python setup.py install # - name: Unitary tests # run: | # python ./unittest-core.py test-macos: needs: source-code-checks # https://github.com/actions/runner-images?tab=readme-ov-file#available-images runs-on: macos-14 strategy: matrix: # Only test the latest stable version python-version: ["3.12"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: 'pip' - name: Install dependencies run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Unitary tests run: | python ./unittest-core.py # Error when trying to implement #2749 # pkg: No packages available to install matching 'py-pip' have been found in the repositories # test-freebsd: # runs-on: ubuntu-22.04 # steps: # - uses: actions/checkout@v4 # - name: Run tests # uses: vmactions/freebsd-vm@v1 # with: # usesh: true # prepare: | # pkg install -y python3 py-pip # run: | # set -e -x # python3 -m pip install --user -r requirements.txt # python ./unittest-core.py