Testing All Packages #678
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This workflow will install Python dependencies for all dependencies and run tests without skipping any tests. | |
| name: Testing All Packages | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: # For on demand runs | |
| schedule: | |
| - cron: 0 0 * * * # Scheduled run every day at midnight | |
| jobs: | |
| build: | |
| runs-on: ${{ matrix.platform }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: [ubuntu-latest, macos-latest, windows-latest] | |
| python-version: ['3.10', '3.11', '3.12', '3.13', '3.14'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install dependencies | |
| run: | | |
| pip install pip setuptools wheel --upgrade | |
| pip install -e .[all,test] | |
| # Run tests on Windows, Linux, and MacOS | |
| - name: Run Tests | |
| env: | |
| MPLBACKEND: 'Agg' # Use non-interactive backend for matplotlib | |
| run: pytest swxsoc docs --cov swxsoc | |
| # Upload coverage reports to Codecov | |
| - name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@v4 | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} |