2015-11-25 2 views
1

В настоящее время для включения или отключения задания пользователь должен иметь разрешения на работу с настройкой в ​​конфигурации безопасности на основе Matrix. Мы хотели бы иметь возможность управлять разрешением на включение и выключение работы независимо от разрешение на настройку задания. Есть несколько ночных заданий, которые мы хотим, чтобы каждый пользователь мог включить и отключить проект, не касаясь/нарушая конфигурацию.Отключение и включение заданий в jenkins

Благодаря

ответ

3

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

По крайней мере 3 способа сделать сценарий: запрос POST

HTTP:

1.

curl -X POST http(s)://<your_jenkins_url>/jenkins/job/<nightly-build_job_name>/disable 

2.

Используйте питона JenkinsAPI. Documentation очень хорошо, легко понять, как API.

3.

Третий может быть скрипт, который будет использовать Дженкинс-кли: принято answer описывает это хорошо.

0

Разрешение заданий на работу ограничено функцией дезактивации/включения в каждом задании, это правда.

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

  • Вы можете использовать curl + учетные данные пользователя Jenkins с разрешением на работу.

  • Вы можете использовать плагины. Например, этот сценарий с помощью Job DSL Plugin:

    job("jobname"){ 
        using("jobname") 
        disabled(true) 
    } 
    

Для других вариантов, проверить this question.