Этап конвейера Дженкинса — цикл по подкаталогам целевого каталога

#jenkins #jenkins-pipeline

Вопрос:

Я хочу просмотреть содержимое папки, которая будет содержать несколько подкаталогов, чтобы я мог запускать команды оболочки в каждом из них.

Я просто пытаюсь доказать, что могу получить доступ к содержимому каталога, и до сих пор у меня это есть:

 stage('Publish Libs') {
    when {
        branch productionBranch
    }
    steps {
        echo "Publish Libs"
        dir('dist/libs') {
            def files = findFiles() 
            
            files.each{ f -> 
                if(f.directory) {
                    echo "This is directory: ${f.name} "
                }
            }
        }
    }
}
 

Но получаю эту ошибку

 org.jenkinsci.plugins.workflow.cps.CpsCompilationErrorsException: startup failed:
/var/lib/jenkins/jobs/al-magma/branches/master/builds/5/libs/o3-app-pipeline/vars/magmaPipeline.groovy: 178: Expected a step @ line 178, column 25.
                           def files = findFiles() 
 

Пожалуйста, какой здесь правильный синтаксис?

Комментарии:

1. Это похоже на декларативный DSL. Если это так, то ваш синтаксис конвейера, написанный сценарием, должен быть заключен в script блок, чтобы двигаться вперед либо с успехом, либо с новой ошибкой.