Étapes imbriquées et parallèles dans Jenkins les pipelines
Utilisez des étapes imbriquées et parallèles dans les pipelines scriptés Jenkins pour accélérer l’exécution de votre pipeline. Les demandes de changement sont créées pour les étapes imbriquées et parallèles, et pas seulement pour l’étape parente.
Prise en charge des étapes imbriquées et parallèles dans Jenkins les pipelines
Vous pouvez utiliser des étapes imbriquées et parallèles dans les pipelines scriptés pour automatiser et accélérer les tâches qui peuvent être exécutées Jenkins en parallèle. Par exemple, vous avez un pipeline scripté Jenkins avec des étapes imbriquées et parallèles pour divers scénarios de test tels que différents contrôles qualité pour différents systèmes d’exploitation et navigateurs.
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building...'
// Your build steps here
}
}
stage('Test') {
parallel {
stage('Unit Tests') {
steps {
echo 'Running unit tests...'
// Your unit test steps here
}
}
stage('Integration Tests') {
steps {
echo 'Running integration tests...'
// Your integration test steps here
}
}
stage('Additional Tests') {
steps {
script {
parallel(
'Nested Stage 1': {
echo 'Running nested parallel stage 1...'
// Your nested parallel stage 1 steps here
},
'Nested Stage 2': {
echo 'Running nested parallel stage 2...'
// Your nested parallel stage 2 steps here
}
)
}
}
}
}
}
stage('Deploy') {
steps {
echo 'Deploying...'
snDevOpsChange changeRequestDetails: '{ "attributes": {"chg_model": "e55d0bfec343101035ae3f52c1d3ae49","standard_change_template"="563504cc47410200e90d87e8dee490e2"},"autoCloseChange": false}',changeStepTimeOut: 18000, pollingInterval: 60
// Your deploy steps here
}
}
}
}
Demandes de changement aux étapes imbriquées et parallèles
Les demandes de changement sont créées pour toutes les étapes imbriquées et parallèles, une fois que tous les événements en amont (antérieurs à la demande de changement) sont reçus. Dans les versions précédentes, les étapes imbriquées ou parallèles dans Jenkins les pipelines n’étaient pas identifiées ni traitées dans ServiceNow DevOps. Seules les étapes parentes ont été identifiées et traitées de manière linéaire ou séquentielle. Si les demandes de changement existaient dans le cadre d’étapes imbriquées et parallèles, elles étaient ignorées et une seule demande de changement était traitée dans le cadre de l’étape parente. Lorsque vous exécutez un nouveau pipeline après la mise à niveau, de nouvelles étapes et exécutions d’étapes sont créées pour les étapes imbriquées.
Les étapes imbriquées et parallèles n’ont pas été traitées auparavant, et les groupes d’approbation ont été mappés uniquement à l’étape parente. Étant donné que les étapes imbriquées et parallèles sont identifiées pendant le traitement, vous devez vérifier que les groupes d’approbation appropriés sont mappés à l’étape imbriquée ou parallèle appropriée. Si les étapes suivantes du pipeline dépendent de l’approbation de la demande de changement, l’exécution du pipeline est suspendue et reprise lorsque la demande de changement est approuvée.
Considérations relatives à la mise à niveau
- Mise à niveau en dehors des heures de pointe.
- Assurez-vous qu’aucune exécution de pipeline n’est en cours d’ici ServiceNow DevOpsle . Si les exécutions de pipeline sont en cours de traitement, les exécutions d’étapes peuvent ne pas être créées comme prévu pour les exécutions de pipeline en cours. Réexécutez le pipeline pour créer des exécutions d’étapes appropriées.