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
      BENCHER_VERSION: 0.3.18
    before_script:
      - wget https://github.com/bencherdev/bencher/releases/download/v${BENCHER_VERSION}/bencher_${BENCHER_VERSION}_amd64.deb
      - dpkg -i bencher_${BENCHER_VERSION}_amd64.deb
    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. Optional: Erstellen Sie eine Umgebungsvariable, um die übersichtliche Kontrolle der verwendeten CLI-Version zu erleichtern. (z.B.: BENCHER_VERSION: 0.3.18)
  10. Laden Sie die Bencher CLI herunter und installieren Sie sie von einer .deb Datei.
  11. 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.