Commit graph

1593 commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
10a75fc22f Add systemd unit file for kojid
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-06-07 08:14:53 -05:00
Dennis Gilmore
3260dbebdb schema: add missing image channel from the default schema
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-06-07 08:14:53 -05:00
Brian Stinson
d3eee76ce7 inject the url of the install tree into the kickstart used for generating images 2015-06-06 18:02:31 -04:00
Mike McLean
554a244876 Avoid errors logging anonymous retries (ticket 317)
see: https://fedorahosted.org/koji/ticket/317
2015-06-06 17:39:01 -04:00
Mike McLean
f68099f584 fix more #pylint issues 2015-06-06 17:38:52 -04:00
Mike McLean
1929eb320f handle symlinks in BuildMavenTask._zip_dir() 2015-06-06 17:38:45 -04:00
Ralph Bean
8ec72226d4 Make the templated footer configurable.
We ran into a problem[1] where old footers would cause syntax errors when
interpreted as templates.  This makes that behavior configurable and defaults
to the old literal interpretation.

[1] https://lists.fedoraproject.org/pipermail/buildsys/2015-May/004751.html
2015-06-06 16:34:07 -04:00
Ralph Bean
cf96a3f037 Catch the case where the runroot plugin is not installed. 2015-06-06 16:22:04 -04:00
Daniel Mach
a76a125e9a Add CLI for runroot plugin. 2015-06-06 16:22:04 -04:00
Ralph Bean
e8fdc88a0b Add the hub plugin that accompanies the kojid runroot plugin. 2015-06-06 16:22:04 -04:00
Mike Bonnet
d0c8088e59 handle tasks with arch-specific and noarch subtasks (e.g. kernel) 2015-06-05 10:00:24 -04:00
Mike McLean
1bf69b7c7e add a note about FollowSymLinks in hub httpd conf 2015-05-15 13:03:20 -04:00
Mathieu Bridon
27aa2f51e3 files: Tell Apache to let clients follow symlinks
This is necessary for builds to succeed, as they will try to access URLs
like this:

  http://koji.fr/kojifiles/repos/$tag/$repoid/$arch/toplink/packages/...

And on the filesystem, that "toplink" folder is in fact a symlink to the
kojifiles root.
2015-05-15 12:51:56 -04:00
Mike McLean
28dc38a750 more #pylint -- dangerous-default-value 2015-05-13 16:39:54 -04:00
Mike McLean
82f6390957 fix docstring #pylint 2015-05-13 16:39:53 -04:00
Mike McLean
5e09ebab48 fix comment #pylint 2015-05-13 16:39:53 -04:00
Mike McLean
a6019a92d7 import no longer used #pylint 2015-05-13 16:39:53 -04:00
Mike McLean
23630cade8 actually raise intended exceptions #pylint 2015-05-13 16:39:53 -04:00
Mike McLean
5dc14ced0b fix useless-else-on-loop warnings #pylint 2015-05-13 16:39:53 -04:00
Mike McLean
815098643d fix a couple old typos found by pylint 2015-05-13 16:39:53 -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
Ralph Bean
837c070127 (koji-web) Treat extra-footer as a template.
The code previously would look for a file called extra-footer.html that a koji
admin could override to put some nice extra footer on their koji-web page.
If that file existed, koji-web would read it in verbatim and write it to the
bottom of each served page.

This change enhances that behavior and treats the extra-footer.html file as a
Cheetah template.  This way, a koji admin could specify some conditional logic
in the extra-footer file to display this or that thing depending on the dynamic
contents of the page being served.

Note that this is backwards compatible.  Static html extra-footer files
already out there in the wild will be interpreted as Cheetah templates and
should be included seamlessly.
2015-05-07 13:14:48 -05:00
Ralph Bean
c738175d4a (koji-web) Markup scratch builds.
With this we can markup scratch builds, deemphasize them, etc.
2015-05-07 13:14:48 -05:00
Ralph Bean
e5466860ed (koji-web) Add user-specific css classes.
This will allow us in Fedora to style system account names differently.  For
instance, we can markup the name 'koschei' (our continuous integration bot).
2015-05-07 13:14:48 -05:00
Jay Greguske
865f93c1e2 add vhd/vpc support 2015-05-06 15:22:02 -04:00
Dennis Gilmore
108475b6a3 schema: add missiing raw.xz archive type
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-05-04 12:46:45 -04:00
Mike Bonnet
6e480eed1c use the same name for repository and pluginRepository entries in settings.xml
This is required because of http://jira.codehaus.org/browse/MNG-5475
2015-05-04 12:44:09 -04:00
Mike Bonnet
381645a453 mergeScratch(): import rpms from a scratch build into an existing build
The mergeScratch() method allows importing rpms built by a scratch build into an existing build, if that build
did not produce rpms matching the arch of the scratch build.  This is useful for bootstrapping a new arch into
existing builds, and avoiding a mass-rebuild to add arch support.
2015-05-04 12:38:11 -04:00
Mike Bonnet
3283df7f2c add id and parent to the headers of TaskStateChange messages 2015-05-04 12:38:07 -04:00
Mike McLean
91bae287e0 handle callnum=None (anon_retry) in retry error messages 2015-05-04 12:15:20 -04:00
Ian McLeod
52a01883d6 Add "real" Vagrant format options to image building.
We originally added Vagrant support by tweaking options sent
to the existing RHEV-M and vSphere OVA generation code.  This was
a bit of a hack and resulted in confusing filenames.

