Merge lp:~canonical-platform-qa/qa-jenkins-jobs/daily-spread into lp:qa-jenkins-jobs

Proposed by Max Brustkern
Status: Merged
Approved by: Max Brustkern
Approved revision: 218
Merged at revision: 219
Proposed branch: lp:~canonical-platform-qa/qa-jenkins-jobs/daily-spread
Merge into: lp:qa-jenkins-jobs
Diff against target: 166 lines (+137/-1)
3 files modified
debian/control (+1/-1)
jobs/macros.yaml (+22/-0)
jobs/snapcore-qa-tests/jobs.yaml (+114/-0)
To merge this branch: bzr merge lp:~canonical-platform-qa/qa-jenkins-jobs/daily-spread
Reviewer Review Type Date Requested Status
platform-qa-bot continuous-integration Approve
Jean-Baptiste Lallement Approve
prod-platform-qa continuous-integration Pending
Review via email: mp+317547@code.launchpad.net

Commit message

Add daily spread tests for ubuntu core

Description of the change

This branch adds daily jobs to run spread tests on virtual machines. Building daily images from candidate snaps and upgrading the ubuntu core 16 released images to current stable are currently supported. Only pc-amd64 is included in the initial release, but pc-i386 should be easy to support once a model assertion is available and the appropriate released image is setup. Triggering the tests based on updates is the next step, and grafana reporting will be added once spread can output junit.

To post a comment you must log in.
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
Max Brustkern (nuclearbob) wrote :

pc-i386 is added now.

Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

LGTM, thanks!

review: Approve
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Max Brustkern (nuclearbob) wrote :

