Как включить пользовательское сообщение Slack только после завершения?

11

Мы запускаем Jenkins с плагином Slack Notification . Есть ли способ отправить пользовательское сообщение только при завершении, а не при запуске? Чтобы было ясно, я не хочу отключать сообщение о начале сборки, я просто хотел бы, чтобы пользовательский текст отображался только при завершении (успех).

Вариант использования - это задания типа удаления стека. Мы используем пользовательское сообщение, чтобы прояснить, какой стек задание удалено, но в итоге вы получаете слабые сообщения, такие как (перефразировано)

Delete job started
  Deleted Alex stack

Delete job finished
  Deleted Alex stack

Очевидно, вы можете увидеть, где это вызывает путаницу. Я предпочел бы получить

Delete job started

Delete job finished
  Deleted Alex stack

«Это невозможно» - приемлемый ответ, если это так. Я знаю, что могу сделать обходной путь для конвейеров, но я бы хотел быстро исправить проблемы, которые мы еще не выполнили.

Alex
источник
Лучшая ставка, которую я мог бы сказать: разветвите плагин и настройте эту строку, чтобы удалить пользовательское сообщение при запуске. Я предполагаю, что открытие проблемы, поскольку запрос функции также может быть идеей, я не видел способа отключить пользовательское сообщение только на определенных шагах.
Тенсибай

Ответы:

7

Насколько я мог сказать, это невозможно.

Мы решили это, используя Pipeline, помещая пользовательские сообщения в файл Jenkinsfile.

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

Это хороший повод, чтобы перейти к конвейеру.

Это также очень легко сделать:

slackSend (color: colorCode, message: customMessage)

AVI
источник
1
да, мы медленно переходим к конвейерам, так что это решит проблему в долгосрочной перспективе, просто подумал, было ли краткосрочное решение. Спасибо!
Алекс