Aller au contenu

Buildkite


Buildkite est une plateforme pour exécuter des pipelines d'Intégration Continue rapides, sécurisés et évolutifs sur votre infrastructure.

L'intégration BoostSecurity pour Buildkite est fournie sous forme de plugin qui s'exécute en tant que hook de commande. Le plugin exécute le BoostSecurity Scanner pour analyser les dépôts à la recherche de vulnérabilités et téléverse les résultats sur la plateforme BoostSecurity. Ajouter l'analyse BoostSecurity à votre flux de travail consiste simplement à ajouter un bloc à votre fichier de configuration de pipeline Buildkite.

Les options de configuration et l'emplacement où ajouter le bloc dépendent du fait que l'analyse doive être effectuée sur le code source du projet ou sur un artefact généré, comme des images de conteneur.

La première étape pour configurer BoostSecurity pour Buildkite est de définir la variable d'environnement BOOST_API_TOKEN pour votre agent Buildkite. Reportez-vous à la documentation Buildkite pour savoir comment procéder.


Buildkite Pipeline Steps for scanning source code


Cette configuration convient aux modules de scanner pour l'analyse SAST ou l'inventaire SBOM à partir du code source, par exemple.

Note

Même si le flux de travail est configuré pour exécuter le scanner SBOM sur les pull requests, il ne collecte pas l'inventaire des composants sur les PR.

Lorsque vous configurez votre Buildkite pour exécuter l'analyse BoostSecurity à partir du code source du projet, ajoutez le bloc suivant à votre pipeline.yml:

steps:
  - label: "boostsecurity scanner"
    plugins:
      - boostsecurityio/boostsec-scanner#v4:
          registry_module: boostsecurityio/trivy-sbom
        if: build.branch == "main"
      - boostsecurityio/boostsec-scanner#v4:
          registry_module: boostsecurityio/semgrep

Buildkite Pipeline Steps for scanning generated artifact


Cette configuration convient aux modules de scanner qui nécessitent des artefacts générés par le processus de build. Par exemple, les modules de scanner qui génèrent un SBOM à partir d'images de conteneur ou qui analysent des vulnérabilités doivent d'abord générer l'image du conteneur.

Lorsque vous configurez votre Buildkite pour exécuter l'analyse BoostSecurity à partir des artefacts générés, ajoutez le bloc suivant à votre pipeline.yml:

steps:
  - command: echo 'BOOST_IMAGE_NAME=myimage:tag' >> $BUILDKITE_ENV_FILE
  - wait
  - label: "Building the Image"
    command: docker build -t ${BOOST_IMAGE_NAME} .
    branches: "main"
  - wait
  - label: "boostsecurity scanner"
    plugins:
      - boostsecurityio/boostsec-scanner#v4:
          registry_module: boostsecurityio/trivy-image
    branches: "main"

Dans la première étape, l'image Docker est construite. Dans la deuxième étape, le module d'analyse d'images BoostSecurity analyse l'image. La variable d'environnement BOOST_IMAGE_NAME est définie sur le nom de l'image à analyser.