[koji PATCH] allow setting the timeout for builds from config file
Dan Horák
dan at danny.cz
Wed Mar 6 20:50:19 UTC 2013
Dan Horák píše v St 06. 03. 2013 v 21:38 +0100:
> ---
> builder/kojid | 3 ++-
> builder/kojid.conf | 3 +++
> koji/__init__.py | 2 +-
> 3 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/builder/kojid b/builder/kojid
> index f906d0b..6c8a847 100755
> --- a/builder/kojid
> +++ b/builder/kojid
> @@ -204,7 +204,7 @@ class BuildRoot(object):
> for k in ('repoid', 'tag_name'):
> if hasattr(self, k):
> opts[k] = getattr(self, k)
> - for k in ('mockdir', 'topdir', 'topurl', 'topurls', 'packager', 'vendor', 'distribution', 'mockhost', 'yum_proxy'):
> + for k in ('mockdir', 'topdir', 'topurl', 'topurls', 'packager', 'vendor', 'distribution', 'mockhost', 'yum_proxy', 'rpmbuild_timeout'):
> if hasattr(self.options, k):
> opts[k] = getattr(self.options, k)
> opts['buildroot_id'] = self.id
> @@ -3060,6 +3060,7 @@ def get_options():
> 'maven_repo_ignore': '*.md5 *.sha1 maven-metadata*.xml _maven.repositories '
> 'resolver-status.properties *.lastUpdated',
> 'failed_buildroot_lifetime' : 3600 * 4,
> + 'rpmbuild_timeout' : 3600 * 24,
> 'cert': '/etc/kojid/client.crt',
> 'ca': '/etc/kojid/clientca.crt',
> 'serverca': '/etc/kojid/serverca.crt'}
> diff --git a/builder/kojid.conf b/builder/kojid.conf
> index 1fa9ad4..05fe3b0 100644
> --- a/builder/kojid.conf
> +++ b/builder/kojid.conf
> @@ -32,6 +32,9 @@
> ; The _host string to use in mock
> ; mockhost=koji-linux-gnu
>
> +; Timeout for build duration (24 hours)
> +; rpmbuild_timeout=86400
> +
> ; The URL for the xmlrpc server
> server=http://hub.example.com/kojihub
>
> diff --git a/koji/__init__.py b/koji/__init__.py
> index f42226b..8ab81a8 100644
> --- a/koji/__init__.py
> +++ b/koji/__init__.py
> @@ -1266,7 +1266,7 @@ def genMockConfig(name, arch, managed=False, repoid=None, tag_name=None, **opts)
> # don't encourage network access from the chroot
> 'use_host_resolv': opts.get('use_host_resolv', False),
> # Don't let a build last more than 24 hours
> - 'rpmbuild_timeout': 86400
> + 'rpmbuild_timeout': opts.get('rpmbuild_timeout', 86400)
> }
>
> # bind_opts are used to mount parts (or all of) /dev if needed.
hmm, this fails with
...
Building target platforms: s390
Building for target s390
Wrote: /builddir/build/SRPMS/strace-4.7-3.fc19.src.rpm
EXCEPTION: cannot concatenate 'str' and 'int' objects
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/mockbuild/trace_decorator.py", line 70, in trace
result = func(*args, **kw)
File "/usr/lib/python2.7/site-packages/mockbuild/util.py", line 347, in do
if (time.time() - start)>(timeout+1) and timeout!=0:
TypeError: cannot concatenate 'str' and 'int' objects
LEAVE do --> EXCEPTION RAISED
Dan
More information about the buildsys
mailing list