Commit graph

60 commits

Author SHA1 Message Date
Mike McLean
2347aee632 runroot: friendlier parsing of path_subs config 2017-08-08 12:15:42 -04:00
Mike McLean
1df193ea2b use datetime compatibility for messagebug and protonmsg plugins 2017-08-07 12:41:40 -04:00
Tomas Kopecek
032e2aaddd allow some missing path sections in runroot config
Fixes: https://pagure.io/koji/issue/527

Before path sections were expected to have zero-based numbering. If some
item was missing, parsing ended there.

Now we are more benevolent and we pick all path\d+ sections and sort
them by ordering number.
2017-07-31 12:53:03 -04:00
Mike McLean
14ec03f596 runroot: use /builddir/runroot.log instead of /tmp/runroot.log
With --new-chroot, /tmp is set up as a tmpfs mount, which does not persist,
so using /builddir instead.

Related: #482  (but not a fix)
https://pagure.io/koji/issue/482
2017-07-25 12:30:32 -04:00
Tomas Kopecek
a1551a78be Remove deprecated compat_mode from runroot plugin
Fixes: https://pagure.io/koji/issue/501
2017-07-06 11:25:46 -04:00
Tomas Kopecek
1c0d5011c7 Makefile updates 2017-06-13 11:42:04 +02:00
Tomas Kopecek
c02eb739aa update cli tests 2017-06-13 11:42:04 +02:00
Tomas Kopecek
81b2b36d07 apply split 2017-06-13 11:20:38 +02:00
Tomas Kopecek
03218a3fd3 use old tarfile arguments 2017-05-17 12:56:30 -04:00
Tomas Kopecek
7eb264eb4c updated tests 2017-03-30 09:25:51 -04:00
Mike McLean
d1ab4ed287 refactor 2017-03-30 09:25:51 -04:00
Tomas Kopecek
3b82594a32 change config separator to whitespace 2017-03-30 09:25:51 -04:00
Tomas Kopecek
78a87f725e check that correct builder is used 2017-03-30 09:25:51 -04:00
Tomas Kopecek
660779c848 Fail if host is disabled 2017-03-30 09:25:51 -04:00
Tomas Kopecek
af8038fa12 utilize multiple volume support 2017-03-30 09:25:51 -04:00
Tomas Kopecek
6128204714 config file 2017-03-30 09:25:51 -04:00
Tomas Kopecek
ebe1522d9c make stripped paths configurable 2017-03-30 09:25:51 -04:00
Tomas Kopecek
7b8fcd989f permissions 2017-03-30 09:25:51 -04:00
Tomas Kopecek
1a06b1b52e Define tasks via config file 2017-03-30 09:25:51 -04:00
Tomas Kopecek
437afbb720 CLI for save_failed_tree 2017-03-30 09:25:51 -04:00
Tomas Kopecek
dd5425f23e Basic functionality for save_failed_tree plugin 2017-03-30 09:25:51 -04:00
Tomas Kopecek
b133f9c983 more runroot tests 2017-03-29 18:13:39 -04:00
Tomas Kopecek
93034f64f3 idioms 2017-03-17 11:35:53 -04:00
Tomas Kopecek
22bedc900d whitespace formatting 2017-03-17 11:35:53 -04:00
Tomas Kopecek
cc9fff9840 remove has_key (not working in python3) 2017-03-07 08:15:20 -05:00
Tomas Kopecek
1494301465 use new exception syntax 2017-03-02 10:52:30 -05:00
Mike Bonnet
240fc690dd make the tlstimeout class compatible with newer versions of qpid
Recent versions of qpid have added the write_retry attribute to the tls class.
Add it to our subclass for compatibility.
2016-12-13 17:04:58 -05:00
Mike Bonnet
17fac58281 protonmsg hub plugin
This plugin sends messages to a broker about events in the hub
using the proton library. This library supports the AMQP 1.0
protocol and is compatible with a wide variety of message
brokers. It queues all messages until the postCommit callback,
avoiding race conditions between message reception and database
transaction commit.
2016-11-04 11:59:51 -07:00
Mike McLean
a1c8808544 ImportErrors are uncovered 2016-10-25 17:16:12 -04:00
Tomas Kopecek
7b954b8cd5 fixing unimported exceptions 2016-10-04 15:48:54 +02:00
Ian McLeod
0273b77682 A stab at --new-chroot support for rhe runroot plugin 2016-09-28 18:02:59 -04:00
Mike McLean
8beb91f58d don't generate messages on postCommit events 2016-09-14 15:08:52 -04:00
Ralph Bean
7530b8ce77 Remove mktask in favor of make_task (and fix all references). 2016-06-08 12:08:05 -04:00
Dennis Gilmore
6e224af9a8 enable dns to work in runroot buildroots
Signed-off-by: Dennis Gilmore <dennis@ra.ausil.us>
2016-05-26 15:26:52 -05:00
Ralph Bean
7fd256cde1
Add subdirectory for builder plugin configuration. 2016-04-08 12:15:07 -04:00
Ralph Bean
69e77dd693
Make the other makefile vars here explicit now. 2016-04-08 12:10:59 -04:00
Ralph Bean
43ba5a6071
Install both hub and builder plugins.
This is a different take at https://pagure.io/koji/pull-request/45

