Как вызвать внешние Groovy-файлы из скрипта Jenkins Build Flow Plugin?
Сценарий JobDSL может использовать файл Groovy в том же каталоге. Например, Git.groovy
с содержанием вроде:
class Git extends Closure<Void> {
final String git
def Git(final String git = '/usr/bin/git') {
super(null)
this.git = git
}
def call(ArrayList<String> command, File dir = null) {
final gitCommand = [git, *command].execute(null, dir)
gitCommand.waitFor()
}
}
может использоваться сценарием JobDSL:
final git = new Git()
git(['clone', ...])
Но когда то же самое делается в скрипте Build Flow, он выдает что-то вроде:
Script1.groovy: 49: unable to resolve class Git
Это происходит, даже если скрипт Build Flow имеет Flow run needs a workspace
задавать.
Как скрипт Build Flow может повторно использовать общий код?