Mock - reproducible builds in centos 5 using centos 6 machine without virtualization
Submitted by Anshu Prateek (@anshprat) on Tuesday, 11 March 2014
To introduce Mock to the audience.
What is Mock?
How does it help?
When and why to use it?
How to get going with a full fledged build in different RH versions using few lines of command?
What and why reproducible build?
Who uses Mock?!
Mock is used for setting up a sanitised build environment. It caches and reuses downloaded OS environment to recreate a new sane environment. Using mock, we can setup an altogether different version environment like Centos5 on a Centos6 machine. This is done using chroot and hence no overhead of virtualization is involved.
Mock helps in setting up a reproducible build environment.
===Why reproducible build?===
Allow independent verifications that a binary matches what the source intended to produce.
Help Multi-Arch: same packages co-installation (as they need every matching file to be byte identical).
Be able to generate debug symbols for packages which do not have a “debug package”.
Ensure packages can be built from source.
Access to a RH base environment (Redhat, Fedora, Centos or similar) with mock installed.
A source rpm of a package to be build.
I work as DevOps TechLead for Aerospike, a distributed NoSQL database.