1
<?xml version='1.0' encoding='UTF-8'?>
6
This job provides a flexible way to execute all the tests in our daily image
7
testing process that contribute to the
8
<a href="http://reports.qa.ubuntu.com/smokeng/">QA Dashboard</a>.
9
The job is parameterized to give flexibility in what gets tested. A couple of
10
common ways to run this job are:
12
<dt>Full Test Run</dt>
15
<dt>Re-run a Failed Autopilot Test</dt>
16
<dd>INSTALL_URL=http://dev-jenkins:8080/job/utopic-touch_ro-mako/9</dd>
17
<dd>APPS=dropping_letters_app</dd>
18
<dt>Re-run a Failed UTAH Test</dt>
19
<dd>INSTALL_URL=http://dev-jenkins:8080/job/utopic-touch_ro-mako/9</dd>
20
<dd>TESTS=security</dd>
23
#NOTE: Automatically created from a script as part of daily smoke testing
27
<h3>Graphite Reports</h3>
29
<li><a href="https://graphite.engineering.canonical.com/graphlot/?width=841&height=770&&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.provision.mean%2C0.000016667%29%2C%22Provisioning%20Time(minutes)%22%29&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.test_autopilot.mean%2C0.000016667%29%2C%22Autopilot%20Tests%20Time%22%29&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.test_utah.mean%2C0.000016667%29%2C%22UTAH%20Tests%20Time%22%29&from=-1weeks">Timings (1 week)</a></li>
30
<li><a href="https://graphite.engineering.canonical.com/graphlot/?width=841&height=770&&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.provision.mean%2C0.000016667%29%2C%22Provisioning%20Time(minutes)%22%29&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.test_autopilot.mean%2C0.000016667%29%2C%22Autopilot%20Tests%20Time%22%29&target=alias%28scale%28statsd.{{statsd_key}}.{{imagetype}}.test_utah.mean%2C0.000016667%29%2C%22UTAH%20Tests%20Time%22%29&from=-4weeks">Timings (4 weeks)</a></li>
35
<keepDependencies>false</keepDependencies>
37
<hudson.model.ParametersDefinitionProperty>
38
<parameterDefinitions>
39
<hudson.model.StringParameterDefinition>
40
<name>INSTALL_URL</name>
41
<description>A URL to the previous job. If provided this job will use the same install options as it used. If the device executing the job happens to have the exact same image, then provisioning can be skipped.
43
<defaultValue></defaultValue>
44
</hudson.model.StringParameterDefinition>
45
<hudson.model.StringParameterDefinition>
47
<description>A space separated list of utah tests to run. "ALL" can be used to run all known utah tests.
49
<defaultValue>ALL</defaultValue>
50
</hudson.model.StringParameterDefinition>
51
<hudson.model.StringParameterDefinition>
53
<description>A space separated list of autopilot tests to run. "ALL" can be used to run all known tests.
55
<defaultValue>ALL</defaultValue>
56
</hudson.model.StringParameterDefinition>
57
<hudson.model.StringParameterDefinition>
59
<description>The image revision to test with.
61
<defaultValue></defaultValue>
62
</hudson.model.StringParameterDefinition>
63
<hudson.model.StringParameterDefinition>
65
<description>The number of workers
67
<defaultValue></defaultValue>
68
</hudson.model.StringParameterDefinition>
69
<hudson.model.StringParameterDefinition>
70
<name>worker_idx</name>
71
<description>The index of this worker
73
<defaultValue></defaultValue>
74
</hudson.model.StringParameterDefinition>
75
</parameterDefinitions>
76
</hudson.model.ParametersDefinitionProperty>
77
<com.sonyericsson.rebuild.RebuildSettings>
78
<autoRebuild>false</autoRebuild>
79
</com.sonyericsson.rebuild.RebuildSettings>
81
<scm class="hudson.scm.NullSCM"/>
82
<assignedNode>{{ name }}</assignedNode>
83
<canRoam>false</canRoam>
84
<disabled>false</disabled>
85
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
86
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
87
<triggers class="vector"/>
88
<concurrentBuild>true</concurrentBuild>
92
BRANCH="{{branch}}"
93
BZRDIR=`echo "$BRANCH" | awk -F/ '{ print $(NF) }'`
94
BZRDIR=$(readlink -f $BZRDIR)
95
[ -d $BZRDIR ] && rm -rf $BZRDIR
96
bzr branch ${BRANCH} ${BZRDIR}
98
export ANDROID_SERIAL={{serial}}
99
export IMAGE_TYPE={{imagetype}}
100
export IMAGE_SERIES={{series}}
101
export DEVICE_TYPE={{device_type}}
103
${BZRDIR}/scripts/recover.py ${NODE_NAME}
106
# the txstatsd package is too old, use the one from LP:
107
[ -d txstatsd ] && rm -rf txstatsd
108
bzr branch -r 109 lp:txstatsd
109
export PYTHONPATH=`pwd`/txstatsd
111
export STATSD_KEY={{statsd_key}}.{{imagetype}}
114
{% if dashboard_host %}
115
export DASHBOARD_HOST="{{dashboard_host}}"
117
{% if dashboard_user %}
118
export DASHBOARD_USER="{{dashboard_user}}"
120
{% if dashboard_key %}
121
set +x # don't let this leak into the public
122
export DASHBOARD_KEY="{{dashboard_key}}"
125
{% if dashboard_prefix %}
126
export DASHBOARD_PREFIX="{{dashboard_prefix}}"
128
{% if dashboard_port %}
129
export DASHBOARD_PORT="{{dashboard_port}}"
132
export NFSS_CONFIG="{{nfss_config}}"
136
${BZRDIR}/scripts/run-smoke
138
</hudson.tasks.Shell>
141
<hudson.tasks.ArtifactArchiver>
142
<artifacts>clientlogs/**</artifacts>
143
<latestOnly>false</latestOnly>
144
</hudson.tasks.ArtifactArchiver>
145
<hudson.tasks.junit.JUnitResultArchiver>
146
<testResults>clientlogs/**/*.xml</testResults>
147
<keepLongStdio>true</keepLongStdio>
149
<hudson.plugins.junitattachments.AttachmentPublisher/>
150
</testDataPublishers>
151
</hudson.tasks.junit.JUnitResultArchiver>
152
<hudson.plugins.descriptionsetter.DescriptionSetterPublisher>
153
<regexp>^= TOUCH IMAGE VERSION:([0-9]+.*)</regexp>
154
<regexpForFailed>^= TOUCH IMAGE VERSION:([0-9]+.*)</regexpForFailed>
155
<setForMatrix>false</setForMatrix>
156
</hudson.plugins.descriptionsetter.DescriptionSetterPublisher>
157
<hudson.plugins.postbuildtask.PostbuildTask>
159
<hudson.plugins.postbuildtask.TaskProperties>
161
<hudson.plugins.postbuildtask.LogProperties>
163
<operator>AND</operator>
164
</hudson.plugins.postbuildtask.LogProperties>
166
<EscalateStatus>false</EscalateStatus>
167
<RunIfJobSuccessful>false</RunIfJobSuccessful>
169
touch/scripts/recover.py ${NODE_NAME}
171
</hudson.plugins.postbuildtask.TaskProperties>
173
</hudson.plugins.postbuildtask.PostbuildTask>
175
<hudson.tasks.Mailer>
176
<recipients>paul.larson@canonical.com</recipients>
177
<dontNotifyEveryUnstableBuild>false</dontNotifyEveryUnstableBuild>
178
<sendToIndividuals>false</sendToIndividuals>
179
</hudson.tasks.Mailer>
180
<hudson.plugins.build__publisher.BuildPublisher>
181
<publishUnstableBuilds>true</publishUnstableBuilds>
182
<publishFailedBuilds>true</publishFailedBuilds>
183
<postActions class="vector"/>
184
</hudson.plugins.build__publisher.BuildPublisher>
188
<hudson.plugins.build__timeout.BuildTimeoutWrapper>
189
<timeoutMinutes>300</timeoutMinutes>
190
<failBuild>true</failBuild>
191
<writingDescription>false</writingDescription>
192
<timeoutPercentage>0</timeoutPercentage>
193
<timeoutType>absolute</timeoutType>
194
<timeoutMinutesElasticDefault>3</timeoutMinutesElasticDefault>
195
</hudson.plugins.build__timeout.BuildTimeoutWrapper>