ci: remove benchmark-regression job from PR workflow (already in scheduled)
CI / push-validation (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 32s
CI / lint (pull_request) Successful in 1m3s
CI / build (pull_request) Successful in 59s
CI / quality (pull_request) Successful in 1m26s
CI / security (pull_request) Successful in 1m38s
CI / typecheck (pull_request) Successful in 1m46s
CI / e2e_tests (pull_request) Successful in 3m51s
CI / integration_tests (pull_request) Successful in 4m0s
CI / unit_tests (pull_request) Successful in 6m7s
CI / docker (pull_request) Successful in 1m34s
CI / coverage (pull_request) Successful in 11m9s
CI / benchmark-publish (push) Waiting to run
CI / status-check (pull_request) Successful in 3s
CI / helm (push) Successful in 28s
CI / push-validation (push) Successful in 29s
CI / lint (push) Successful in 1m0s
CI / quality (push) Successful in 1m13s
CI / typecheck (push) Successful in 1m23s
CI / build (push) Successful in 1m3s
CI / security (push) Successful in 1m31s
CI / integration_tests (push) Successful in 4m20s
CI / e2e_tests (push) Successful in 5m11s
CI / unit_tests (push) Successful in 10m37s
CI / docker (push) Successful in 1m24s
CI / benchmark-publish (pull_request) Has been skipped
CI / coverage (push) Successful in 12m19s
CI / status-check (push) Successful in 3s
CI / push-validation (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 32s
CI / lint (pull_request) Successful in 1m3s
CI / build (pull_request) Successful in 59s
CI / quality (pull_request) Successful in 1m26s
CI / security (pull_request) Successful in 1m38s
CI / typecheck (pull_request) Successful in 1m46s
CI / e2e_tests (pull_request) Successful in 3m51s
CI / integration_tests (pull_request) Successful in 4m0s
CI / unit_tests (pull_request) Successful in 6m7s
CI / docker (pull_request) Successful in 1m34s
CI / coverage (pull_request) Successful in 11m9s
CI / benchmark-publish (push) Waiting to run
CI / status-check (pull_request) Successful in 3s
CI / helm (push) Successful in 28s
CI / push-validation (push) Successful in 29s
CI / lint (push) Successful in 1m0s
CI / quality (push) Successful in 1m13s
CI / typecheck (push) Successful in 1m23s
CI / build (push) Successful in 1m3s
CI / security (push) Successful in 1m31s
CI / integration_tests (push) Successful in 4m20s
CI / e2e_tests (push) Successful in 5m11s
CI / unit_tests (push) Successful in 10m37s
CI / docker (push) Successful in 1m24s
CI / benchmark-publish (pull_request) Has been skipped
CI / coverage (push) Successful in 12m19s
CI / status-check (push) Successful in 3s
The benchmark-regression job was supposed to be moved to the dedicated benchmark-scheduled.yml workflow (commit 44fc7411, issue #9040), but was accidentally left in master.yml. This caused every PR to run a 1h+ ASV benchmark suite on the docker-benchmark runner, blocking PR feedback.
The benchmark-regression job now lives exclusively in .forgejo/workflows/benchmark-scheduled.yml and runs on a nightly schedule (2 AM UTC) and on workflow_dispatch. The benchmark-publish job (push to master) remains in master.yml as intended.
This commit was merged in pull request #10760.
This commit is contained in:
@@ -15,63 +15,6 @@ env:
|
||||
NOX_DEFAULT_VENV_BACKEND: "uv"
|
||||
|
||||
jobs:
|
||||
benchmark-regression:
|
||||
if: forgejo.event_name == 'pull_request'
|
||||
runs-on: docker-benchmark
|
||||
container:
|
||||
image: ${{vars.docker_prefix}}python:3.13-slim
|
||||
|
||||
steps:
|
||||
- name: Install system dependencies (nodejs for checkout, git for merge tests)
|
||||
run: |
|
||||
apt-get update && apt-get install -y -qq nodejs git && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
- name: Checkout full history
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Compute base commit
|
||||
id: hash
|
||||
run: |
|
||||
git fetch origin "${{ forgejo.base_ref }}" --depth=200
|
||||
BASE_SHA=$(git merge-base HEAD "origin/${{ forgejo.base_ref }}")
|
||||
echo "ASV_BASE_SHA=${BASE_SHA}" >> $FORGEJO_OUTPUT
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install -U pip
|
||||
python -m pip install asv virtualenv uv==${{ env.UV_VERSION }} nox
|
||||
|
||||
- name: Restore prior ASV benchmarks
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
|
||||
ASV_S3_BUCKET: ${{ secrets.ASV_S3_BUCKET }}
|
||||
run: |
|
||||
python -m pip install awscli
|
||||
mkdir -p build/asv/results
|
||||
aws s3 sync "s3://${ASV_S3_BUCKET}/asv/results" build/asv/results --delete || true
|
||||
|
||||
- name: Run asv continuous via nox
|
||||
env:
|
||||
ASV_BASE_SHA: ${{ steps.hash.outputs.ASV_BASE_SHA }}
|
||||
run: |
|
||||
nox -s benchmark_regression
|
||||
|
||||
- name: Archive the results
|
||||
run: |
|
||||
tar cf /tmp/asv-results.tar build/asv/results build/asv/html
|
||||
|
||||
- name: Upload benchmark artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: asv-results-pr
|
||||
path: /tmp/asv-results.tar
|
||||
retention-days: 30
|
||||
|
||||
benchmark-publish:
|
||||
if: forgejo.event_name == 'push'
|
||||
runs-on: docker-benchmark
|
||||
@@ -89,7 +32,7 @@ jobs:
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install -U pip
|
||||
python -m pip install asv virtualenv uv==${{ env.UV_VERSION }} nox
|
||||
python -m pip install asv virtualenv uv=${{ env.UV_VERSION }} nox
|
||||
|
||||
- name: Restore prior ASV benchmarks
|
||||
env:
|
||||
@@ -128,4 +71,3 @@ jobs:
|
||||
name: asv-results-pr
|
||||
path: /tmp/asv-results.tar
|
||||
retention-days: 30
|
||||
|
||||
|
||||
Reference in New Issue
Block a user