blob: 52f228b1e3ff7252c3f67e6a51e4072c44a4db56 [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
Brian O'Connor685f2802014-11-25 12:14:42 -080023 jobs:
24 - 'mininet-latest'
25 - 'mininet-stable'
26
27- job-group:
28 name: mininet-latest
Bob Lantz933c4a22014-09-22 17:27:37 -070029 flavor:
30 - precise32server
31 - precise64server
32 - trusty32server
33 - trusty64server
34 - utopic32server
35 - utopic64server
Brian O'Connor685f2802014-11-25 12:14:42 -080036 branch: 'master'
37 tag: ''
Brian O'Connor9cf37152014-09-20 01:49:22 -070038 jobs:
Brian O'Connorfca243e2014-11-25 12:20:06 -080039 - 'mininet-{flavor}{tag}'
40 - 'mininet-{flavor}-test{tag}'
Brian O'Connor685f2802014-11-25 12:14:42 -080041
42- job-group:
43 name: mininet-stable
44 flavor:
45 - trusty32server
46 - trusty64server
Bob Lantz4878b3b2014-12-08 15:39:45 -080047 branch: '2.2.0rc2'
Brian O'Connor685f2802014-11-25 12:14:42 -080048 tag: '-stable'
49 jobs:
Brian O'Connor685f2802014-11-25 12:14:42 -080050 - 'mininet-{flavor}{tag}'
51 - 'mininet-{flavor}-test{tag}'
Brian O'Connor9cf37152014-09-20 01:49:22 -070052
53- job-template:
Brian O'Connor685f2802014-11-25 12:14:42 -080054 name: 'mininet-{flavor}{tag}'
Brian O'Connor9cf37152014-09-20 01:49:22 -070055 block-downstream: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070056 triggers:
57 - timed: "@midnight"
58 builders:
Brian O'Connorfca243e2014-11-25 12:20:06 -080059 - shell: stdbuf -oL -eL mispipe "~mininet/mininet/util/vm/build.py -v --branch {branch} --test sanity {flavor}" "tr '\r' ' '"
Bob Lantzb23a14d2014-10-01 16:49:23 -070060 - shell: zip `basename -s .ovf */*.ovf`.zip */*.vmdk */*.ovf
Brian O'Connord0ad16e2014-09-20 00:07:08 -070061 publishers:
Brian O'Connor73666062014-09-20 02:29:13 -070062 - archive:
Brian O'Connor74b9c232014-09-20 04:01:46 -070063 artifacts: '**'
Bob Lantz825f3ee2014-09-25 20:08:10 -070064 - logparser:
65 parse-rules: "/home/mininet/vm-build/mininet-build.rules"
66 unstable-on-warning: false
67 fail-on-error: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070068 - trigger-parameterized-builds:
Brian O'Connorb8e63802014-11-25 13:51:09 -080069 - project: 'mininet-{flavor}-test{tag}'
Brian O'Connor3af0f482014-09-19 20:00:29 -070070 condition: SUCCESS
Brian O'Connor326d0422014-09-19 19:54:29 -070071 predefined-parameters: dir=$WORKSPACE
Brian O'Connor08c5b112014-09-19 19:10:17 -070072
Brian O'Connor9cf37152014-09-20 01:49:22 -070073- job-template:
Brian O'Connor685f2802014-11-25 12:14:42 -080074 name: 'mininet-{flavor}-test{tag}'
Brian O'Connor73666062014-09-20 02:29:13 -070075 parameters:
76 - string:
Bob Lantz933c4a22014-09-22 17:27:37 -070077 name: dir
Brian O'Connor73666062014-09-20 02:29:13 -070078 default: /var/lib/jenkins/jobs/mininet-{flavor}/workspace
79 description: "$dir defaults to last build when using Build Now."
Brian O'Connord0ad16e2014-09-20 00:07:08 -070080 builders:
Bob Lantz3f2c36d2014-09-25 19:01:47 -070081 - shell: "echo $dir"
Bob Lantz99de9a42015-02-03 19:34:14 -080082 - shell: stdbuf -oL -eL mispipe "~mininet/mininet/util/vm/build.py -v --test core --test examplesfull --test walkthrough --image $dir/*/*.vmdk --memory 2048 --timeout 3600" "tr '\r' ' '"
Bob Lantzbe321b62014-09-25 17:16:25 -070083 publishers:
84 - logparser:
Bob Lantz17ba9c82014-09-25 17:36:11 -070085 parse-rules: "/home/mininet/vm-build/mininet-test.rules"
Bob Lantzbe321b62014-09-25 17:16:25 -070086 unstable-on-warning: false
87 fail-on-error: true
Brian O'Connor65f99852014-09-19 23:14:03 -070088
89# ---- the following are jobs that update jenkins when this file is updated ----
Brian O'Connor01303d42014-09-19 18:10:58 -070090- job:
Brian O'Connor82792082014-09-19 18:59:43 -070091 name: update-jenkins-jobs
Brian O'Connor380c2522014-09-20 00:12:40 -070092 description: |
Bob Lantz6f806722014-09-22 18:13:47 -070093 This job updates Jenkins jobs automatically when updates are made to the YAML file.
Brian O'Connor380c2522014-09-20 00:12:40 -070094
95 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 -070096 scm:
97 - git:
98 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
99 branches:
100 - master
101 browser: gitweb
102 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
103 timeout: 20
104 triggers:
Brian O'Connor4e72d842014-09-19 18:20:04 -0700105 - gerrit:
Brian O'Connor01303d42014-09-19 18:10:58 -0700106 trigger-on-ref-updated-event: true
107 trigger-on-change-merged-event: true
108 projects:
109 - project-compare-type: 'PLAIN'
110 project-pattern: 'vm-build'
111 branches:
112 - branch-compare-type: 'PLAIN'
113 branch-pattern: 'master'
Brian O'Connor4e72d842014-09-19 18:20:04 -0700114 silent: true
Brian O'Connor01303d42014-09-19 18:10:58 -0700115 builders:
Bob Lantz601c98e2014-10-07 16:34:49 -0700116 - shell: "jenkins-jobs --flush-cache --conf /var/lib/jenkins/jenkins_jobs.conf update jobs.yaml"
Brian O'Connorc990f872014-09-19 18:21:25 -0700117
118- job:
119 name: update-jenkins-verify
Brian O'Connor380c2522014-09-20 00:12:40 -0700120 description: |
121 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 -0700122 parameters:
123 - string:
124 name: GERRIT_REFSPEC
Bob Lantz933c4a22014-09-22 17:27:37 -0700125 default: refs/heads/master
Brian O'Connor73666062014-09-20 02:29:13 -0700126 description: "Use master as default when using Build Now."
Brian O'Connordb899fb2014-09-19 23:09:14 -0700127 scm:
128 - git:
129 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
Brian O'Connor73666062014-09-20 02:29:13 -0700130 refspec: $GERRIT_REFSPEC
Brian O'Connordb899fb2014-09-19 23:09:14 -0700131 branches:
132 - $GERRIT_BRANCH
133 browser: gitweb
134 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
Brian O'Connorc82eaf82014-09-20 03:28:50 -0700135 choosing-strategy: gerrit
Brian O'Connordb899fb2014-09-19 23:09:14 -0700136 timeout: 20
137 triggers:
138 - gerrit:
139 trigger-on-draft-published-event: true
140 trigger-on-patchset-uploaded-event: true
Brian O'Connor51c53d82014-09-19 23:19:42 -0700141 trigger-for-unreviewed-patches: true
Brian O'Connordb899fb2014-09-19 23:09:14 -0700142 projects:
143 - project-compare-type: 'PLAIN'
144 project-pattern: 'vm-build'
145 branches:
146 - branch-compare-type: 'PLAIN'
147 branch-pattern: 'master'
148 builders:
149 - shell: "jenkins-jobs test jobs.yaml"