lincc-frameworks / lincc-frameworks/python-project-template

Fail asv workflows when performance deteriorates

Aperta
#252 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

enhancement new option
Lingua principale
Jinja
Stelle
85
Fork
16
Merge medio
6h 18m
PR unite (30g)
1

Descrizione

Fail the ASV workflows if at least one of benchmarks deteriorates above a certain threshold (e.g. 150% / 200%).

**asv-main.yml**:
- Execute `asv run` without `|| true`, allowing the command to exit with a non-zero return code
- Submit benchmarks and deploy dashboard on gh-pages, if the previous command succeeded or not

**asv-pr.yml**:
- Execute `asv continuous` without `|| true`, allowing the command to exit with a non-zero return code
- Output the performance comment on the PR if the comparison was successful or not

**asv-nightly.yml**
- Execute `asv continuous` without `|| true`, allowing the command to exit with a non-zero return code
- Write the commit hash to cache, if the previous if the comparison was successful or not

More information about "on failure" executions [here](https://docs.github.com/en/actions/learn-github-actions/expressions#status-check-functions).

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Iniziate da .github/workflows/asv-main.yml, asv-pr.yml e asv-nightly.yml e verificate come ciascuno gestisce attualmente gli errori di asv run o asv continuous. Aggiornate le condizioni di errore dei workflow mantenendo i passaggi richiesti di submit, dashboard, PR comment e cache, quindi verificate che i workflow continuino a eseguire tali passaggi quando i confronti falliscono.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
github-actions, python
Ambito
ci-cd, devops, performance
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.