Я знаю, что в Jenkins есть плагин Nexus Platform https://plugins.jenkins.io/nexus-jenkins-plugin/, но я не уверен, возможно ли следующее, какие-либо советы или предложения будут оценены.
В Jenkins у вас есть Git параметр выбора, который позволяет вам создавать определенные c теги / ветки в вашей работе. Есть ли что-то подобное для Sonatype Nexus? У нас есть внутренняя связка, куда мы загружаем и помечаем docker изображений.
В настоящее время у меня есть работа Jenkins, и мне нужно вручную ввести версию изображения. Есть ли в Jenkins способ получить параметр выбора, где я могу запросить все теги в нексусе.
Так, например, я могу запустить команду -> docker pull internal / application / service: 0.0.1 Поэтому разработчики загрузили бы новую версию, например, 0.0.2
. Из Jenkins я хотел бы вывести список 0.0.1 или 0.0.2 для создания группой поддержки. Не уверены, возможно ли это в настоящее время?
Обновление 2020/07/15
Я прочитал об активном плагине параметров выбора. Это позволяет вам выполнить сценарий groovy.
Итак, я создал ниже </p>
<pre><code>import groovy.json.JsonSlurper
// GET
try {
def get = new URL("http://internalserver:8081/service/rest/v1/search?repository=docker-internal&name=application/service/moo").openConnection();
def getRC = get.getResponseCode();
//println(getRC);
if (getRC.equals(200)) {
//println(get.getInputStream().getText());
JsonSlurper slurper = new JsonSlurper()
Map parsedJson = slurper.parseText(get.getInputStream().getText())
tags = parsedJson.items.version
//println(tags)
def sorted_tags = []
sorted_tags.push(tags)
println(sorted_tags)
}
}catch(Exception e){
println(e)
}
Этот код распечатывает теги, если я запустил его из своей среды IDE, но если Я добавляю его в плагин активного выбора, мое раскрывающееся меню пусто?