Actuellement, je vais avoir besoin d'une implémentation qui doit trouver tous les fichiers dans un répertoire et démarrer une tâche parallèle pour chaque fichier trouvé.
Est-il possible d'y parvenir en utilisant des pipelines déclaratifs?
pipeline {
agent any
stages {
stage("test") {
steps {
dir ("file_path") {
// find all files with complete path
parallel (
// execute parallel tasks for each file found.
// this must be dynamic
}
}
}
}
}
}
}
jenkins
jenkinsfile
thclpr
la source
la source
Réponses:
Géré pour le résoudre avec le code suivant:
la source
Cela fonctionne également si vous souhaitez rester dans l'
Declarative Pipeline
espacela source
node {}
bloc, comme ceci:tests[f] = { node { echo f.toString() } }
Il est beaucoup plus facile d'utiliser des pipelines scriptés pour cela, car vous pouvez utiliser Groovy arbitraire, mais vous devriez toujours pouvoir le faire avec des pipelines déclaratifs à l'aide de l'
findFiles
étape.la source
Sachez que les étapes de génération dynamique peuvent entraîner des problèmes dans certaines étapes de génération, par exemple lorsque vous appelez un autre travail:
la source