~vila/ubuntu-test-cases/retry-apt-get-update

« back to all changes in this revision

Viewing changes to jenkins/templates/touch-smoke.xml.jinja2

  • Committer: Leo Arias
  • Date: 2014-11-10 19:28:56 UTC
  • mfrom: (345 touch)
  • mto: This revision was merged to the branch mainline in revision 352.
  • Revision ID: leo.arias@canonical.com-20141110192856-rgpksx9n9j0b39yl
Merged with the touch branch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?xml version='1.0' encoding='UTF-8'?>
 
2
<project>
 
3
  <actions/>
 
4
  <description>
 
5
<![CDATA[
 
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:
 
11
<dl>
 
12
  <dt>Full Test Run</dt>
 
13
  <dd>TESTS=ALL</dd>
 
14
  <dd>APPS=ALL</dd>
 
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>
 
21
</dl>
 
22
<pre>
 
23
#NOTE: Automatically created from a script as part of daily smoke testing
 
24
  {{branch}}
 
25
</pre>
 
26
{% if statsd_key %}
 
27
<h3>Graphite Reports</h3>
 
28
<ul>
 
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>
 
31
</ul>
 
32
{% endif %}
 
33
]]>
 
34
  </description>
 
35
  <keepDependencies>false</keepDependencies>
 
36
  <properties>
 
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.
 
42
          </description>
 
43
          <defaultValue></defaultValue>
 
44
        </hudson.model.StringParameterDefinition>
 
45
        <hudson.model.StringParameterDefinition>
 
46
          <name>TESTS</name>
 
47
          <description>A space separated list of utah tests to run. "ALL" can be used to run all known utah tests.
 
48
          </description>
 
49
          <defaultValue>ALL</defaultValue>
 
50
        </hudson.model.StringParameterDefinition>
 
51
        <hudson.model.StringParameterDefinition>
 
52
          <name>APPS</name>
 
53
          <description>A space separated list of autopilot tests to run. "ALL" can be used to run all known tests.
 
54
          </description>
 
55
          <defaultValue>ALL</defaultValue>
 
56
        </hudson.model.StringParameterDefinition>
 
57
        <hudson.model.StringParameterDefinition>
 
58
          <name>REVISION</name>
 
59
          <description>The image revision to test with.
 
60
          </description>
 
61
          <defaultValue></defaultValue>
 
62
        </hudson.model.StringParameterDefinition>
 
63
        <hudson.model.StringParameterDefinition>
 
64
          <name>workers</name>
 
65
          <description>The number of workers
 
66
          </description>
 
67
          <defaultValue></defaultValue>
 
68
        </hudson.model.StringParameterDefinition>
 
69
        <hudson.model.StringParameterDefinition>
 
70
          <name>worker_idx</name>
 
71
          <description>The index of this worker
 
72
          </description>
 
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>
 
80
  </properties>
 
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>
 
89
  <builders>
 
90
    <hudson.tasks.Shell>
 
91
      <command>set -e
 
92
BRANCH=&quot;{{branch}}&quot;
 
93
BZRDIR=`echo &quot;$BRANCH&quot; | awk -F/ &apos;{ print $(NF) }&apos;`
 
94
BZRDIR=$(readlink -f $BZRDIR)
 
95
[ -d $BZRDIR ] &amp;&amp; rm -rf $BZRDIR
 
96
bzr branch ${BRANCH} ${BZRDIR}
 
97
 
 
98
export ANDROID_SERIAL={{serial}}
 
99
export IMAGE_TYPE={{imagetype}}
 
100
export IMAGE_SERIES={{series}}
 
101
export DEVICE_TYPE={{device_type}}
 
102
 
 
103
${BZRDIR}/scripts/recover.py ${NODE_NAME}
 
104
 
 
105
{% if statsd_key %}
 
106
# the txstatsd package is too old, use the one from LP:
 
107
[ -d txstatsd ] &amp;&amp; rm -rf txstatsd
 
108
bzr branch -r 109 lp:txstatsd
 
109
export PYTHONPATH=`pwd`/txstatsd
 
110
 
 
111
export STATSD_KEY={{statsd_key}}.{{imagetype}}
 
112
{% endif %}
 
113
 
 
114
{% if dashboard_host %}
 
115
export DASHBOARD_HOST="{{dashboard_host}}"
 
116
{% endif %}
 
117
{% if dashboard_user %}
 
118
export DASHBOARD_USER="{{dashboard_user}}"
 
119
{% endif %}
 
120
{% if dashboard_key %}
 
121
set +x   # don't let this leak into the public
 
122
export DASHBOARD_KEY="{{dashboard_key}}"
 
123
set -x
 
124
{% endif %}
 
125
{% if dashboard_prefix %}
 
126
export DASHBOARD_PREFIX="{{dashboard_prefix}}"
 
127
{% endif %}
 
128
{% if dashboard_port %}
 
129
export DASHBOARD_PORT="{{dashboard_port}}"
 
130
{% endif %}
 
131
{% if nfss_config %}
 
132
export NFSS_CONFIG="{{nfss_config}}"
 
133
{% endif %}
 
134
 
 
135
{{image_opt}}
 
136
${BZRDIR}/scripts/run-smoke
 
137
      </command>
 
138
    </hudson.tasks.Shell>
 
139
  </builders>
 
140
  <publishers>
 
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>
 
148
      <testDataPublishers>
 
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>
 
158
      <tasks>
 
159
        <hudson.plugins.postbuildtask.TaskProperties>
 
160
          <logTexts>
 
161
            <hudson.plugins.postbuildtask.LogProperties>
 
162
              <logText/>
 
163
              <operator>AND</operator>
 
164
            </hudson.plugins.postbuildtask.LogProperties>
 
165
          </logTexts>
 
166
          <EscalateStatus>false</EscalateStatus>
 
167
          <RunIfJobSuccessful>false</RunIfJobSuccessful>
 
168
          <script>
 
169
touch/scripts/recover.py ${NODE_NAME}
 
170
          </script>
 
171
        </hudson.plugins.postbuildtask.TaskProperties>
 
172
      </tasks>
 
173
    </hudson.plugins.postbuildtask.PostbuildTask>
 
174
{% if publish %}
 
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>
 
185
{% endif %}
 
186
  </publishers>
 
187
  <buildWrappers>
 
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>
 
196
  </buildWrappers>
 
197
</project>
 
198