Получение артефактов из Nexus в Rundeck

Я создаю задание Rundeck, которое будет использоваться для отката приложения. Мои файлы .jar хранятся в репозитории Nexus, и я хотел бы добавить параметр в Rundeck, где я могу выбрать версию .jar из Nexus, а затем запустить задание отката для этого.

Я пробовал использовать этот плагин: https://github.com/nongfenqi/nexus3-rundeck-plugin, но похоже, что это не работает. Когда я вошел в систему Nexus, я могу получить доступ к файлу JSON со списком артефактов из моего браузера, но когда я выхожу из системы, файл JSON пуст, даже если сервер Nexus работает.

При добавлении URL-адреса JSON в качестве параметра удаленного URL-адреса в Rundeck, как показано на рисунке ниже, у меня нет возможности выбора при выполнении задания, даже если я вошел в систему Nexus, как показано на рисунке 2. Есть ли способ сделать это передать учетные данные пользователя с параметрами или каким-либо другим способом решения этой проблемы?

Удаленный URL-адрес файла JSON  Пустой список параметров


person PalBo    schedule 21.08.2019    source источник


Ответы (1)


Я бы порекомендовал вам установить Apache / HTTPD локально на вашем сервере rundeck и использовать для этого сценарий CGI.

  1. Напишите сценарий CGI, который запрашивает у службы Nexus3 версии, доступные в файле jar, и отображает результаты в формате JSON.

  2. Поместите сценарий в / var / www / cgi-bin / с включенным исполняемым битом. Проверить это можно так:

    curl 'http://localhost/cgi-bin/script-name.py'

  3. В своей работе вы можете соответствующим образом настроить свой удаленный URL.

Я считаю, что использование локального CGI-скрипта намного более надежно и гибко. Здесь вы также можете выполнить любые требования к аутентификации.

person Tony Wu    schedule 26.08.2019