Синтаксис
Agent
- указывает, где запускается весь конвейер или конкретный этап. Agent в верхней части блока pipeline должен быть определен обязательно для выполнения. Отдельные директивы agent может быть указана по необходимости в начале отдельных этапов, чтобы указать, где в этих этапах должен выполняться код.
Параметры для agent:
-
any
- Выполните конвейер или этап для любого доступного агента. none - При применении на верхнем уровне блока конвейера глобальный агент не будет выделен для всего выполнения конвейера, и каждый раздел Stage должен содержать свой собственный раздел агента. -
label
- Выполните конвейер или этап для агента, доступного в среде Jenkins, с предоставленной меткой. -
node
- идентичен label, но у node можно указать дополнительный параметр customWorspace. -
docker
- выполнить конвейер или этап с заданным контейнером, который будет динамически подготовлен на узле, предварительно настроенном для приема конвейеров на основе Docker -
dockerfile
- выполнить конвейер или этап с контейнером, созданным из файла Docker, содержащегося в исходном репозитории. -
kubernetes
- выполнить конвейер или этап внутри модуля, развернутого в кластере Kubernetes. Пример 1: Раздел агента внутри части блока pipeline
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Hello Pipeline'
ws('/tmp/hey') {
sh 'pwd'
}
}
}
}
}
Пример 2: Раздел агента внутри stage
pipeline {
agent none
stages {
stage('Build') {
agent any
steps {
echo 'Helo Pipeline'
}
}
stage('Test') {
agent any
steps {
echo 'Test'
}
}
}
}