Commit graph

52 commits

Author SHA1 Message Date
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
Mike Bonnet
163837aff5 add the task method into the routing key or header for TaskStateChange messages 2010-05-05 13:57:51 -04:00
Mike Bonnet
022a172abe - only send messages for post callbacks
- remove the unnecessary "post" prefix from the message type
2010-01-05 14:37:11 -05:00
Mike Bonnet
b320bada69 - replace periods with underscores in the tokens that make up the routing key, so the number of tokens in the routing keys are deterministic and consistent
- reduce the number of tokens in the routing keys
2010-01-04 18:52:13 -05:00
Mike Bonnet
bca4ad5e76 rename the "queues" configuration section to "topic", to indicate it is only relevant for topic exchanges 2010-01-04 18:30:58 -05:00
Mike Bonnet
91e6572e89 support for the "headers" exchange type 2010-01-04 18:27:07 -05:00
Mike Bonnet
40423461db don't let encoding push the routing key over the max length 2010-01-04 16:44:59 -05:00
Mike Bonnet
1f290e278c declare our own exchange, rather than using the builtin amq.topic exchange 2010-01-04 16:32:57 -05:00
Mike Bonnet
53296425c1 messagebus.py: a hub plugin to send notifications of events to an amqp broker 2009-12-22 13:44:12 -05:00