Skip to content
Snippets Groups Projects
Commit be613060 authored by George Joseph's avatar George Joseph
Browse files

CI: Add "throttle" label and "skip_gate" capability

To make throttling by label fully active, the "throttle" option
has to be specified with a specific label.

You can now specify "skip_gate" in the Gerrit comments when you
do a +2 code review to tell Jenkins not to actually run the
gate.  You'd do this if you plan to manually merge the change.

Also updated the "printenv" debug output to better sort multi-line
comments.

Change-Id: I4c0b1085acec4805f2ca207eebac50aad81f27e2
parent 53c9e796
No related branches found
No related tags found
No related merge requests found
......@@ -20,6 +20,8 @@ if (env.TIMEOUT_GATES) {
pipeline {
options {
ansiColor('gnome-terminal')
throttle(['asterisk-gate'])
timestamps()
timeout(time: timeoutTime, unit: timeoutUnits)
}
......@@ -62,14 +64,15 @@ pipeline {
stages {
stage ("->") {
/*
* Jenkins will try to automatically rebuild this job when
* the jenkinsfile changes but since this job is dependent on
* Gerrit, we really don't want to do anything in that case.
*/
when {
/*
* Jenkins will try to automatically rebuild this job when
* the jenkinsfile changes but since this job is dependent on
* Gerrit, we really don't want to do anything in that case.
*/
not { environment name: 'GERRIT_CHANGE_NUMBER', value: '' }
not { environment name: 'GERRIT_EVENT_ACCOUNT_NAME', value: 'Jenkins2' }
/* If "skip_gate" is in the comments, don't run the job */
not { expression { env.GERRIT_EVENT_COMMENT_TEXT ==~ /.*skip_gate.*/ } }
}
steps {
/* Here's where we switch to scripted pipeline */
......@@ -97,7 +100,7 @@ pipeline {
withCredentials([usernamePassword(credentialsId: "${JENKINS_GERRIT_CREDS}",
passwordVariable: 'GERRIT_USER_PW', usernameVariable: 'GERRIT_USER_NAME')]) {
sh "printenv | sort"
sh "printenv -0 | sort -z | tr '\0' '\n'"
checkout scm: [$class: 'GitSCM',
branches: [[name: env.GERRIT_BRANCH ]],
......
......@@ -20,6 +20,8 @@ if (env.TIMEOUT_DAILIES) {
pipeline {
options {
ansiColor('gnome-terminal')
throttle(['asterisk-daily'])
timestamps()
timeout(time: timeoutTime, unit: timeoutUnits)
}
......@@ -41,7 +43,7 @@ pipeline {
stage ("Checkout") {
sh "sudo chown -R jenkins:users ."
sh "printenv | sort"
sh "printenv -0 | sort -z | tr '\0' '\n'"
sh "sudo tests/CI/setupJenkinsEnvironment.sh"
}
......
......@@ -20,6 +20,8 @@ if (env.TIMEOUT_REF_DEBUG) {
pipeline {
options {
ansiColor('gnome-terminal')
throttle(['asterisk-ref-debug'])
timestamps()
timeout(time: timeoutTime, unit: timeoutUnits)
}
......@@ -41,7 +43,7 @@ pipeline {
stage ("Checkout") {
sh "sudo chown -R jenkins:users ."
sh "printenv | sort"
sh "printenv -0 | sort -z | tr '\0' '\n'"
sh "sudo tests/CI/setupJenkinsEnvironment.sh"
}
......
......@@ -20,6 +20,8 @@ if (env.TIMEOUT_UNITTESTS) {
pipeline {
options {
ansiColor('gnome-terminal')
throttle(['asterisk-check'])
timestamps()
timeout(time: timeoutTime, unit: timeoutUnits)
}
......@@ -98,7 +100,7 @@ pipeline {
withCredentials([usernamePassword(credentialsId: "${JENKINS_GERRIT_CREDS}",
passwordVariable: 'GERRIT_USER_PW', usernameVariable: 'GERRIT_USER_NAME')]) {
sh "printenv | sort"
sh "printenv -0 | sort -z | tr '\0' '\n'"
checkout scm: [$class: 'GitSCM',
branches: [[name: env.GERRIT_BRANCH ]],
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment