Запуск задания Дженкинса с помощью команды Slack - 403_client_error - PullRequest
0 голосов
/ 17 сентября 2018

Я пытаюсь сделать довольно простую вещь, в которую, я верю, - запустить работу Дженкинса с помощью команды косой черты в расслабленном режиме.Я хочу набрать /dump вяло, и это должно вызвать конкретную работу Дженкинса.Я использую команду Slack Slash , чтобы добиться этого, и настройка очень проста - введите команду, введите URL, выберите метод POST / GET.

Я попробовал два метода - сначала было использовать плагин Token Root Root Plugin после этого урока - в этом случае я настроил команду Slack slash для выполнения запроса GET по URL: http://jenkins_url:8080/job/db-dump-setup/build?token=MY_TOKEN -Если я добавлю URL в свой браузер, задание будет запущено, если я запускаю команду /dump, slack отвечает:

slackbot [3:41 PM]
Darn - that slash command didn't work (error message: `403_client_error`). Manage the command at text.

Второй подход, который я попробовал, заключался в этом уроке .В этом случае я создал нового пользователя в Jenkins и получил токен API.При запуске этой команды из моего терминала: curl -X POST http://USER:TOKEN@slack_url:8080/job/db-dump-setup/build, задание снова запускается, однако при настройке команды Slack slash с тем же URL-адресом и выполнении запроса POST я получаю ту же ошибку: 403_client_error

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

Кто-нибудь сталкивался с чем-то подобным и знает, как могЯ понял это?

Ответы [ 2 ]

0 голосов
/ 08 мая 2019

Вам не нужно включать анонимный доступ. Ваш Дженкинс требует аутентификации.Обновите ваш URL-адрес, например http://user:auth -token @ jenkins-host: port.Auth токен можно сгенерировать по следующему URL-адресу JENKINS_HOST / me / configure

0 голосов
/ 17 сентября 2018

Мне удалось решить эту проблему, поэтому я отвечал на свой вопрос в случае, если кто-то столкнется с этим.Чтобы первый случай работал (с помощью запроса GET), мне пришлось включить «Разрешить анонимный доступ для чтения» в Jenkins, в разделе «Управление Jenkins -> Настройка глобальной безопасности», как показано на снимке экрана ниже.

enter image description here

...