mirror of
https://github.com/httpie/cli.git
synced 2024-11-25 01:03:27 +01:00
4f7f59b990
* Add initial benchmarking infrastructure * Add CI file * Try to comment on commits * Implement file download benchmarks! * drop commit comments (they dont work) * Allow running local binary * Better action * More docs! * Better look? * even better look * add pretty=all, none benchmarks
53 lines
1.4 KiB
YAML
53 lines
1.4 KiB
YAML
name: Benchmark
|
|
|
|
on:
|
|
pull_request:
|
|
types: [ labeled ]
|
|
|
|
permissions:
|
|
issues: write
|
|
pull-requests: write
|
|
|
|
jobs:
|
|
test:
|
|
if: github.event.label.name == 'benchmark'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions/setup-python@v2
|
|
with:
|
|
python-version: "3.9"
|
|
|
|
- id: benchmarks
|
|
name: Run Benchmarks
|
|
run: |
|
|
python -m pip install pyperf>=2.3.0
|
|
python extras/profiling/run.py --fresh --complex --min-speed=6 --file output.txt
|
|
body=$(cat output.txt)
|
|
body="${body//'%'/'%25'}"
|
|
body="${body//$'\n'/'%0A'}"
|
|
body="${body//$'\r'/'%0D'}"
|
|
echo "::set-output name=body::$body"
|
|
|
|
- name: Find Comment
|
|
uses: peter-evans/find-comment@v1
|
|
id: fc
|
|
with:
|
|
issue-number: ${{ github.event.pull_request.number }}
|
|
comment-author: 'github-actions[bot]'
|
|
body-includes: '# Benchmarks'
|
|
|
|
- name: Create or update comment
|
|
uses: peter-evans/create-or-update-comment@v1
|
|
with:
|
|
comment-id: ${{ steps.fc.outputs.comment-id }}
|
|
issue-number: ${{ github.event.pull_request.number }}
|
|
body: |
|
|
# Benchmarks
|
|
${{ steps.benchmarks.outputs.body }}
|
|
edit-mode: replace
|
|
|
|
- uses: actions-ecosystem/action-remove-labels@v1
|
|
with:
|
|
labels: benchmark
|