Skip to content

Process ASV Results #299

Process ASV Results

Process ASV Results #299

name: Process ASV Results
on:
# pull_request:
# branches:
# - main
schedule:
- cron: "20 3 * * *"
workflow_dispatch:
env:
# Results and other data are stored away from the main branch.
# This keeps the main branch clean and allows us to clear out
# objects / history after being built up for long periods of time.
BRANCH_NAME: pandas_20250203
PYTHON_VERSION: 3.12
permissions:
contents: read
jobs:
process-results:
name: Process ASV Results
runs-on: ubuntu-24.04
defaults:
run:
shell: bash -el {0}
permissions:
contents: write
issues: write
steps:
- name: Checkout pandas
uses: actions/checkout@v4
with:
repository: pandas-dev/pandas
fetch-depth: 0
- name: Checkout asv-runner results branch
uses: actions/checkout@v4
with:
ref: "${{ env.BRANCH_NAME }}"
path: asv-runner/
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Install environment dependencies
run: pip install -U pip uv
- name: Install job dependencies
run: uv pip install --system asv pandas pyarrow
- name: Show environment packages
run: uv pip freeze
- name: Copy results directory
run: |
cp -r asv-runner/data/results asv_bench/results
- name: Publish ASV Benchmarks
run: cd asv_bench && asv publish
- name: Process ASV results
run: |
python asv-runner/ci/process_results.py --input-path=asv_bench/ --output-path=asv-runner/data
rm -rf asv-runner/docs
mv asv_bench/html/ asv-runner/docs
- name: Make issues for new regressions
run: python asv-runner/ci/make_issues.py --input-path=asv-runner/data
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Commit results to branch
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: Results
branch: ${{ env.BRANCH_NAME }}
repository: asv-runner
file_pattern: 'data/results.parquet docs/'