Mock going forward

Clark Williams williams at redhat.com
Sat Sep 2 13:42:20 UTC 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Chris Weyl wrote:
> On 8/16/06, Clark Williams <williams at redhat.com> wrote:
>> Keeping in line with our razor-blade focus for mock ("we just build
>> packages in chroots"), I actually don't think there's much more to do
>> for 1.0. Once we are comfortable with the functional and security
>> aspects of the 0.7 mock, I'd call it cooked. Assuming of course no one
>> comes up with a killer feature that is :).
> 
> A while ago and on a different list, tibbs proposed adding one last
> bit to the buildcycle:
> 
> * installing rpmlint into the buildroot
> * installing the built packages into the buildroot
> * running rpmlint against the installed packages and providing the
> rpmlint reports in results/
> 
> The idea here is to seamlessly give rpmlint reports on installed
> packages (there's a difference than on binaries, apparently) without
> having the builder/reviewer needlessly clutter up their host.  Mock
> wouldn't have anything to do with the results once rpmlint is run;
> they'd just be another bit of information for the reviewers/packagers
> to use.
> 
> My memory is a bit foggy on what happened to this, but is this
> something we could think about doing for mock, either 0.7 or 1.0?
> IMHO, something like this would be a great time saver, as it's
> something that's fairly routine.
> 

I actually had code in my local sandbox that would run rpmlint on the
generated SRPM and RPMs, but going much farther than that gets a bit
more complicated. The discussion we had at the time indicated that most
folks thought that it was testing not building and that it was best done
by other logic. While I kinda think that adding an rpmlint feature would
be cool, an objective look makes me think they're right. Lets keep mock
a chroot manager, not a test framework.

I think I would prefer to make it easy to install things into the chroot
so that what you want to do turns into:

	$ mock -r <config> SRPM
	$ mock --no-clean -r <config> install rpmlint
	$ mock --no-clean -r <config> install <generated-pkgs>
	$ mock --no-clean -r <config> chroot rpmlint <pkgnames>


What I haven't gotten my head around is what needs to be done for the
hypothetical "install" command. It may just be running yum with the
appropriate root arguments to install rpmlint, then just running rpm to
install the target rpms into the chroot. Or maybe we just add rpmlint to
the default package set. It may be that we don't need a new command and
we can get everything done with what exists and external logic.

I'd welcome discussion on how to do this and on how to improve chroot
management in general.

Clark
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iD8DBQFE+Yo8Hyuj/+TTEp0RAtAVAKDhsjGjAfHrjgKPkLBm1dtoK18qpgCfemcT
Ugvx4v20/UTIFerUevFgCYU=
=zSS+
-----END PGP SIGNATURE-----




More information about the Fedora-buildsys-list mailing list