Verwendung von Bencher in GitLab CI/CD


benchmark_with_bencher:
image: rust:bullseye
variables:
BENCHER_PROJECT: save-walter-white
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_ADAPTER: json
BENCHER_TESTBED: bullseye
before_script:
- curl --proto '=https' --tlsv1.2 -sSfL https://bencher.dev/download/install-cli.sh | sh
script:
- |
bencher run \\
--if-branch "$CI_COMMIT_REF_NAME" \\
--else-if-branch "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" \\
--else-if-branch main \\
--err \\
"bencher mock"
  1. Erstellen Sie eine GitLab CI/CD-Datei (z.B.: .gitlab-ci.yml)
  2. Erstellen Sie eine GitLab CI/CD job (z.B.: benchmark_with_bencher)
  3. Wählen Sie ein Docker-Image zum Ausführen Ihres Jobs (z.B.: image: rust:bullseye)
  4. Das Projekt muss bereits existieren. Setzen Sie das --project flag oder die BENCHER_PROJECT Umgebungsvariable auf den Project-Slug oder die UUID. (z.B.: BENCHER_PROJECT: save-walter-white)
  5. Fügen Sie BENCHER_API_TOKEN zu den CI/CD-Geheimnissen Ihres Projekts hinzu, unter Einstellungen -> CI / CD -> Variablen -> Variable hinzufügen
  6. Das API-Token muss bereits existieren. Setzen Sie das --token flag oder die BENCHER_API_TOKEN Umgebungsvariable auf das API-Token. (z.B.: BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }})
  7. Optional: Setzen Sie das --adapter flag oder die BENCHER_ADAPTER Umgebungsvariable auf den gewünschten Adapternamen. Wenn dies nicht gesetzt ist, wird der magic Adapter verwendet. Siehe Benchmark Harness Adapter für einen vollständigen Überblick. (z.B.: BENCHER_ADAPTER: json)
  8. Optional: Setzen Sie das --testbed flag oder die BENCHER_TESTBED Umgebungsvariable auf den Testbed-Slug oder die UUID. Das Testbed muss bereits vorhanden sein. Wenn dies nicht eingestellt ist, wird das localhost Testbed verwendet. (z.B.: BENCHER_TESTBED: bullseye)
  9. Laden Sie die Bencher CLI mit dem Convenience-Skript herunter und installieren Sie diese.
  10. Verfolgen Sie Ihre Benchmarks mit dem Befehl bencher run CLI-Unterbefehl:
    1. Es gibt mehrere Optionen zum Einstellen des Projektablaufs. Weitere Einzelheiten finden Sie unter Zweigauswahl. Der bereitgestellte Befehl verwendet GitLab CI/CD vorausdefinierte Variablen und versucht:
      1. Verwenden Sie den aktuellen Zweig, wenn er bereits existiert. (z.B.: --if-branch "$CI_COMMIT_REF_NAME")
      2. Erstellen Sie einen Klon der MR-Zielbranchdaten und -schwellenwerte, wenn sie bereits existieren. (z.B.: --else-if-branch "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME")
      3. Andernfalls erstellen Sie einen Klon der main Branch-Daten und -Schwellenwerte. (z.B.: --else-if-branch main)
    2. Setzen Sie den Befehl auf Fehlschlag, wenn ein Alert generiert wird. Damit ein Alert generiert wird, muss bereits ein Threshold existieren. (z.B.: --err)
    3. Führen Sie Ihre Benchmarks aus und generieren Sie einen Bericht aus den Ergebnissen. (z.B.: "bencher mock")


🐰 Glückwunsch! Sie haben gelernt, wie man Bencher in GitLab CI/CD verwendet! 🎉


Weitermachen: Übersicht über das Benchmarking ➡

🤖 Dieses Dokument wurde automatisch von OpenAI GPT-4 generiert. Es ist möglicherweise nicht korrekt und kann Fehler enthalten. Wenn Sie Fehler finden, öffnen Sie bitte ein Problem auf GitHub.