Mash and Fedora daily snapshots questions
by Alexander Todorov
Hi guys,
I'm trying to write a script which will import Fedora daily snapshots into
Beaker so the QA team can test them (see
https://phab.qadevel.cloud.fedoraproject.org/T282)
I'm interested in the trees under http://koji.fedoraproject.org/mash/.
Few questions/observations, your comments are desired:
* There are branched-XXXXX vs. rawhide-XXXXX directories. The rawhide ones
appear to be only repositories, not bootable OS trees. What is their relation to
the branched- directories? (I see the same timestamps on both, plus some newer
rewhide- ones without corresponding branched- directories).
* Is there any API to query the file structure on the server. If yes, please
point me to some API docs.
Thanks,
Alex
9 years, 4 months
Mock documentation
by Miroslav Suchý
I started editing:
https://fedoraproject.org/wiki/Projects/Mock
And I learned about several plugins, but I'm still not sure what some plugins are exactly doing.
If you know that, or you are even the author of that plugin, I would be very glad, if you can spare few minutes and
enhance the documentation:
https://fedoraproject.org/wiki/Projects/Mock#Plugins
Thanks
--
Miroslav Suchy, RHCE, RHCDS
Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys
9 years, 4 months
New release -- mock-1.2.3
by Miroslav Suchý
Hi,
I just released new version of mock:
https://admin.fedoraproject.org/updates/search/mock
I expect that that it will be stable enough to reach stable this time.
Compared to mock-1.2.2, there are mostly bugfixes and 3 small features:
* New option --symlink-dereference.
* Tmpfs new option 'keep_mounted'.
* New option -x/--exclude to packages during install.
As always, please test and report issues.
--
Miroslav Suchy, RHCE, RHCDS
Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys
9 years, 4 months
Fwd: Re: rebased rpkg patches
by Pavol Babincak
Because Mike's original runas patch broke fedpkg (and possible other
pyrpkg clients) I asked him to send fix for that. He haven't sent it to
buildsys mailing list, so forwarding it here. Patch is applied and
pushed upstream now.
-------- Forwarded Message --------
Subject: Re: rebased rpkg patches
Date: Wed, 03 Dec 2014 11:42:43 -0800
From: Mike Bonnet <mikeb(a)redhat.com>
To: Mathieu Bridon <mbridon(a)redhat.com>
CC: Pavol Babincak <pbabinca(a)redhat.com>
On 11/12/14 10:19 AM, Mike Bonnet wrote:
> On 11/4/14 5:03 AM, Mike Bonnet wrote:
>> On 11/04/2014 06:08 AM, Mathieu Bridon wrote:
>>> On Mon, 2014-11-03 at 15:56 -0500, Mike Bonnet wrote:
>>>> On 11/03/2014 04:11 AM, Mathieu Bridon wrote:
>>>>> On Mon, 2014-11-03 at 10:10 +0100, Mathieu Bridon wrote:
>>>>>> On Fri, 2014-10-31 at 09:07 -0700, Mike Bonnet wrote:
>>>>>> def __init__(self, path, lookaside, lookasidehash,
>>>>>> lookaside_cgi,
>>>>>> gitbaseurl, anongiturl, branchre, kojiconfig,
>>>>>> - build_client, user=None, dist=None, target=None,
>>>>>> + build_client, user=None, runas=None, dist=None,
>>>>>> target=None,
>>>>>>
>>>>>> This breaks fedpkg.
>>>>>>
>>>>>> To be honest, it is fedpkg that is doing something wrong here:
>>>>>>
>>>>>> super(Commands, self).__init__(path, lookaside,
>>>>>> lookasidehash,
>>>>>> lookaside_cgi, gitbaseurl,
>>>>>> anongiturl,
>>>>>> branchre, kojiconfig,
>>>>>> build_client,
>>>>>> user, dist, target, quiet)
>>>>>>
>>>>>> Keyword arguments passed as positional arguments. :(
>>>>>>
>>>>>> However, it means that applying your patch to rpkg as it is will
>>>>>> break
>>>>>> fedpkg, and potentially other consumers of the pyrpkg API using it in
>>>>>> the same (wrong) way.
>>>>>>
>>>>>> At the very least, we need to fix fedpkg so it correctly uses the
>>>>>> pyrpkg
>>>>>> API (passing kwargs as kwargs).
>>>>>>
>>>>>> Maybe we should also announce it widely that this change is coming,
>>>>>> and
>>>>>> people should check their code to make sure they don't do the same
>>>>>> thing
>>>>>> as fedpkg?
>>>>>
>>>>> Also, it would have been nicer to send these patches to the public
>>>>> mailing-list, as the discussion about how this breaks fedpkg could
>>>>> have
>>>>> served as a starting point for widely announcing that it might break
>>>>> other consumers. :)
>>>>
>>>> I did send a message about the original (pre-rebase) patch set to
>>>> Fedora
>>>> buildsys list.
>>>>
>>>> Would it be better to move runas=None to the end of the keyword
>>>> parameter list of __init__()? This should avoid the breakage of
>>>> fedpkg.
>>>
>>> It should. (and password=None as well)
>>
>> I'll send a fixed-up patch to Fedora buildsys list.
>
> I actually sent a patch to fix fedpkg to buildsys list. Could we get
> that applied and rolled out, then go with the rpkg patches as-is?
The attached patch fixes the fedpkg breakage. It handles the new
command-line options the same way the module_name parameter is handled.
--
Pavol Babincak
Release Engineering, Red Hat
9 years, 4 months
[PATCH] Include options from global koji configs located in /etc/koji.conf.d
by Brian Stinson
Hi All,
The koji cli tool allows for configs to be placed in /etc/koji.conf.d It would
be helpful if rpkg knew about this too. This patch builds a list of any configs
in the global koji dir, adds any files specified by the rpkg configuration file,
and then adds the user koji config (to maintain the correct precedence).
Thanks!
Brian
---
src/pyrpkg/__init__.py | 32 ++++++++++++++++++++++++++++++--
1 file changed, 30 insertions(+), 2 deletions(-)
diff --git a/src/pyrpkg/__init__.py b/src/pyrpkg/__init__.py
index 73fe7da..9941e74 100644
--- a/src/pyrpkg/__init__.py
+++ b/src/pyrpkg/__init__.py
@@ -176,6 +176,27 @@ class Commands(object):
self._repo = None
self._path = value
+ def _get_koji_dir_configs(self, koji_confdir):
+ configfiles = []
+
+ if not os.path.exists(koji_confdir):
+ # if the directory doesn't exist, return an empty list
+ self.log.debug("Could not load config files from directory "
+ "{0}".format(koji_confdir))
+ return configfiles
+
+ files = os.listdir(koji_confdir)
+
+ for file in sorted(files):
+ # we are only interested in files with the .conf extension
+ if not file.endswith('.conf'):
+ continue
+
+ configfullpath = os.path.join(koji_confdir, file)
+ configfiles.append(configfullpath)
+
+ return configfiles
+
@property
def anon_kojisession(self):
"""This property ensures the anon kojisession attribute"""
@@ -204,8 +225,15 @@ class Commands(object):
'topurl': None
}
# Process the configs in order, global, user, then any option passed
- for configfile in (self.kojiconfig,
- os.path.expanduser('~/.koji/config')):
+ configs = self._get_koji_dir_configs('/etc/koji.conf.d')
+ configs.extend(
+ [
+ self.kojiconfig,
+ os.path.expanduser('~/.koji/config'),
+ ]
+ )
+
+ for configfile in configs:
try:
f = open(configfile)
except IOError:
--
1.8.3.1
9 years, 4 months