Autolanding is still trying to run with the allanlesage user. I've deployed this manually so we can get daily tests while we fix that.

Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) :
review: Approve (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
platform-qa-bot (platform-qa-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/control'
2--- debian/control 2016-05-19 19:54:52 +0000
3+++ debian/control 2017-02-23 16:39:06 +0000
4@@ -2,7 +2,7 @@
5 Section: devel
6 Priority: optional
7 Maintainer: Max Brustkern <max@canonical.com>
8-Build-Depends: debhelper (>= 9)
9+Build-Depends: debhelper (>= 9), bzr
10 Standards-Version: 3.9.7
11 Homepage: https://launchpad.net/qa-jenkins-jobs
12
13
14=== modified file 'jobs/macros.yaml'
15--- jobs/macros.yaml 2017-02-14 11:57:56 +0000
16+++ jobs/macros.yaml 2017-02-23 16:39:06 +0000
17@@ -1,3 +1,20 @@
18+# vim: sw=4 ts=4 et
19+
20+# Auto Upgrade Testing
21+# Copyright 2016-2017 Canonical Ltd.
22+
23+# This program is free software: you can redistribute it and/or modify it
24+# under the terms of the GNU General Public License version 3, as published
25+# by the Free Software Foundation.
26+
27+# This program is distributed in the hope that it will be useful, but
28+# WITHOUT ANY WARRANTY; without even the implied warranties of
29+# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
30+# PURPOSE. See the GNU General Public License for more details.
31+
32+# You should have received a copy of the GNU General Public License along
33+# with this program. If not, see <http://www.gnu.org/licenses/>.
34+
35 - builder: # This step removes artifacts from previous builds
36 name: clear-artifacts
37 builders:
38@@ -77,3 +94,8 @@
39 - archive:
40 artifacts: '**/*'
41 allow-empty: 'true'
42+
43+- trigger: # This will schedule a daily build at a staggered time
44+ name: 'daily'
45+ triggers:
46+ - timed: 'H H * * *'
47
48=== added directory 'jobs/snapcore-qa-tests'
49=== added file 'jobs/snapcore-qa-tests/jobs.yaml'
50--- jobs/snapcore-qa-tests/jobs.yaml 1970-01-01 00:00:00 +0000
51+++ jobs/snapcore-qa-tests/jobs.yaml 2017-02-23 16:39:06 +0000
52@@ -0,0 +1,114 @@
53+# vim: sw=4 ts=4 et
54+
55+# QA Jenkins Jobs
56+# Copyright 2017 Canonical Ltd.
57+
58+# This program is free software: you can redistribute it and/or modify it
59+# under the terms of the GNU General Public License version 3, as published
60+# by the Free Software Foundation.
61+
62+# This program is distributed in the hope that it will be useful, but
63+# WITHOUT ANY WARRANTY; without even the implied warranties of
64+# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
65+# PURPOSE. See the GNU General Public License for more details.
66+
67+# You should have received a copy of the GNU General Public License along
68+# with this program. If not, see <http://www.gnu.org/licenses/>.
69+
70+- project:
71+ name: snapcore-qa-tests-setup
72+ node: iso-testing
73+ jobs:
74+ - snapcore-qa-tests-setup
75+
76+- project:
77+ # Requires: Post Build Script plugin.
78+ name: snapcore-qa-tests
79+ model:
80+ - pc-amd64
81+ - pc-i386
82+ jobs:
83+ - snapcore-candidate-{model}-spread
84+ - snapcore-stable-upgrade-{model}-spread
85+
86+- builder:
87+ name: snap-vm
88+ builders:
89+ - shell: |
90+ if [ -f ~/.proxy_info ] ; then
91+ . ~/.proxy_info
92+ fi
93+
94+ cd snapcore-qa-tests/autospread
95+
96+ export USER="{user}"
97+ IMAGE="{image}"
98+ if [ -z "$IMAGE" ] ; then
99+ sudo ./create-image.sh -k ~/.ssh/id_rsa.pub -c {channel} -m {model}
100+ IMAGE=ubuntu-core-16-{model}.img
101+ fi
102+
103+ ./spread-vm.sh $IMAGE {upgrade}
104+
105+- job-template:
106+ name: snapcore-candidate-{model}-spread
107+ description: |
108+ This job runs the spread tests on an image built from candidate snaps for the {model} model
109+ Defined in lp:qa-jenkins-jobs
110+ node: iso-testing
111+ triggers:
112+ - daily:
113+ builders:
114+ - clear-artifacts:
115+ - branch-bzr-project:
116+ project-url: 'lp:snapcore-qa-tests'
117+ project-name: 'snapcore-qa-tests'
118+ - snap-vm:
119+ user: 'qa'
120+ image: ''
121+ channel: 'candidate'
122+ model: '{model}'
123+ upgrade: ''
124+ publishers:
125+ - archive:
126+ artifacts: 'spread-output'
127+ allow-empty: 'true'
128+
129+- job-template:
130+ name: snapcore-stable-upgrade-{model}-spread
131+ description: |
132+ This job runs the spread tests on released ubuntu core 16 image upgrade to current stable for the {model} model
133+ Defined in lp:qa-jenkins-jobs
134+ node: iso-testing
135+ triggers:
136+ - daily:
137+ builders:
138+ - clear-artifacts:
139+ - branch-bzr-project:
140+ project-url: 'lp:snapcore-qa-tests'
141+ project-name: 'snapcore-qa-tests'
142+ - snap-vm:
143+ user: 'nuclearbob'
144+ image: '/var/cache/auto-upgrade-testing/ubuntu-core-16-{model}.img'
145+ channel: ''
146+ model: ''
147+ upgrade: '-upgrade'
148+ publishers:
149+ - archive:
150+ artifacts: 'spread-output'
151+ allow-empty: 'true'
152+
153+- job:
154+ name: 'snapcore-qa-tests-setup'
155+ description: |
156+ This job ensures we have everything needed to run snapcore-qa-tests
157+ It can be run again to update to the latest versions of dependencies
158+ Defined in lp:qa-jenkins-jobs
159+ builders:
160+ - clear-artifacts:
161+ - branch-bzr-project:
162+ project-url: 'lp:snapcore-qa-tests'
163+ project-name: 'snapcore-qa-tests'
164+ - shell: |
165+ cd snapcore-qa-tests/autospread
166+ ./setup.sh

Subscribers

People subscribed via source and target branches