blob: 06b98d672e9dbf64a07bc5c1329581819428f115 [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'Connor685f2802014-11-25 12:14:42 -080039 - 'mininet-flavor-build'
40
41- job-group:
42 name: mininet-stable
43 flavor:
44 - trusty32server
45 - trusty64server
46 branch: '2.2.0b2'
47 tag: '-stable'
48 jobs:
49 - 'mininet-flavor-build'
50
51- job-group:
52 name: mininet-flavor-build
53 jobs:
54 - 'mininet-{flavor}{tag}'
55 - 'mininet-{flavor}-test{tag}'
Brian O'Connor9cf37152014-09-20 01:49:22 -070056
57- job-template:
Brian O'Connor685f2802014-11-25 12:14:42 -080058 name: 'mininet-{flavor}{tag}'
Brian O'Connor9cf37152014-09-20 01:49:22 -070059 block-downstream: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070060 triggers:
61 - timed: "@midnight"
62 builders:
Brian O'Connor685f2802014-11-25 12:14:42 -080063 - shell: echo {branch}
Bob Lantz02c54322014-09-25 19:43:31 -070064 - shell: stdbuf -oL -eL mispipe "~mininet/mininet/util/vm/build.py -v --test sanity {flavor}" "tr '\r' ' '"
Bob Lantzb23a14d2014-10-01 16:49:23 -070065 - shell: zip `basename -s .ovf */*.ovf`.zip */*.vmdk */*.ovf
Brian O'Connord0ad16e2014-09-20 00:07:08 -070066 publishers:
Brian O'Connor73666062014-09-20 02:29:13 -070067 - archive:
Brian O'Connor74b9c232014-09-20 04:01:46 -070068 artifacts: '**'
Bob Lantz825f3ee2014-09-25 20:08:10 -070069 - logparser:
70 parse-rules: "/home/mininet/vm-build/mininet-build.rules"
71 unstable-on-warning: false
72 fail-on-error: true
Brian O'Connord0ad16e2014-09-20 00:07:08 -070073 - trigger-parameterized-builds:
Brian O'Connor9cf37152014-09-20 01:49:22 -070074 - project: 'mininet-{flavor}-test'
Brian O'Connor3af0f482014-09-19 20:00:29 -070075 condition: SUCCESS
Brian O'Connor326d0422014-09-19 19:54:29 -070076 predefined-parameters: dir=$WORKSPACE
Brian O'Connor08c5b112014-09-19 19:10:17 -070077
Brian O'Connor9cf37152014-09-20 01:49:22 -070078- job-template:
Brian O'Connor685f2802014-11-25 12:14:42 -080079 name: 'mininet-{flavor}-test{tag}'
Brian O'Connor73666062014-09-20 02:29:13 -070080 parameters:
81 - string:
Bob Lantz933c4a22014-09-22 17:27:37 -070082 name: dir
Brian O'Connor73666062014-09-20 02:29:13 -070083 default: /var/lib/jenkins/jobs/mininet-{flavor}/workspace
84 description: "$dir defaults to last build when using Build Now."
Brian O'Connord0ad16e2014-09-20 00:07:08 -070085 builders:
Bob Lantz3f2c36d2014-09-25 19:01:47 -070086 - shell: "echo $dir"
Bob Lantz3c407072014-10-02 14:52:15 -070087 - 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 -070088 publishers:
89 - logparser:
Bob Lantz17ba9c82014-09-25 17:36:11 -070090 parse-rules: "/home/mininet/vm-build/mininet-test.rules"
Bob Lantzbe321b62014-09-25 17:16:25 -070091 unstable-on-warning: false
92 fail-on-error: true
Brian O'Connor65f99852014-09-19 23:14:03 -070093
94# ---- the following are jobs that update jenkins when this file is updated ----
Brian O'Connor01303d42014-09-19 18:10:58 -070095- job:
Brian O'Connor82792082014-09-19 18:59:43 -070096 name: update-jenkins-jobs
Brian O'Connor380c2522014-09-20 00:12:40 -070097 description: |
Bob Lantz6f806722014-09-22 18:13:47 -070098 This job updates Jenkins jobs automatically when updates are made to the YAML file.
Brian O'Connor380c2522014-09-20 00:12:40 -070099
100 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 -0700101 scm:
102 - git:
103 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
104 branches:
105 - master
106 browser: gitweb
107 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
108 timeout: 20
109 triggers:
Brian O'Connor4e72d842014-09-19 18:20:04 -0700110 - gerrit:
Brian O'Connor01303d42014-09-19 18:10:58 -0700111 trigger-on-ref-updated-event: true
112 trigger-on-change-merged-event: true
113 projects:
114 - project-compare-type: 'PLAIN'
115 project-pattern: 'vm-build'
116 branches:
117 - branch-compare-type: 'PLAIN'
118 branch-pattern: 'master'
Brian O'Connor4e72d842014-09-19 18:20:04 -0700119 silent: true
Brian O'Connor01303d42014-09-19 18:10:58 -0700120 builders:
Bob Lantz601c98e2014-10-07 16:34:49 -0700121 - shell: "jenkins-jobs --flush-cache --conf /var/lib/jenkins/jenkins_jobs.conf update jobs.yaml"
Brian O'Connorc990f872014-09-19 18:21:25 -0700122
123- job:
124 name: update-jenkins-verify
Brian O'Connor380c2522014-09-20 00:12:40 -0700125 description: |
126 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 -0700127 parameters:
128 - string:
129 name: GERRIT_REFSPEC
Bob Lantz933c4a22014-09-22 17:27:37 -0700130 default: refs/heads/master
Brian O'Connor73666062014-09-20 02:29:13 -0700131 description: "Use master as default when using Build Now."
Brian O'Connordb899fb2014-09-19 23:09:14 -0700132 scm:
133 - git:
134 url: ssh://jenkins@gerrit.onlab.us:29418/vm-build
Brian O'Connor73666062014-09-20 02:29:13 -0700135 refspec: $GERRIT_REFSPEC
Brian O'Connordb899fb2014-09-19 23:09:14 -0700136 branches:
137 - $GERRIT_BRANCH
138 browser: gitweb
139 browser-url: https://gerrit.onlab.us/gitweb?p=vm-build.git
Brian O'Connorc82eaf82014-09-20 03:28:50 -0700140 choosing-strategy: gerrit
Brian O'Connordb899fb2014-09-19 23:09:14 -0700141 timeout: 20
142 triggers:
143 - gerrit:
144 trigger-on-draft-published-event: true
145 trigger-on-patchset-uploaded-event: true
Brian O'Connor51c53d82014-09-19 23:19:42 -0700146 trigger-for-unreviewed-patches: true
Brian O'Connordb899fb2014-09-19 23:09:14 -0700147 projects:
148 - project-compare-type: 'PLAIN'
149 project-pattern: 'vm-build'
150 branches:
151 - branch-compare-type: 'PLAIN'
152 branch-pattern: 'master'
153 builders:
154 - shell: "jenkins-jobs test jobs.yaml"