Améliorer les performances du pipeline de conformité dans DevSecOps

Activez la concurrence pour vous assurer que les tâches du pipeline s'exécutent simultanément dans les chaînes d'outils d' DevSecOps.

Avant de commencer

Utilisez les noeuds worker gérés par IBMou les noeuds worker gérés par TAAS directement car il s'agit d'une étape prérequise.

Pour utiliser des agents privés, assurez-vous que le pipeline des noeuds worker doit être Tekton version v0.45 ou ultérieure. Pour plus d'informations, voir Instructions d'installation

Activation de l'accès concurrent dans DevsecOps

Pour activer la concurrence dans DevsecOps, suivez les étapes suivantes :

  1. Accédez à la page Déclencheurs de votre pipeline PR, CI, CD ou CC.
  2. Cliquez sur l'icône Actions icône Actions dans l'entrée de référentiel et cliquez sur Editer.
  3. Mettez à jour la branche open-v10 et cliquez sur Mettre à jour.

Définitions du pipeline
Définitions du pipeline

Structure de pipeline PR

Le pipeline PR exécute des vérifications de conformité sur une demande d'extraction pour un référentiel d'application donné et sert de garantie pour la fusion dans la branche principale. Le pipeline PR est déclenché par l'ouverture ou la mise à jour d'une demande d'extraction sur la branche principale.

Pour plus d'informations, voir la documentation du pipeline PR

Étapes de la structure du pipeline de relations publiques et descriptions de chaque étape
Etape PR Pipeline Description de l'étape
code-pr-start Clonez le référentiel GitHub en association avec la demande d'extraction.
code-setup Configurez votre environnement de génération et de test pour préparer le reste des étapes de pipeline.
code-detect-secrets S'exécute pour détecter l'analyse des secrets sur le code d'application.
code-unit-tests Exécute un test d'unité pour le code associé à la DA.
code-compliance-checks Code Risk Analyzer (CRA) et Mend Unified Agent analysent la détection des vulnérabilités sur les dépendances open source et toute autre vérification de conformité sur les référentiels d'application.
code-pr-finish Consolide le statut du pipeline. L'étape échoue si les vérifications de conformité de l'exécution précédente échouent. Cette étape est le comportement "fail-safe" qui permet de s'assurer que les problèmes de conformité sont résolus avant qu'une demande d'achat puisse être fusionnée et / ou qu'une génération puisse être déployée.

structure de la filière PR

Structure de la filière PR
Structure de la filière PR

Structure de pipeline d'EC

Le pipeline d'EC génère des artefacts déployables à partir de référentiels d'application. Il analyse, teste et signe les artefacts générés tout en collectant des informations collectées sur chaque étape à publier dans l'inventaire et à suivre via le déploiement et la gestion des changements.

Pour plus d'informations, voir la documentation sur les pipelines d'EC.

Étapes de la structure de la filière CI et descriptions de chaque étape
Etape de pipeline d'EC Description de l'étape
code-ci-start Configurer l'environnement de pipeline, y compris le clonage de la configuration et des référentiels d'application sur le système de fichiers local du pipeline
code-setup Configurez votre environnement de génération et de test pour préparer le reste des étapes de pipeline.
code-detect-secrets Exécute l'analyse des secrets de détection sur le code d'application.
code-unit-tests Exécution de tests d'unité et de tests d'application sur un code d'application.
code-peer-review Examen par les pairs des modifications du code.
code-static-scan Exécuter une analyse statique du code de l'application.
code-compliance-checks Code Risk Analyzer (CRA) et Mend Unified Agent analysent la détection des vulnérabilités sur les dépendances open source et toute autre vérification de conformité sur les référentiels d'application.
build-artifact Générez les artefacts et les images.
build-sign-artifact Signez des artefacts et des images générés.
build-scan-artifact Analysez l'image de conteneur avec Vulnerability Advisor.
deploy-dev Déploiement des artefacts de génération sur l'environnement de développement.
code-dynamic-scan Exécute l'analyse dynamique OWASP-Zap sur l'application déployée sur un cluster.
deploy-acceptance-tests Exécution de tests d'acceptation et d'intégration sur les artefacts de génération déployés sur l'environnement de développement.
deploy-release Ajoutez les artefacts générés à l'inventaire qui sera utilisé par le pipeline Continuous Delivery.
code-ci-finish Collecte, création et téléchargement des fichiers journaux, des artefacts et des preuves dans le casier de preuves. Si l'un des contrôles de conformité est effectué. L'exécution précédente dans le pipeline a échoué, cette étape échoue. Cette étape est le comportement "fail-safe" qui permet de s'assurer que les problèmes de conformité sont résolus avant qu'une demande d'achat puisse être fusionnée, qu'une génération soit déployée ou que les deux soient résolus.

