Add timeout variable to jobs
Plumb through support for timeout for jobs. By default, we don't
support any timeout, which means jobs live forever.
Change-Id: Ice4fedffc6086676f54da0f06630a0ff7ad7d916
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
diff --git a/tests/base.py b/tests/base.py
index e6542e7..65c7052 100755
--- a/tests/base.py
+++ b/tests/base.py
@@ -749,11 +749,11 @@
class RecordingAnsibleJob(zuul.launcher.server.AnsibleJob):
- def runPlaybooks(self):
+ def runPlaybooks(self, args):
build = self.launcher_server.job_builds[self.job.unique]
build.jobdir = self.jobdir
- result = super(RecordingAnsibleJob, self).runPlaybooks()
+ result = super(RecordingAnsibleJob, self).runPlaybooks(args)
self.launcher_server.lock.acquire()
self.launcher_server.build_history.append(
diff --git a/tests/fixtures/config/ansible/git/common-config/playbooks/timeout.yaml b/tests/fixtures/config/ansible/git/common-config/playbooks/timeout.yaml
new file mode 100644
index 0000000..4af20eb
--- /dev/null
+++ b/tests/fixtures/config/ansible/git/common-config/playbooks/timeout.yaml
@@ -0,0 +1,4 @@
+- hosts: all
+ tasks:
+ - name: Pause for 60 seconds, so zuul aborts our job.
+ shell: sleep 60
diff --git a/tests/fixtures/config/ansible/git/common-config/zuul.yaml b/tests/fixtures/config/ansible/git/common-config/zuul.yaml
index baa7aba..30148f0 100644
--- a/tests/fixtures/config/ansible/git/common-config/zuul.yaml
+++ b/tests/fixtures/config/ansible/git/common-config/zuul.yaml
@@ -44,3 +44,8 @@
flagpath: "{{zuul._test.test_root}}/{{zuul.uuid}}.flag"
roles:
- zuul: bare-role
+
+- job:
+ parent: python27
+ name: timeout
+ timeout: 1
diff --git a/tests/fixtures/config/ansible/git/org_project/.zuul.yaml b/tests/fixtures/config/ansible/git/org_project/.zuul.yaml
index 6abfc47..c76ba70 100644
--- a/tests/fixtures/config/ansible/git/org_project/.zuul.yaml
+++ b/tests/fixtures/config/ansible/git/org_project/.zuul.yaml
@@ -9,3 +9,4 @@
jobs:
- python27
- faillocal
+ - timeout
diff --git a/tests/unit/test_v3.py b/tests/unit/test_v3.py
index 97002b2..f69ffe6 100644
--- a/tests/unit/test_v3.py
+++ b/tests/unit/test_v3.py
@@ -195,6 +195,8 @@
A = self.fake_gerrit.addFakeChange('org/project', 'master', 'A')
self.fake_gerrit.addEvent(A.getPatchsetCreatedEvent(1))
self.waitUntilSettled()
+ build = self.getJobFromHistory('timeout')
+ self.assertEqual(build.result, 'ABORTED')
build = self.getJobFromHistory('faillocal')
self.assertEqual(build.result, 'FAILURE')
build = self.getJobFromHistory('python27')