From d80316ebf28d9eac22880d4efcbfe97f06a3c65b Mon Sep 17 00:00:00 2001 From: Mike Bonnet Date: Thu, 16 May 2019 12:22:47 -0700 Subject: [PATCH] Make pipeline job options consistent Set a consistent set of options on Jenkins pipeline jobs. This includes timestamps, reasonable timeouts, saving only the last 10 builds (to avoid filling up the disk of the Jenkins master), disabling concurrent builds (to avoid hitting quota limits), and skipping the default checkout (all jobs that need the source call checkout() explicitly). --- .../koji/pipelines/templates/mbs-build.Jenkinsfile | 1 + .../pipelines/templates/mbs-greenwave-trigger.Jenkinsfile | 4 ++++ .../koji/pipelines/templates/mbs-image-promotion.Jenkinsfile | 3 +++ .../koji/pipelines/templates/mbs-integration-test.Jenkinsfile | 1 + .../koji/pipelines/templates/mbs-polling-pagure.yaml | 4 ++++ .../pipelines/templates/mbs-repotracker-trigger.Jenkinsfile | 4 ++++ 6 files changed, 17 insertions(+) diff --git a/openshift/integration/koji/pipelines/templates/mbs-build.Jenkinsfile b/openshift/integration/koji/pipelines/templates/mbs-build.Jenkinsfile index a228c1ae..ed3712da 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-build.Jenkinsfile +++ b/openshift/integration/koji/pipelines/templates/mbs-build.Jenkinsfile @@ -42,6 +42,7 @@ pipeline { timestamps() timeout(time: 120, unit: 'MINUTES') buildDiscarder(logRotator(numToKeepStr: '10')) + disableConcurrentBuilds() skipDefaultCheckout() } environment { diff --git a/openshift/integration/koji/pipelines/templates/mbs-greenwave-trigger.Jenkinsfile b/openshift/integration/koji/pipelines/templates/mbs-greenwave-trigger.Jenkinsfile index 230536b4..85c7bd41 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-greenwave-trigger.Jenkinsfile +++ b/openshift/integration/koji/pipelines/templates/mbs-greenwave-trigger.Jenkinsfile @@ -1,6 +1,10 @@ // Use scripted syntax because CIBuildTrigger currently doesn't support the declarative syntax properties([ + timestamps(), + timeout(time: 30, unit: 'MINUTES'), + buildDiscarder(logRotator(numToKeepStr: '10')), disableConcurrentBuilds(), + skipDefaultCheckout(), pipelineTriggers([ // example: https://github.com/jenkinsci/jms-messaging-plugin/blob/9b9387c3a52f037ba0d019c2ebcf2a2796fc6397/src/test/java/com/redhat/jenkins/plugins/ci/integration/AmqMessagingPluginIntegrationTest.java [$class: 'CIBuildTrigger', diff --git a/openshift/integration/koji/pipelines/templates/mbs-image-promotion.Jenkinsfile b/openshift/integration/koji/pipelines/templates/mbs-image-promotion.Jenkinsfile index 72a3417a..d9cc3cad 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-image-promotion.Jenkinsfile +++ b/openshift/integration/koji/pipelines/templates/mbs-image-promotion.Jenkinsfile @@ -38,6 +38,9 @@ pipeline { options { timestamps() timeout(time: 30, unit: 'MINUTES') + buildDiscarder(logRotator(numToKeepStr: '10')) + disableConcurrentBuilds() + skipDefaultCheckout() } environment { PIPELINE_NAMESPACE = readFile(file: '/run/secrets/kubernetes.io/serviceaccount/namespace').trim() diff --git a/openshift/integration/koji/pipelines/templates/mbs-integration-test.Jenkinsfile b/openshift/integration/koji/pipelines/templates/mbs-integration-test.Jenkinsfile index 7dd0e5ca..27d8f2c4 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-integration-test.Jenkinsfile +++ b/openshift/integration/koji/pipelines/templates/mbs-integration-test.Jenkinsfile @@ -41,6 +41,7 @@ pipeline { timestamps() timeout(time: 60, unit: 'MINUTES') buildDiscarder(logRotator(numToKeepStr: '10')) + disableConcurrentBuilds() skipDefaultCheckout() } environment { diff --git a/openshift/integration/koji/pipelines/templates/mbs-polling-pagure.yaml b/openshift/integration/koji/pipelines/templates/mbs-polling-pagure.yaml index 3145be71..9e5b377f 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-polling-pagure.yaml +++ b/openshift/integration/koji/pipelines/templates/mbs-polling-pagure.yaml @@ -123,6 +123,10 @@ objects: } options { timestamps() + timeout(time: 60, unit: 'MINUTES') + buildDiscarder(logRotator(numToKeepStr: '10')) + disableConcurrentBuilds() + skipDefaultCheckout() } environment { PIPELINE_NAMESPACE = readFile('/run/secrets/kubernetes.io/serviceaccount/namespace').trim() diff --git a/openshift/integration/koji/pipelines/templates/mbs-repotracker-trigger.Jenkinsfile b/openshift/integration/koji/pipelines/templates/mbs-repotracker-trigger.Jenkinsfile index f7e9fc06..08dd9528 100644 --- a/openshift/integration/koji/pipelines/templates/mbs-repotracker-trigger.Jenkinsfile +++ b/openshift/integration/koji/pipelines/templates/mbs-repotracker-trigger.Jenkinsfile @@ -1,6 +1,10 @@ // Use scripted syntax because CIBuildTrigger currently doesn't support the declarative syntax properties([ + timestamps(), + timeout(time: 30, unit: 'MINUTES'), + buildDiscarder(logRotator(numToKeepStr: '10')), disableConcurrentBuilds(), + skipDefaultCheckout(), pipelineTriggers([ // example: https://github.com/jenkinsci/jms-messaging-plugin/blob/9b9387c3a52f037ba0d019c2ebcf2a2796fc6397/src/test/java/com/redhat/jenkins/plugins/ci/integration/AmqMessagingPluginIntegrationTest.java [$class: 'CIBuildTrigger',