Instead of installing just the runroot builder plugin explicitly, here we
separate the plugins out into hub and builder plugins explicitly and install
each type in turn.
2016-04-08 10:05:28 -04:00
Mathieu Bridon
8097ffce7b runroot: Avoid squashing path components with os.path.join
Although this is often a surprising behaviour, the Python documentation
is quite clear on this:

    If a component is an absolute path, all previous components are
    thrown away and joining continues from the absolute path component.

    https://docs.python.org/2/library/os.path.html#os.path.join

That means we need to ensure that we don't end up in this case.
2015-07-10 12:34:32 -05:00
Ralph Bean
e8fdc88a0b Add the hub plugin that accompanies the kojid runroot plugin. 2015-06-06 16:22:04 -04:00
Pavol Babincak
9e89ebb9a4 Ran reindent.py from cpython tools on all python scripts
Citing from reindent docs:

    Change Python (.py) files to use 4-space indents and no hard tab
    characters. Also trim excess spaces and tabs from ends of lines, and
    remove empty lines at the end of files.  Also ensure the last line
    ends with a newline.

Citing from PEP 8:

    Use 4 spaces per indentation level.

    Python 2 code indented with a mixture of tabs and spaces should be
    converted to using spaces exclusively.

    Don't write string literals that rely on significant trailing
    whitespace. Such trailing whitespace is visually indistinguishable
    and some editors (or more recently, reindent.py) will trim them.

Also PyLint recommends not to have trailing whitespace on any line.
2015-05-13 16:39:53 -04:00
Mike Bonnet
3283df7f2c add id and parent to the headers of TaskStateChange messages 2015-05-04 12:38:07 -04:00
Tomas Kopecek
cd45e886cc runroot plugin 2015-01-27 22:41:00 -06:00
Mike Bonnet
ab53d2deb0 update copyright 2014-10-28 23:54:21 -04:00
Mike Bonnet
a71ae2711b Add timeout and heartbeat options to the messagebus plugin.
The plugin will block for timeout seconds at most when trying to send a message to the broker.  After that amount of time, the send will fail and an error will be logged.
The plugin will check that the broker is reachable every heartbeat seconds.  If it is not reachable, the connection will be aborted and a new connection will be attempted the next time a message is sent.
2013-06-12 10:11:03 -04:00
Mike Bonnet
957fff5ff5 block for a maximum of 60 seconds when sending a message 2012-06-29 17:35:54 -04:00
Mike Bonnet
bec96c17e1 use a heartbeat when connecting to the messagebus 2012-06-29 12:17:59 -04:00
Mike Bonnet
82463bd071 gssapi support in the messagebus plugin 2012-03-08 12:52:16 -05:00
Mike Bonnet
ccc53532be rpm2maven: a plugin to extract Maven artifacts from a rpm build and make them available in the Koji-managed Maven repo 2010-11-09 09:50:09 -05:00
Mike Bonnet
0ad96b9952 use qpid native marshalling/unmarshalling for message content, instead of json 2010-10-27 12:06:37 -04:00
Mike Bonnet
afe05a0263 update the messagebus plugin to use the new qpid.messaging API 2010-10-27 11:57:38 -04:00