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 :
- Accédez à la page Déclencheurs de votre pipeline PR, CI, CD ou CC.
- Cliquez sur l'icône Actions
dans l'entrée de référentiel et cliquez sur Editer.
- Mettez à jour la branche
open-v10et cliquez sur Mettre à jour.
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
| 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 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.
| 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 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
| 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 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
| 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. |
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.
Désactivation des accès concurrents dans DevsecOps
Pour désactiver la concurrence dans DevsecOps, procédez comme suit :
- Accédez à la page Déclencheurs de votre pipeline PR ou CI ou CC.
- Cliquez sur l'icône Actions
dans l'entrée de référentiel et sélectionnez Editer.
- Mettez à jour la branche vers
open-v9et sélectionnez Mettre à jour.