Structure de la filière CI
Structure de la filière CI

Structure de pipeline CD

Le pipeline CD compile tout le contenu pour les informations collectées et le récapitulatif de la demande de changement. Il déploie la génération dans un environnement, tel que le transfert ou la production, tout en téléchargeant toutes les informations collectées dans le casier d'informations collectées.

Pour plus d'informations, voir la documentation du pipeline CD

Étapes de la structure du pipeline de CD et descriptions de chaque étape
Etape CD Pipeline Description de l'étape
prod-start Calculer le delta de déploiement
prod-setup Configurez l'environnement de génération et de test.
prod-verify-artifact Vérifie les signatures des images qui sont générées dans le pipeline d'EC.
prod-change-request Création et approbation de la demande de changement et de l'état d'implémentation.
prod-deployment Déployez la génération dans un environnement.
prod-acceptance-tests Exécuter des tests d'acceptation.
prod-finish Publiez les tests d'acceptation, déployez l'enregistrement, collectez CycloneDX SBOM et fermez la demande de changement.

Structure de l'oléoduc CD
Structure de l'oléoduc CD

Structure de pipeline CC

Le pipeline CC effectue des analyses périodiques sur les artefacts déployés et leurs référentiels source. Il analyse l'état déployé le plus récent dans l'inventaire et crée ou met à jour des problèmes d'incident dans le référentiel d'incidents.

Pour plus d'informations, voir la documentation du pipeline CC

Étapes de la structure de la filière CC et description de chaque étape
Etape CC Pipeline Description de l'étape
cc-start Cloner le référentiel, traiter l'inventaire en fonction de l'étiquette et enregistrer les référentiels et les artefacts
cc-setup Configurez l'environnement de pipeline pour les analyses dans les étapes ultérieures. Cela peut inclure l'installation de dépendances de génération ou l'exécution de générations Maven
cc-detect-secrets S'exécute pour analyser et détecter des secrets dans un code d'application
cc-static-scan Exécuter un code d'analyse statique sur le code de l'application
cc-dynamic-scan Exécute l'analyse dynamique OWASP-Zap sur l'application déployée sur un cluster
cc-compliance-checks Code Risk Analyzer (CRA) et Mend Unified Agent analysent la détection des vulnérabilités sur les dépendances open source et toute autre vérification de conformité sur les référentiels d'application.
cc-scan-artifact Analysez l'image de conteneur avec Vulnerability Advisor.
cc-finish Collecte, création et téléchargement des fichiers journaux, des artefacts et des preuves dans le casier de preuves. Si l'une des vérifications de conformité précédemment exécutées dans le pipeline échoue, cette étape échoue. Cette étape a un comportement "sans échec" pour s'assurer que les problèmes de conformité sont résolus avant qu'une DA puisse être fusionnée et / ou qu'une génération puisse être déployée.

Structure du pipeline CC
Structure du pipeline CC

Structures de pipeline en mode développement

Les pipelines en mode développement sont utilisés uniquement pour le test de pipeline.

Ils ne disposent pas des fonctions suivantes:

  • Collecte des preuves
  • Gating basé sur des preuves.

Les structures de pipeline en mode développement ne sont pas prêtes pour la production.

Structure du pipeline PR en mode dév
Structure du pipeline PR en mode dév

Structure de pipeline CI en mode dév
Structure de pipeline CI en mode dév

Désactivation des accès concurrents dans DevsecOps

Pour désactiver la concurrence dans DevsecOps, procédez comme suit :

  1. Accédez à la page Déclencheurs de votre pipeline PR ou CI ou CC.
  2. Cliquez sur l'icône Actions icône Actions dans l'entrée de référentiel et sélectionnez Editer.
  3. Mettez à jour la branche vers open-v9 et sélectionnez Mettre à jour.