Ich versuche SCM für meine Maven Release-Plugin zu konfigurieren. Das Problem ist jedoch: Die pom.xml in meinem Archetyp, ich möchte nicht eine einzige SCM-Variable fest codieren, sondern eine parametrisierte Version. In meiner jenkinsfile haben wir ein proprietäres Tool, das die scm-URL füllt, also möchte ich diese URL in meine pom.xml einfügen, sobald ich das Projekt von meinem Archetyp eingerichtet habe. Siehe Codefragment unten.Eine Variable in pom.xml von Jenkinsfile einfügen
<developerConnection>scm:git:${myVariable}</developerConnection>
In meinem Jenkinsfile, ziehe ich wie folgt diesen Wert aus (dies richtig funktioniert):
node {
stage 'Checkout'
checkout scm
def myVariable= sh(returnStdout: true, script: 'git config remote.origin.url').trim()
Also, zur Erinnerung, ich möchte wissen, wie sich der Wert von Jenkins in das bekommen kann ersetzt pom.xml?
Gerade jetzt, ich bin immer diese Fehlermeldung:
[INFO] fetch url: ${myVariable}
[INFO] push url: ${myVariable}
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.755 s
[INFO] Finished at: 2017-07-17T16:21:00+00:00
[INFO] Final Memory: 20M/784M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.3:prepare (default-cli) on project newSeedService: An error is occurred in the checkin process: Exception while executing SCM command. JGit checkin failure! ${myVariable}: not found. -> [Help 1]
Danke