2017-01-05 7 views
11

Ich bin dabei, die Anzahl der gleichzeitigen Builds auf eine bestimmte Anzahl in Jenkins zu begrenzen, den Multi-Branch-Pipeline-Workflow zu nutzen, aber keine gute Möglichkeit gefunden, dies in den Dokumenten oder Google zu tun.Wie Jenkins gleichzeitige Multibranch-Pipeline-Builds begrenzen?

Einige Dokumente sagen, dass dies erreicht werden kann mit Nebenläufigkeit in der stage Schritt einer Jenkinsfile, aber ich habe auch read elsewhere, dass dies eine veraltete Methode ist es zu tun.

Es sieht so aus als ob es vor kurzem something released gab, um die Nebenläufigkeit über Job Properties zu begrenzen, aber ich konnte keine Dokumentation dafür finden, und ich habe Probleme, dem Code zu folgen. Das einzige, was fand ich eine PR, das zeigt der folgende:

properties([concurrentBuilds(false)])

Aber Ich habe Probleme bekommen es funktioniert.

Weiß jemand oder hat er ein gutes Beispiel dafür, wie man die Anzahl der gleichzeitigen Builds für ein bestimmtes, mehrere Ebenen umfassendes Projekt begrenzen kann? Vielleicht ein Jenkinsfile-Snippet, das zeigt, wie man die Anzahl gleichzeitiger Multibranch-Builds begrenzt oder begrenzt?

Antwort

11

Gefunden, wonach ich gesucht habe. Sie können die gleichzeitige Erstellung mit dem folgenden Block in Ihrer Jenkins-Datei einschränken.

node { 
    // This limits build concurrency to 1 per branch 
    properties([disableConcurrentBuilds()]) 

    //do stuff 
    ... 
} 

Das gleiche kann mit einer deklarativen Syntax erreicht werden:

pipeline { 
    options { 
     disableConcurrentBuilds() 
    } 
} 
+2

Sie tun können das gleiche für die deklarative Syntax. Hier sind [die Dokumente] (https://jenkins.io/doc/book/pipeline/syntax/#options) –

0

Wie @VadminKotov angegeben ist es möglich, auch concurrentbuilds mit jenkins deklarativen Pipelines zu deaktivieren:

pipeline { 
    agent any 
    options { disableConcurrentBuilds() } 
    stages { 
     stage('Build') { 
      steps { 
       echo 'Hello Jenkins Declarative Pipeline' 
      } 
     } 
    } 
} 
Verwandte Themen