blob: 1d9d765b4ec5f41b22cc3ec8c36d9f7923031d98 [file] [log] [blame]
Brian O'Connor9cf37152014-09-20 01:49:22 -07001- defaults:
2 name: global
Brian O'Connord0ad16e2014-09-20 00:07:08 -07003 project-type: freestyle
Brian O'Connor9cf37152014-09-20 01:49:22 -07004 description: |
Brian O'Connorc6aef8f2014-09-20 01:51:08 -07005 This is an auto-generated job.
Brian O'Connorc9449db2014-09-20 02:04:51 -07006
Brian O'Connor9cf37152014-09-20 01:49:22 -07007 To add or modify a job, look for the "vm-build" project on https://gerrit.onlab.us
Brian O'Connoraa7950f2014-09-20 00:58:52 -07008 logrotate:
Brian O'Connor73666062014-09-20 02:29:13 -07009 daysToKeep: 10
10 numToKeep: 10
11 artifactDaysToKeep: 5
12 artifactNumToKeep: 5
Brian O'Connorc9449db2014-09-20 02:04:51 -070013 wrappers:
14 - workspace-cleanup:
Bob Lantz933c4a22014-09-22 17:27:37 -070015 include:
Brian O'Connor1b803832014-09-20 02:13:48 -070016 - "*"
Brian O'Connorc9449db2014-09-20 02:04:51 -070017 dirmatch: true
Bob Lantzeb36a4e2014-09-25 18:17:33 -070018 - ansicolor
Brian O'Connoraa7950f2014-09-20 00:58:52 -070019
Brian O'Connor9cf37152014-09-20 01:49:22 -070020# ---- Mininet Build and Test Jobs ----
21- project:
22 name: mininet-build
Bob Lantz933c4a22014-09-22 17:27:37 -070023 flavor:
24 - precise32server
25 - precise64server
26 - trusty32server
27 - trusty64server
28 - utopic32server
29 - utopic64server
Brian O'Connor9cf37152014-09-20 01:49:22 -070030 jobs:
Bob Lantz933c4a22014-09-22 17:27:37 -070031 - 'mininet-{flavor}'
Bob Lantz933c4a22014-09-22 17:27:37 -070032 - 'mininet-{flavor}-test'
Brian O'Connor9cf37152014-09-20 01:49:22 -070033
34- job-template:
35 name: 'mininet-{flavor}'
36 block-downstream: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070037 triggers:
38 - timed: "@midnight"
39 builders:
Bob Lantz02c54322014-09-25 19:43:31 -070040 - shell: stdbuf -oL -eL mispipe "~mininet/mininet/util/vm/build.py -v --test sanity {flavor}" "tr '\r' ' '"
Bob Lantzb23a14d2014-10-01 16:49:23 -070041 - shell: zip `basename -s .ovf */*.ovf`.zip */*.vmdk */*.ovf
Brian O'Connord0ad16e2014-09-20 00:07:08 -070042 publishers:
Brian O'Connor73666062014-09-20 02:29:13 -070043 - archive:
Brian O'Connor74b9c232014-09-20 04:01:46 -070044 artifacts: '**'
Bob Lantz825f3ee2014-09-25 20:08:10 -070045 - logparser:
46 parse-rules: "/home/mininet/vm-build/mininet-build.rules"
47 unstable-on-warning: false
48 fail-on-error: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070049 - trigger-parameterized-builds:
Brian O'Connor9cf37152014-09-20 01:49:22 -070050 - project: 'mininet-{flavor}-test'
Brian O'Connor3af0f482014-09-19 20:00:29 -070051 condition: SUCCESS
Brian O'Connor326d0422014-09-19 19:54:29 -070052 predefined-parameters: dir=$WORKSPACE
Brian O'Connor08c5b112014-09-19 19:10:17 -070053
Brian O'Connor9cf37152014-09-20 01:49:22 -070054- job-template:
55 name: 'mininet-{flavor}-test'
Brian O'Connor73666062014-09-20 02:29:13 -070056 parameters:
57 - string:
Bob Lantz933c4a22014-09-22 17:27:37 -070058 name: dir
Brian O'Connor73666062014-09-20 02:29:13 -070059 default: /var/lib/jenkins/jobs/mininet-{flavor}/workspace
60 description: "$dir defaults to last build when using Build Now."
Brian O'Connord0ad16e2014-09-20 00:07:08 -070061 builders:
Bob Lantz3f2c36d2014-09-25 19:01:47 -070062 - shell: "echo $dir"
Bob Lantz3c407072014-10-02 14:52:15 -070063 - shell: stdbuf -oL -eL mispipe "~mininet/mininet/util/vm/build.py -v --test core --test examplesfull --test walkthrough --image $dir/*/*.vmdk --timeout 3600" "tr '\r' ' '"
Bob Lantzbe321b62014-09-25 17:16:25 -070064 publishers:
65 - logparser:
Bob Lantz17ba9c82014-09-25 17:36:11 -070066 parse-rules: "/home/mininet/vm-build/mininet-test.rules"
Bob Lantzbe321b62014-09-25 17:16:25 -070067 unstable-on-warning: false
68 fail-on-error: true
Brian O'Connor65f99852014-09-19 23:14:03 -070069
70# ---- the following are jobs that update jenkins when this file is updated ----
Brian O'Connor01303d42014-09-19 18:10:58 -070071- job:
Brian O'Connor82792082014-09-19 18:59:43 -070072 name: update-jenkins-jobs
Brian O'Connor380c2522014-09-20 00:12:40 -070073 description: |
Bob Lantz6f806722014-09-22 18:13:47 -070074 This job updates Jenkins jobs automatically when updates are made to the YAML file.
Brian O'Connor380c2522014-09-20 00:12:40 -070075
76 To add or modify a job, look for the "vm-build" project on https://gerrit.onlab.us
Brian O'Connor01303d42014-09-19 18:10:58 -070077 scm:
78 - git:
79 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
80 branches:
81 - master
82 browser: gitweb
83 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
84 timeout: 20
85 triggers:
Brian O'Connor4e72d842014-09-19 18:20:04 -070086 - gerrit:
Brian O'Connor01303d42014-09-19 18:10:58 -070087 trigger-on-ref-updated-event: true
88 trigger-on-change-merged-event: true
89 projects:
90 - project-compare-type: 'PLAIN'
91 project-pattern: 'vm-build'
92 branches:
93 - branch-compare-type: 'PLAIN'
94 branch-pattern: 'master'
Brian O'Connor4e72d842014-09-19 18:20:04 -070095 silent: true
Brian O'Connor01303d42014-09-19 18:10:58 -070096 builders:
Bob Lantz601c98e2014-10-07 16:34:49 -070097 - shell: "jenkins-jobs --flush-cache --conf /var/lib/jenkins/jenkins_jobs.conf update jobs.yaml"
Brian O'Connorc990f872014-09-19 18:21:25 -070098
99- job:
100 name: update-jenkins-verify
Brian O'Connor380c2522014-09-20 00:12:40 -0700101 description: |
102 This job is used to verify new Jenkins jobs using jenkins-job test before they are accepted in Gerrit.
Brian O'Connor73666062014-09-20 02:29:13 -0700103 parameters:
104 - string:
105 name: GERRIT_REFSPEC
Bob Lantz933c4a22014-09-22 17:27:37 -0700106 default: refs/heads/master
Brian O'Connor73666062014-09-20 02:29:13 -0700107 description: "Use master as default when using Build Now."
Brian O'Connordb899fb2014-09-19 23:09:14 -0700108 scm:
109 - git:
110 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
Brian O'Connor73666062014-09-20 02:29:13 -0700111 refspec: $GERRIT_REFSPEC
Brian O'Connordb899fb2014-09-19 23:09:14 -0700112 branches:
113 - $GERRIT_BRANCH
114 browser: gitweb
115 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
Brian O'Connorc82eaf82014-09-20 03:28:50 -0700116 choosing-strategy: gerrit
Brian O'Connordb899fb2014-09-19 23:09:14 -0700117 timeout: 20
118 triggers:
119 - gerrit:
120 trigger-on-draft-published-event: true
121 trigger-on-patchset-uploaded-event: true
Brian O'Connor51c53d82014-09-19 23:19:42 -0700122 trigger-for-unreviewed-patches: true
Brian O'Connordb899fb2014-09-19 23:09:14 -0700123 projects:
124 - project-compare-type: 'PLAIN'
125 project-pattern: 'vm-build'
126 branches:
127 - branch-compare-type: 'PLAIN'
128 branch-pattern: 'master'
129 builders:
130 - shell: "jenkins-jobs test jobs.yaml"