| # Execute tests on SunOS |
| # https://github.com/vmactions/solaris-vm |
| |
| name: sunos |
| on: |
| workflow_dispatch: |
| push: |
| # only run this job if the following files are modified |
| paths: &sunos_paths |
| - ".github/workflows/sunos.yml" |
| - "Makefile" |
| - "psutil/__init__.py" |
| - "psutil/_common.py" |
| - "psutil/_ntuples.py" |
| - "psutil/_psposix.py" |
| - "psutil/_pssunos.py" |
| - "psutil/_psutil_sunos.c" |
| - "psutil/arch/all/**" |
| - "psutil/arch/posix/**" |
| - "psutil/arch/sunos/**" |
| - "pyproject.toml" |
| - "scripts/internal/install-pydeps.sh" |
| - "scripts/internal/install-sysdeps.sh" |
| - "setup.py" |
| pull_request: |
| paths: *sunos_paths |
| concurrency: |
| group: ${{ github.ref }}-${{ github.workflow }}-${{ github.event_name }}-${{ github.ref == format('refs/heads/{0}', github.event.repository.default_branch) && github.sha || '' }} |
| cancel-in-progress: true |
| jobs: |
| test: |
| # Skip same-repo PR runs: the push event already covers them. |
| if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.repository |
| runs-on: ubuntu-latest |
| timeout-minutes: 10 |
| steps: |
| - uses: actions/checkout@v7 |
| - name: Run tests |
| id: test |
| uses: vmactions/solaris-vm@v1 |
| with: |
| release: "11.4-gcc" |
| usesh: true |
| run: | |
| set -x |
| pkg install --accept developer/build/gnu-make || true |
| gmake build |
| gmake install-pydeps-test |
| gmake test-memleaks-parallel |