2013-10-02 10 views
5

Mam dwa kompilacje Jenkins, jeden do kompilacji i jeden do rozmieszczania.Lista parametrów w Jenkins, aby wyświetlić listę numerów kompilacji z innej kompilacji

Deweloper chce mieć możliwość wyboru kompilacji z kompilatora kompilacji podczas uruchamiania kompilacji wdrażania, nie zawsze uruchamia najnowszą kompilację.

Poszukuję metody wypełniania parametru wyboru dla kompilacji wdrażania z listą udanych \ niestabilnych kompilacji z kompilacji kompilacji.

Będę wówczas używał opcji wymienionej w parametrze do rozmieszczenia tego artefaktu.

Odpowiedz

0

Jedną opcją jest użycie Promoted Builds plugin do oznaczenia konkretnej kompilacji do wdrożenia. Przenosi to wybór z wersji instalacyjnej do kompilacji kompilacji. Wybierz opcję Promuj kompilacje, gdy ... opcja w kompilacji kompilacji i skonfiguruj sposób działania promocji. Deweloper może wybrać (lub zautomatyzować) kompilację do promowania. W kompilacji wdrażania Copy Artifact plugin może pobrać odpowiednią kompilację (na podstawie permalinka do najnowszej promowanej wersji).

+0

Sprawa wykorzystanie jednego rozmieszczenia na budowie wydaje się być pokryte z tego scenariusza. W mojej firmie mamy kilka różnych środowisk deweloperskich, które mogą, ale nie muszą wymagać wdrożenia. Czasami konkretna kompilacja może wymagać wdrożenia więcej niż raz w środowisku. Jestem sceptyczny, że ten scenariusz jest objęty twoim rozwiązaniem. –

+0

@Peter, uzgodnione. Używamy promowanych kompilacji dla prostych przypadków i procedury wydania dla publikowania różnych wersji, ale nie mamy złożoności wdrożenia, którą opisałeś. –

1

Z tego co wiem, nie można wypełnić parametru wyboru. Jednak nie musisz zawsze używać najnowszej wersji. Zakładam, że używasz copy artifact plugin. Ta wtyczka udostępnia parametr "Build selektor dla Copy Artifact". Nadal musisz ręcznie wpisać numer kompilacji, ale podczas wdrażania masz wszystkie standardowe opcje, takie jak "Ostatnia pomyślna kompilacja", ale także "Szczegółowa kompilacja". Musisz podać numer i nie ma rozwijanego menu, ale udało mi się przeszkolić moich pracowników na tyle dobrze, aby wprowadzić numer kompilacji.

9

Używanie Dynamic Parameters plugin

W swojej promowania pracy:

  • [x] Ten build jest parametryzowane
  • Dodaj Parametr
  • Dynamiczny wybór parametrów
  • nazwa zestawu, aby cokolwiek
  • Wklej poniżej w polu Wybór skryptu
import jenkins.model.Jenkins 
import hudson.model.AbstractProject 
import hudson.model.Result 
import hudson.util.RunList 

AbstractProject<?, ?> otherJob = Jenkins.getInstance().getItemByFullName("otherJobName", AbstractProject.class) 
RunList<?> builds = otherJob.getBuilds().overThresholdOnly(Result.SUCCESS) 

def list = builds.limit(5).collect { it.number } 

Zrzut ekranu ze strony wiki:

Screenshot

Powiązane problemy