Назад | Перейти на главную страницу

Скажите Дженкинсу запустить конкретный проект на определенном подчиненном узле

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

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

Установите флажок «Ограничить, где это задание может быть запущено» в конфигурации задания и укажите имя своего ведомого устройства.

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

См. Эту справочную документацию:

Если вы выполняете задание конвейера, вы сначала хотите добавить метку (например, «подчиненный») к подчиненному узлу (или агенту, как он сейчас называется).

Затем в сценарии конвейера вы указываете метку, на которой выполняется задание:

Декларативный конвейер:

pipeline {
    agent {label 'slave'}
    stages {
        ...
    }
}

Скриптовый конвейер:

node (label: 'slave') {
    ...
}

Теперь это задание будет выполняться на любом узле с меткой «подчиненный». Если вы хотите, чтобы задание выполнялось только на этом конкретном ведомом устройстве, не используйте метку повторно. И, конечно, ярлык не обязательно должен быть «рабом»; это может быть что угодно.

Обновить:

Если в сценарии конвейера ваш узел назван «Мой узел», вы также можете сделать это:

node ('My Node') {
    ...
}

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

Если вы хотите использовать узел / метку в качестве параметра, установите Плагин параметров NodeLabel