2017-04-03 15 views
0

Ich bin neu zu Jenkins und ich habe 4 Repos in Bitbucket sagen A, B, C, D. Ich muss die A, B & C Repos holen, bauen sie mit Gradle Build, die Kriege erzeugen wird. Nun muss ich diese Kriege kopieren in D \ warsFolder Ich habe Multibranch-Pipeline erstellt und generiert die Pipeline-Syntax, die A, B & C von Git holt und baut sie. Sieht so etwas ausJenkins: Kopieren Artefakte von Multibranch Pipeline

node { 
    checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'A']], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'id', url: 'http://.../A.git']]]) 
    dir('A') { 
     bat 'gradle build -i --info --stacktrace --debug' 
    } 
    checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'B']], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'id', url: 'http://.../B.git']]]) 
    dir('B') { 
     bat 'gradle build -i --info --stacktrace --debug' 
    } 
checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'C']], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'id', url: 'http://.../C.git']]]) 
    dir('C') { 
     bat 'gradle build -i --info --stacktrace --debug' 
    } 

    } 

hinzugefügt das obige Skript in Jenkinsfile, die ich in A Repo platziert.

nun eine Pipeline FETCH_ALL mehrfach verzweigten und in Zweig Quellen erstellt Ich habe -> Single-Repository & Zweig -> Repository URL Ich habe http://.../A.git hinzugefügt (was Jenkinsfile hat). Bis hier alles funktioniert gut Ich bin in der Lage, die Quellen zu holen und sie zu bauen.

Ich habe einen neuen Job von Freestyle wo in Quellcodeverwaltung -> Git -> Repository URL wird http://.../D.git sein. Ich versuche, die in der Fetch_all Pipeline generierten Kriege zu kopieren, aber in Build -> Artefakte aus einem anderen Projekt kopieren, akzeptiert der Projektname die Multibranch-Pipeline nicht. Es wirft Fehler wie

ERROR: Unable to find project for artifact copy: 
This may be due to incorrect project name or permission settings; see help for project name in job configuration. 

Jede Hilfe wird geschätzt.

Antwort

1

Endlich, als ich gab pipeline_name/Branchname d. H. Fetch_all /% 00 es hat gut funktioniert.

Verwandte Themen