This adds "vagrant-libvirt" and "vagrant-virtualbox" image types,
passes in the correct options to Image Factory and produces output
files with the conventional ".box" extension and more descriptive
and less confusing vagrant name suffixes.
2015-04-23 21:35:46 -05:00
Pavol Babincak
a80ab75b32 Make koji.plugin.export_in() decorator working
Python raised problem with local variable before:

    UnboundLocalError: local variable 'alias' referenced before
    assignment
2015-04-02 15:56:54 -04:00
Mike McLean
6ba041839b package hub.conf.d and web.conf.d 2015-03-31 17:34:16 -04:00
Dennis Gilmore
b489f282be we xz compress the docker base image, make sure it is named correctly
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-03-27 17:20:51 -04:00
Mike McLean
cdeb212ffe add/use strict option in find_build_id 2015-03-10 15:16:55 -04:00
Mike McLean
731add25f4 for prune-signed-copies, consider file timestamp 2015-03-10 14:32:08 -04:00
Mike McLean
017e1ad053 support latest=N api option in cli 2015-03-10 14:32:08 -04:00
Mike McLean
f939cff2f3 preserve latest behavior for non-integer, non-boolean "true" values, and update comment. 2015-03-10 14:32:08 -04:00
Ralph Bean
833a575ba5 Allow specifying an 'int' for 'latest'.
This should preserve the pre-existing behavior, where if latest is set
to True, only the latest builds in a tag are returned, and if latest is
set to False, all the builds in a tag are returned.

The new behavior is a kind of middleground, where you can set latest=3,
and only the latest three builds for each package in a tag are returned.

We want this ultimately for mashing rawhide so we can create a downgrade
path for people if new builds break them.
https://bugzilla.redhat.com/show_bug.cgi?id=1082830

Discussed and revised:
https://lists.fedoraproject.org/pipermail/buildsys/2015-February/004541.html
2015-03-10 14:32:08 -04:00
Mike McLean
721f350dd7 slightly better errors for host auth failures 2015-03-10 14:32:08 -04:00
Mike McLean
517feb21ee update predefined archivetypes 2015-03-10 14:32:08 -04:00
Mike Bonnet
ac09ab2b49 taskinfo.chtml: missing line break 2015-02-20 13:56:13 -05:00
Mike McLean
1ce5413904 in modpy mode, if ConfigFile is set to default, then default to normal ConfigDir 2015-02-19 15:25:19 -05:00
Mike McLean
8d3166f13f Support conf.d in kojihub and kojiweb 2015-02-04 05:33:34 -05:00
Mike McLean
db5d3e4dec handle package field for group_package_listing in history queries 2015-02-04 05:29:25 -05:00
Chenxiong Qi
8424254d13 Avoid crash if some hosts have no arches
Field arches in table host could be null. if some hosts have no arches, and
arches value is null, arches.split() will crash.
2015-02-04 05:29:25 -05:00
Pavol Babincak
07ea07f875 Test parent tag existence before query for its id
If client called:
    $ koji add-tag new-tag-name --parent nonexistent-tag

it failed with error:

    xmlrpclib.Fault: <Fault 1: 'exceptions.TypeError: unsubscriptable
    object'>
2015-02-04 05:29:25 -05:00
Tomas Kopecek
cd45e886cc runroot plugin 2015-01-27 22:41:00 -06:00
Dennis Gilmore
5b5b7d95ea ssl: use the best possible connection method.
tell pyOpenSSL to use the best possible connection method,
disable SSLv2 and SSLv3

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2015-01-23 16:11:22 -06:00
Dennis Gilmore
50c8dd5697 image tasks: only bind mount /selinux if it exists
current fedora does not have /selinux on the host if you try to bind mount
a non existant directory the mount fails.
2015-01-23 13:45:52 -06:00