Comment utiliser Bencher dans GitHub Actions
Selon votre cas dâusage, vous pouvez configurer le benchmarking continu dans GitHub Actions pour votre :
- Branche de base
- Demandes de tirage (Pull Requests)
- Demandes de tirage Ă partir de Forks
- âïž Plus sĂ»r : Benchmark Fork PR et Upload depuis la Branche par DĂ©faut
- â ïž Plus risquĂ© : Benchmark Fork PR depuis la Branche Cible avec RĂ©viseurs Requis
đ° Assurez-vous dâavoir crĂ©Ă© un jeton dâAPI et de lâavoir dĂ©fini comme un secret de dĂ©pĂŽt (Repository) nommĂ©
BENCHER_API_TOKEN
avant de continuer ! Naviguez versVotre dépÎt -> ParamÚtres -> Secrets et variables -> Actions -> Nouveau secret de dépÎt
. Nommez le secretBENCHER_API_TOKEN
et dĂ©finissez la valeur du secret Ă votre jeton dâAPI.
Branche de Base
Un pilier du Benchmarking Continu Statistique est dâavoir une ligne de base historique pour votre branche de base. Cette ligne de base historique peut ensuite ĂȘtre utilisĂ©e pour dĂ©tecter les rĂ©gressions de performance dans les Pull Requests.
- Créer un fichier
workflow
GitHub Actions. (ex :.github/workflows/base_benchmarks.yml
) - Exécuter lors des événements
push
vers la branchemain
. Voir la documentation GitHub Actionson
et GitHub Actionspush
pour un aperçu complet. (ex :on: push: branches: main
) - Créer un
job
GitHub Actions. (ex :jobs: benchmark_base_branch
) - Définir le type de machine sur lequel le job sera exécuté.
Voir la documentation GitHub Actions
runs-on
pour un aperçu complet. (ex :runs-on: ubuntu-latest
) - Extraire le code source de votre branche de base.
(ex :
uses: actions/checkout@v4
) - Installer le CLI Bencher en utilisant lâaction GitHub.
(ex :
uses: bencherdev/bencher@main
) - Utiliser la sous-commande CLI
bencher run
pour exécuter les benchmarks de votre branchemain
. Voir la sous-commande CLIbencher run
pour un aperçu complet. (ex :bencher run
) - DĂ©finir lâoption
--project
sur le slug du projet. Voir la documentation--project
pour plus de détails. (ex :--project save-walter-white-1234abcd
) - DĂ©finir lâoption
--token
sur le secret RepositoryBENCHER_API_TOKEN
. Voir la documentation--token
pour plus de détails. (ex :--token '${{ secrets.BENCHER_API_TOKEN }}'
) - DĂ©finir lâoption
--branch
sur le nom de la branche. Voir la sélection de branche pour un aperçu complet. (ex :--branch main
) - DĂ©finir lâoption
--testbed
sur le nom du banc dâessai. Cela devrait probablement correspondre Ă la machine sĂ©lectionnĂ©e dansruns-on
. Voir la documentation--testbed
pour plus de détails. (ex :--testbed ubuntu-latest
) - DĂ©finir lâoption
--adapter
sur lâadaptateur de harnais de benchmark souhaitĂ©. Voir les adaptateurs de harnais de benchmark pour un aperçu complet. (ex :--adapter json
) - DĂ©finir le drapeau
--err
pour échouer la commande si une alerte est générée. Voir Seuils & Alertes pour un aperçu complet. (ex :--err
) - Spécifier les arguments de la commande de benchmark.
Voir commande de benchmark pour un aperçu complet.
(ex :
bencher mock
)
Demandes de Tirage (Pull Requests)
Afin de dĂ©tecter les rĂ©gressions de performance dans les Demandes de Tirage, vous aurez besoin dâexĂ©cuter vos benchmarks sur les PRs.
Si vous attendez uniquement des PRs provenant de branches du mĂȘme dĂ©pĂŽt,
alors vous pouvez simplement créer un autre workflow pour exécuter on
les événements pull_request
provenant du mĂȘme dĂ©pĂŽt.
â ïž Cette solution fonctionne uniquement si toutes les PRs proviennent du mĂȘme dĂ©pĂŽt ! Voir Demandes de Tirage depuis des Forks ci-dessous.
-
Créez un fichier
workflow
pour GitHub Actions. (ex :.github/workflows/pr_benchmarks.yml
) -
Exécutez on les événements
pull_request
:opened
- Une demande de tirage a été créée.reopened
- Une demande de tirage précédemment fermée a été rouverte.edited
- Le titre ou le corps dâune demande de tirage a Ă©tĂ© Ă©ditĂ©, ou la branche de base dâune demande de tirage a Ă©tĂ© changĂ©e.synchronize
- La branche âheadâ dâune demande de tirage a Ă©tĂ© mise Ă jour. Par exemple, la branche âheadâ a Ă©tĂ© mise Ă jour depuis la branche de base ou de nouveaux commits ont Ă©tĂ© poussĂ©s vers la branche âheadâ.
Voir la documentation
on
GitHub Actions et la documentationpull_request
GitHub Actions pour un aperçu complet. (ex :on: pull_request: types: [opened, reopened, edited, synchronize]
) -
Créez un
job
pour GitHub Actions. (ex :jobs: benchmark_pr_branch
) -
Exécutez on les événements
pull_request
si et seulement si la demande de tirage provient du mĂȘme dĂ©pĂŽt. â ïž NE SUPPRIMEZ PAS CETTE LIGNE ! Pour gĂ©rer les PRs de Forks, voir Demandes de Tirage depuis des Forks ci-dessous. (ex :if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository
) -
DĂ©finissez les permissions pour le
GITHUB_TOKEN
Ăwrite
pourpull-requests
. Selon vos paramĂštres GitHub, cela peut ne pas ĂȘtre requis. Mais pour toutes les organisations et les repos personnels crĂ©Ă©s aprĂšs le 02 fĂ©vrier 2023, câest le comportement par dĂ©faut. Voir la documentation GitHub pour un aperçu complet. (ex :permissions: pull-requests: write
) -
Définissez le type de machine sur lequel le job sera exécuté. Voir la documentation
runs-on
GitHub Actions pour un aperçu complet. (ex :runs-on: ubuntu-latest
) -
Récupérez le code source de la branche PR. (ex :
uses: actions/checkout@v4
) -
Installez le CLI Bencher en utilisant lâAction GitHub. (ex :
uses: bencherdev/bencher@main
) -
Utilisez la sous-commande CLI
bencher run
pour exécuter les benchmarks de votre branche de demande de tirage. Voir la sous-commande CLIbencher run
pour un aperçu complet. (ex :bencher run
) -
DĂ©finissez lâoption
--project
sur le slug du Projet. Voir la documentation--project
pour plus de détails. (ex :--project save-walter-white-1234abcd
) -
DĂ©finissez lâoption
--token
sur le secret du dépÎtBENCHER_API_TOKEN
. Voir la documentation--token
pour plus de détails. (ex :--token '${{ secrets.BENCHER_API_TOKEN }}'
) -
DĂ©finissez lâoption
--branch
sur le nom de la branche PR en utilisant le contexte GitHub Actionsgithub
. Voir la sélection de branche pour un aperçu complet. (ex :--branch '${{ github.head_ref }}'
) -
DĂ©finissez lâoption
--branch-start-point
sur le point de départ de la branche de base PR en utilisant le contexte GitHub Actionsgithub
. Voir le point de départ de la sélection de branche pour un aperçu complet. (ex :--branch-start-point '${{ github.base_ref }}'
) -
DĂ©finissez lâoption
--branch-start-point-hash
sur le hash du point de dĂ©part de la branche de base PR en utilisant lâĂ©vĂ©nement GitHub Actionspull_request
. Voir le hash du point de départ de la sélection de branche pour un aperçu complet. (ex :--branch-start-point-hash '${{ github.event.pull_request.base.sha }}'
) -
DĂ©finissez lâoption
--testbed
sur le nom du Testbed. Cela devrait probablement correspondre à la machine sélectionnée dansruns-on
. Voir la documentation--testbed
pour plus de détails. (ex :--testbed ubuntu-latest
) -
DĂ©finissez lâoption
--adapter
sur lâadaptateur de harnais de benchmarks dĂ©sirĂ©. Voir les adaptateurs de harnais de benchmarks pour un aperçu complet. (ex :--adapter json
) -
DĂ©finissez le drapeau
--err
pour échouer la commande si une Alerte est générée. Voir Seuils & Alertes pour un aperçu complet. (ex :--err
) -
DĂ©finissez lâoption
--github-actions
sur le jeton dâauthentification de lâAPI GitHub pour poster les rĂ©sultats en tant que commentaire sur la Demande de Tirage en utilisant la variable dâenvironnementGITHUB_TOKEN
GitHub Actions. Voir la documentation--github-actions
pour plus de détails. (ex :--github-actions '${{ secrets.GITHUB_TOKEN }}'
) -
Spécifiez les arguments de la commande benchmark. Voir la commande benchmark pour un aperçu complet. (ex :
bencher mock
)
Les Pull Requests provenant de Forks
Si vous prĂ©voyez dâaccepter les pull requests provenant de forks, comme câest souvent le cas dans les projets open source publics,
alors vous devrez gérer les choses un peu différemment.
Pour des raisons de sécurité, les secrets tels que votre BENCHER_API_TOKEN
et le GITHUB_TOKEN
ne sont pas disponibles dans GitHub Actions pour les PR de forks.
Câest-Ă -dire que si un contributeur externe ouvre une PR Ă partir dâun fork, lâexemple ci-dessus ne fonctionnera pas.
Il y a deux options pour les PR de forks :
- âïž Plus sĂ»r : Benchmark Fork PR et TĂ©lĂ©versement depuis la Branche par DĂ©faut
- â ïž Plus risquĂ© : Benchmark Fork PR depuis la Branche Cible avec des RĂ©viseurs Requis
Voir ce rapport du GitHub Security Lab et ce billet de blog sur la prévention des pwn requests pour un aperçu complet.
Benchmark de PR Fork et Upload depuis la Branche par DĂ©faut
Ceci est la maniĂšre sĂ»re et suggĂ©rĂ©e dâajouter un Benchmarking Continu aux pull requests des forks.
Cela nécessite deux workflows séparés.
Le premier workflow exécute et met en cache les résultats des benchmarks dans le contexte pull_request
.
Aucun secret tel que votre BENCHER_API_TOKEN
et le GITHUB_TOKEN
ne sont disponibles lĂ .
Ensuite, un second workflow télécharge les résultats des benchmarks mis en cache dans le contexte workflow_run
et les téléverse à Bencher.
Cela fonctionne parce que workflow_run
sâexĂ©cute dans le contexte de la branche par dĂ©faut du dĂ©pĂŽt,
oĂč les secrets comme votre BENCHER_API_TOKEN
et le GITHUB_TOKEN
sont disponibles.
Le numĂ©ro de la pull request, la branche de tĂȘte et la branche de base utilisĂ©s dans le workflow pull_request
initial
doivent Ă©galement ĂȘtre explicitement transmis au workflow workflow_run
car ils ne sont pas disponibles lĂ .
Ces workflows ne sâexĂ©cuteront que sâils sont prĂ©sents sur la branche par dĂ©faut.
Voir utiliser les données du workflow déclencheur pour un aperçu complet.
-
Créez un premier fichier
workflow
GitHub Actions. (ex:.github/workflows/run_fork_pr_benchmarks.yml
) -
Nommez ce workflow pour quâil puisse ĂȘtre rĂ©fĂ©rencĂ© par le second workflow. (ex:
name: Exécuter et Mettre en Cache les Benchmarks
) -
Exécutez sur les événements
pull_request
:opened
- Une pull request a été créée.reopened
- Une pull request fermée précédemment a été rouverte.edited
- Le titre ou le corps dâune pull request a Ă©tĂ© modifiĂ©, ou la branche de base dâune pull request a Ă©tĂ© changĂ©e.synchronize
- La branche de tĂȘte dâune pull request a Ă©tĂ© mise Ă jour. Par exemple, la branche de tĂȘte a Ă©tĂ© mise Ă jour depuis la branche de base ou de nouveaux commits ont Ă©tĂ© poussĂ©s vers la branche de tĂȘte.
Voir la documentation GitHub Actions
on
et GitHub Actionspull_request
pour un aperçu complet. (ex:on: pull_request: types: [opened, reopened, edited, synchronize]
) -
Créez un
job
GitHub Actions. (ex:jobs: benchmark_fork_pr_branch
) -
Définissez le type de machine sur lequel le job sera exécuté. Voir la documentation GitHub Actions
runs-on
pour un aperçu complet. (ex:runs-on: ubuntu-latest
) -
Récupérez le code source de la branche de la PR fork. (ex:
uses: actions/checkout@v4
) -
Exécutez vos benchmarks et enregistrez les résultats dans un fichier. (ex:
/bin/echo '{ ... }' > benchmark_results.json
) -
TĂ©lĂ©versez le fichier des rĂ©sultats des benchmarks en tant quâartefact. (ex:
uses: actions/upload-artifact@v4
) -
TĂ©lĂ©versez lâobjet de lâĂ©vĂ©nement
pull_request
en tant quâartefact. (ex:uses: actions/upload-artifact@v4
)
- Créez un premier fichier
workflow
GitHub Actions. (ex:.github/workflows/track_fork_pr_benchmarks.yml
) - Nommez ce workflow second workflow.
(ex:
name: Suivre les Benchmarks avec Bencher
) - ChaĂźnez les deux workflows avec
lâĂ©vĂ©nement
workflow_run
. (ex:on: workflow_run: ...
) - Créez un
job
GitHub Actions. (ex:jobs: track_fork_pr_branch
) - Exécutez ce travail uniquement si la conclusion du workflow précédent était un succÚs en utilisant
lâĂ©vĂ©nement GitHub Actions
workflow_run
. (ex:if: github.event.workflow_run.conclusion == 'success'
) - Définissez le type de machine sur lequel le job sera exécuté.
Voir la documentation GitHub Actions
runs-on
pour un aperçu complet. (ex:runs-on: ubuntu-latest
) - DĂ©finissez les noms de fichiers des rĂ©sultats des benchmarks et de lâobjet de lâĂ©vĂ©nement
pull_request
comme variables dâenvironnement. (ex:env: ...
) - TĂ©lĂ©chargez les rĂ©sultats des benchmarks mis en cache et lâĂ©vĂ©nement
pull_request
. (ex:uses: actions/github-script@v6
) - Extrayez les rĂ©sultats des benchmarks mis en cache et lâĂ©vĂ©nement
pull_request
. (ex:unzip ...
) - Exportez les donnĂ©es nĂ©cessaires de lâĂ©vĂ©nement
pull_request
en tant que variables dâenvironnement. (ex:core.exportVariable(...)
) - Installez le CLI Bencher en utilisant lâaction GitHub.
(ex:
uses: bencherdev/bencher@main
) - Utilisez la sous-commande CLI
bencher run
pour suivre les benchmarks de votre branche de pull request fork. Voir la sous-commande CLIbencher run
pour un aperçu complet. (ex:bencher run
) - DĂ©finissez lâoption
--project
sur le slug du projet. Voir la documentation de lâoption--project
pour plus de détails. (ex:--project save-walter-white-1234abcd
) - DĂ©finissez lâoption
--token
sur le secret RepositoryBENCHER_API_TOKEN
. Voir la documentation de lâoption--token
pour plus de détails. (ex:--token '${{ secrets.BENCHER_API_TOKEN }}'
) - DĂ©finissez lâoption
--branch
sur le numĂ©ro formatĂ© de la PR fork en utilisant lâĂ©vĂ©nement GitHub Actionspull_request
. Voir la sélection de la branche pour un aperçu complet. (ex:--branch '${{ env.PR_HEAD }}'
) - DĂ©finissez lâoption
--branch-start-point
sur le point de dĂ©part de la branche de base de la PR fork en utilisant lâĂ©vĂ©nement GitHub Actionspull_request
. Voir la sélection du point de départ de la branche pour un aperçu complet. (ex:--branch-start-point '${{ env.PR_BASE }}'
) - DĂ©finissez lâoption
--branch-start-point-hash
sur le hash du point de dĂ©part de la branche de base de la PR fork en utilisant lâĂ©vĂ©nement GitHub Actionspull_request
. Voir la sélection du hash du point de départ de la branche pour un aperçu complet. (ex:--branch-start-point-hash '${{ env.PR_BASE_SHA }}'
) - DĂ©finissez lâoption
--testbed
sur le nom du banc dâessai. Cela devrait probablement correspondre Ă la machine sĂ©lectionnĂ©e dansruns-on
. Voir la documentation de lâoption--testbed
pour plus de détails. (ex:--testbed ubuntu-latest
) - DĂ©finissez lâoption
--adapter
sur lâadaptateur de harnais de benchmarks souhaitĂ©. Voir les adaptateurs de harnais de benchmarks pour un aperçu complet. (ex:--adapter json
) - DĂ©finissez le drapeau
--err
pour faire échouer la commande si une alerte est générée. Voir Seuil & Alertes pour un aperçu complet. (ex:--err
) - DĂ©finissez lâoption
--github-actions
sur le jeton dâauthentification de lâAPI GitHub pour publier les rĂ©sultats en tant que commentaire sur la Pull Request en utilisant la variable dâenvironnement GitHub ActionsGITHUB_TOKEN
. Voir la documentation de lâoption--github-actions
pour plus de détails. (ex:--github-actions '${{ secrets.GITHUB_TOKEN }}'
) - DĂ©finissez lâoption
--ci-number
sur le numĂ©ro de la pull request. Voir la documentation de lâoption--ci-number
pour plus de détails. (ex:--ci-number '${{ env.PR_NUMBER }}'
) - DĂ©finissez lâoption
--file
sur le chemin du fichier des résultats des benchmarks. Voir la commande de benchmark pour un aperçu complet. (ex:--file "$BENCHMARK_RESULTS"
)
Comparer les PR de forks avec la branche cible et avec des réviseurs requis
Afin de garantir que le code provenant dâune pull request de fork est sĂ©curisĂ©, cette Action GitHub vĂ©rifie si le fork provient dâun autre dĂ©pĂŽt. Si le fork provient dâun autre dĂ©pĂŽt, alors il devra ĂȘtre rĂ©visĂ©.
â ïž Il est trĂšs, trĂšs important de rĂ©viser minutieusement chaque PR de fork avant approbation ! Ne pas le faire pourrait rĂ©sulter en une demande de piratage !
Si vous préférez ne pas avoir cela sur la conscience, voir [Comparer les PR de forks et télécharger depuis la branche par défaut][benchmark fork pr and upload from default branch] ci-dessus.
Pour configurer ce workflow, vous devez créer deux
[environnements GitHub Actions][github actions environments].
Naviguez vers Votre dépÎt -> ParamÚtres -> Environnements -> Nouvel environnement
.
Créez deux nouveaux environnements, interne
et externe
.
Lâenvironnement interne
ne devrait avoir aucune RÚgle de protection de déploiement
.
Cependant, lâenvironnement externe
devrait avoir des RĂ©viseurs requis
dĂ©finis pour ceux ayant la confiance de rĂ©viser les PR de forks avant dâeffectuer des benchmarks.
Voir [ce billet de blog][iterative.ai blog] pour un aperçu complet.
Cette configuration fonctionne car pull_request_target
sâexĂ©cute dans le contexte de la branche cible de la pull request,
oĂč des secrets tels que votre BENCHER_API_TOKEN
et le GITHUB_TOKEN
sont disponibles.
Par consĂ©quent, ce workflow ne sâexĂ©cutera que sâil existe sur la branche cible.
Evitez de dĂ©finir des secrets comme variables dâenvironnement, tels que GITHUB_TOKEN
et BENCHER_API_TOKEN
.
Passez plutĂŽt explicitement vos secrets Ă bencher run
.
-
Créez un fichier de
workflow
GitHub Actions. (ex :.github/workflows/pr_target_benchmarks.yml
) -
Exécutez sur les évÚnements
pull_request
:opened
- Une pull request a été créée.reopened
- Une pull request précédemment fermée a été rouverte.edited
- Le titre ou le corps dâune pull request a Ă©tĂ© modifiĂ©, ou la branche de base dâune pull request a Ă©tĂ© changĂ©e.synchronize
- La branche tĂȘte dâune pull request a Ă©tĂ© mise Ă jour. Par exemple, la branche tĂȘte a Ă©tĂ© mise Ă jour depuis la branche de base ou de nouveaux commits ont Ă©tĂ© poussĂ©s sur la branche tĂȘte.
Voir la [documentation
on
de GitHub Actions][github actions on] et la [documentationpull_request
de GitHub Actions][github action pull_request] pour un aperçu complet. (ex :on: pull_request: types: [opened, reopened, edited, synchronize]
) -
Créez un premier
job
GitHub Actions pour vérifier si le workflow requiert une révision. (ex :jobs: fork_pr_requires_review
) -
DĂ©finissez lâ
environnement
Ăinterne
si et seulement si la pull request vient du mĂȘme dĂ©pĂŽt. Autrement, dĂ©finissez lâenvironnement
Ăexterne
, ce qui nĂ©cessitera une approbation dâun rĂ©viseur pour continuer. â ïž NE SUPPRIMEZ PAS CETTE LIGNE ! (ex :environment: ${{ (github.event.pull_request.head.repo.full_name == github.repository && 'interne') || 'externe' }}
) -
Créez un second
job
GitHub Actions pour exécuter vos benchmarks. (ex :benchmark_fork_pr_branch
) -
Faites en sorte que le job
benchmark_fork_pr_branch
nécessite le jobfork_pr_requires_review
pour sâexĂ©cuter. â ïž NE SUPPRIMEZ PAS CETTE LIGNE ! Voir la [documentationneeds
de GitHub Actions][github actions needs] pour un aperçu complet. (ex :needs: fork_pr_requires_review
) -
DĂ©finissez le type de machine sur lequel le job sâexĂ©cutera. Voir la [documentation
runs-on
de GitHub Actions][github actions runs-on] pour un aperçu complet. (ex :runs-on: ubuntu-latest
) -
VĂ©rifiez le code source de la PR du fork. Puisque
pull_request_target
sâexĂ©cute dans le contexte de la branche cible de la pull request, vous devez toujours checkout la branche de la pull request. (ex :uses: actions/checkout@v4
)- Spécifiez le dépÎt de la PR du fork (ex :
repository: ${{ github.event.pull_request.head.repo.full_name }}
) - Spécifiez le hash de la PR du fork (ex :
ref: ${{ github.event.pull_request.head.sha }}
) - Ne persistez pas votre identifiant
git
(ex :persist-credentials: false
)
- Spécifiez le dépÎt de la PR du fork (ex :
-
Installez le CLI Bencher en utilisant [lâAction GitHub][bencher cli github action]. (ex :
uses: bencherdev/bencher@main
) -
Utilisez la sous-commande CLI
bencher run
pour exécuter les benchmarks de votre branche de pull request de fork. Voir [la sous-commande CLIbencher run
][bencher run] pour un aperçu complet. (ex :bencher run
) -
DĂ©finissez lâoption
--project
sur le slug du Projet. Voir [la doc--project][project option] pour plus de détails. (ex :
âproject save-walter-white-1234abcd`) -
DĂ©finissez lâoption
--token
sur le secret de dépÎtBENCHER_API_TOKEN
. Voir [la doc--token
][token option] pour plus de détails. (ex :--token '${{ secrets.BENCHER_API_TOKEN }}'
) -
DĂ©finissez lâoption
--branch
sur le numĂ©ro de PR de fork formatĂ© en utilisant [lâĂ©vĂšnementpull_request
de GitHub Actions][github action pull_request]. Voir [la sélection de branche][branch selection branch] pour un aperçu complet. (ex :--branch '${{ github.event.number }}/merge'
) -
DĂ©finissez lâoption
--branch-start-point
sur le point de départ de la branche de base de la PR de fork en utilisant [le contextegithub
de GitHub Actions][github actions context]. Voir [la sélection de point de départ de branche][branch selection start point] pour un aperçu complet. (ex :--branch-start-point '${{ github.base_ref }}'
) -
DĂ©finissez lâoption
--branch-start-point-hash
sur le hash du point de dĂ©part de la branche de base de la PR de fork en utilisant [lâĂ©vĂšnementpull_request
de GitHub Actions][github action pull_request]. Voir [la sélection du hash du point de départ de branche][branch selection start point hash] pour un aperçu complet. (ex :--branch-start-point-hash '${{ github.event.pull_request.base.sha }}'
) -
DĂ©finissez lâoption
--testbed
sur le nom du banc dâessai. Cela devrait probablement correspondre Ă la machine sĂ©lectionnĂ©e dansruns-on
. Voir [la doc--testbed
][testbed option] pour plus de détails. (ex :--testbed ubuntu-latest
) -
DĂ©finissez lâoption
--adapter
sur lâadaptateur souhaitĂ© pour le harnais de benchmark. Voir [les adaptateurs de harnais de benchmark][adapters] pour un aperçu complet. (ex :--adapter json
) -
DĂ©finissez lâindicateur
--err
pour faire échouer la commande si une alerte est générée. Voir [Seuils & Alertes][alerts] pour un aperçu complet. (ex :--err
) -
DĂ©finissez lâoption
--github-actions
sur le jeton dâauthentification de lâAPI GitHub pour publier les rĂ©sultats en tant que commentaire sur la Pull Request en utilisant [la variable dâenvironnementGITHUB_TOKEN
de GitHub Actions][github token]. Voir [la doc--github-actions
][github actions option] pour plus de détails. (ex :--github-actions '${{ secrets.GITHUB_TOKEN }}'
) -
Spécifiez les arguments de la commande de benchmark. Voir [la commande de benchmark][command argument] pour un aperçu complet. (ex :
bencher mock
)
đ° FĂ©licitations ! Vous avez appris comment utiliser Bencher dans GitHub Actions ! đ