Change release workflows trigger to published instead of created (#493) #52
This file contains 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: Benchmarks | |
on: | |
push: | |
branches: [main] | |
jobs: | |
benchmark: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
python-version: [3.12] | |
os: [macos-latest, ubuntu-latest, windows-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Prepare ENV | |
run: | | |
echo "CC=clang" >> $GITHUB_ENV | |
echo "CXX=clang++" >> $GITHUB_ENV | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
- name: Install dependencies Ubuntu | |
run: .github/workflows/scripts/install_req_ubuntu.sh | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
- name: Install dependencies MacOS | |
run: .github/workflows/scripts/install_req_macos.sh | |
if: ${{ matrix.os == 'macos-latest' }} | |
- name: Install dependencies Windows | |
run: .github/workflows/scripts/install_req_windows.bat | |
if: ${{ matrix.os == 'windows-latest' }} | |
- name: Install dependencies Windows - msbuild | |
uses: microsoft/setup-msbuild@v1.0.2 | |
if: ${{ matrix.os == 'windows-latest' }} | |
- name: Build the library for Ubuntu/MacOS | |
run: .github/workflows/scripts/build_nix.sh | |
if: ${{ matrix.os != 'windows-latest' }} | |
- name: Build the library for Windows | |
run: .github/workflows/scripts/build_windows.bat | |
if: ${{ matrix.os == 'windows-latest' }} | |
- name: Run benchmarks | |
run: | | |
pytest tests/python/benchmarks/ --cov-fail-under 0 --benchmark-json pytest_benchmarks_output.json | |
- name: Store benchmark result | |
uses: rhysd/github-action-benchmark@v1 | |
with: | |
name: Python-Benchmarks | |
tool: "pytest" | |
output-file-path: pytest_benchmarks_output.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
benchmark-data-dir-path: "benchmarks/${{ runner.os }}" | |
# Show alert with commit comment on detecting possible performance regression | |
alert-threshold: "200%" | |
comment-on-alert: true | |
fail-on-alert: false |