Merge branch 'main' into copier-update-2026-05-21T19-31-39 #12
Workflow file for this run
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
| name: Build Status | ||
| on: | ||
| push: | ||
| branches: [main] | ||
| tags: [v*] | ||
| pull_request: | ||
| branches: [main] | ||
| workflow_dispatch: | ||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | ||
| cancel-in-progress: true | ||
| permissions: | ||
| contents: read | ||
| checks: write | ||
| pull-requests: write | ||
| jobs: | ||
| build: | ||
| runs-on: ${{ matrix.os }} | ||
| strategy: | ||
| matrix: | ||
| os: | ||
| - ubuntu-24.04 # https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md | ||
| - macos-14 # https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md | ||
| - windows-2022 # https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md | ||
| python-version: | ||
| - "3.11" | ||
| cibuildwheel: | ||
| - "cp311" | ||
| steps: | ||
| <<<<<<< before updating | ||
| - uses: actions/checkout@v6 | ||
| with: | ||
| submodules: 'true' | ||
| - name: Setup cache (mac/linux) | ||
| uses: actions/cache@v5 | ||
| with: | ||
| path: "/home/runner/work/systemc-python/systemc-python/.ccache" | ||
| key: cache-${{ runner.os }}- | ||
| restore-keys: cache-${{ runner.os }}- | ||
| if: ${{ runner.os != 'Windows' }} | ||
| - name: Setup cache (windows) | ||
| uses: actions/cache@v5 | ||
| with: | ||
| path: "C:/ProgramData/chocolatey/" | ||
| key: cache-${{ runner.os }}- | ||
| restore-keys: cache-${{ runner.os }}- | ||
| if: ${{ runner.os == 'Windows' }} | ||
| ======= | ||
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| >>>>>>> after updating | ||
| - uses: actions-ext/python/setup@main | ||
| with: | ||
| version: ${{ matrix.python-version }} | ||
| - name: Install dependencies | ||
| <<<<<<< before updating | ||
| run: pip install cibuildwheel | ||
| - name: Python Wheel Steps (linux) | ||
| run: python -m cibuildwheel --output-dir dist | ||
| env: | ||
| CIBW_BUILD: "${{ matrix.cibuildwheel }}-manylinux*" | ||
| CIBW_ENVIRONMENT_LINUX: CCACHE_DIR="/host/home/runner/work/systemc-python/systemc-python/.ccache" | ||
| CIBW_BUILD_VERBOSITY: 3 | ||
| if: ${{ runner.os == 'Linux' }} | ||
| - name: Python Build Steps (mac) | ||
| run: python -m cibuildwheel --output-dir dist | ||
| env: | ||
| CIBW_BUILD: "${{ matrix.cibuildwheel }}-macos*" | ||
| CIBW_ENVIRONMENT_MACOS: CCACHE_DIR="/Users/runner/work/systemc-python/systemc-python/.ccache" MACOSX_DEPLOYMENT_TARGET=11.0 | ||
| CIBW_BUILD_VERBOSITY: 3 | ||
| if: ${{ matrix.os == 'macos-14' }} | ||
| - name: Python Build Steps (windows) | ||
| run: python -m cibuildwheel --output-dir dist | ||
| env: | ||
| CIBW_BUILD: "${{ matrix.cibuildwheel }}-win_amd64" | ||
| if: ${{ matrix.os == 'windows-2022' }} | ||
| - name: Upload Wheel | ||
| uses: actions/upload-artifact@v7 | ||
| with: | ||
| name: dist-${{ runner.os }}-${{ runner.arch }}-${{ matrix.python-version }} | ||
| path: dist/*.whl | ||
| - name: Install wheel (mac/linux) | ||
| run: python -m pip install dist/*.whl | ||
| if: ${{ runner.os != 'Windows' }} | ||
| ======= | ||
| run: make develop | ||
| - name: Lint | ||
| run: make lint | ||
| - name: Checks | ||
| run: make checks | ||
| - name: Build | ||
| run: make build | ||
| - name: Test | ||
| run: make coverage | ||
| - name: Upload test results (Python) | ||
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 | ||
| with: | ||
| name: test-results-${{ matrix.os }}-${{ matrix.python-version }} | ||
| path: junit.xml | ||
| if: ${{ always() }} | ||
| - name: Publish Unit Test Results | ||
| uses: EnricoMi/publish-unit-test-result-action@c950f6fb443cb5af20a377fd0dfaa78838901040 # v2 | ||
| with: | ||
| files: '**/junit.xml' | ||
| - name: Upload coverage | ||
| uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1 | ||
| with: | ||
| token: ${{ secrets.CODECOV_TOKEN }} | ||
| >>>>>>> after updating | ||
| - name: Install wheel (windows) | ||
| run: python -m pip install -U (Get-ChildItem .\dist\*.whl | Select-Object -Expand FullName) | ||
| if: ${{ runner.os == 'Windows' }} | ||
| - name: Install test dependencies | ||
| run: python -m pip install pytest rich typer | ||
| - name: Test Wheel | ||
| run: python -m pytest -vvv systemc/tests | ||
| - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 | ||
| with: | ||
| name: dist-${{matrix.os}} | ||
| path: dist | ||