2017-02-12 4 views
0

Hauptproblem:Scripting innerhalb Jenkins Job

Im Jenkins bauen, ich habe eine Variable GIT_BRANCH dieses Inhalts: origin/feature/JIRA1-add-component-A.

Von ihm würde Ich mag eine andere Variable mit dem Wert erhalten: %3Aorigin%2Ffeature%2FJIRA1-add-component-A

Dafür ich Scripting benötigen. Wie kann ich Scripting in der Jobdefinition durchführen?

Kontext & weitere Erklärung:

Von Jenkins, für jede Pull-Anforderung, die mein Projekt, ich eine Instanz eines Projekts in Sonarqube erschaffe.

Zum Beispiel, wenn ich eine Pull-Anforderung von Ast haben origin/feature/JIRA1-add-component-A, bin ich ein Projekt mit der folgenden URL zu erstellen:

http://localhost:9000/dashboard?id=com.my.package%3Amy-project%3Aorigin%2Ffeature%2FJIRA1-add-component-A

ich das Quality Gates Plugin bin mit dem Bau im Fall fehlschlagen die Code-Qualität (wie von SonarQube gesehen) ist nicht gut.

Das Problem ist, dass Quality Gates meinen SonarQube-Projektnamen benötigt, also in diesem Fall com.my.package%3Amy-project%3Aorigin%2Ffeature%2FJIRA1-add-component-A.

Allerdings kann ich angeben es nur so:

com.my.package:my-project:${GIT_BRANCH} 

, die in diese übersetzt:

com.my.package:my-project:origin/feature/JIRA1-add-component-A 

Antwort

0

So etwas wie das? Entschuldige wenn nicht, aber todmüde lol.

def GIT_BRANCH = "origin/feature/JIRA1-add-component-A" 
def BRANCH = "%A3" + "${GIT_BRANCH}".replace("/", "%2F") 
println "${BRANCH}" 

Ich bin sicher, kann es einfacher BUT erfolgen:

Pre: Herkunft/Feature/JIRA1-Add-Komponente-A

Beitrag:% A3origin% 2Ffeature% 2FJIRA1-Add- Komponente-A

+0

Also wo genau in der Jobkonfiguration kann ich das setzen? – octavian

+0

Das ist mein Schlechter Ich dachte, dass Sie Pipeline verwenden: Es gibt mehrere Möglichkeiten, dies zu tun, dies ist eine und sed Magie verwenden, um Ihre Umgebungsvariable festzulegen, aber ich müsste genau sehen, wie dieser Job eingerichtet wird, um mehr zu helfen. Ich entschuldige mich. Installieren Sie: https://wiki.jenkins-ci.org/display/JENKINS/Environment+Script+Plugin und als Skript –