Rootconf 2014

On devops and cloud infrastructure

Mock - reproducible builds in centos 5 using centos 6 machine without virtualization

Submitted by Anshu Prateek (@anshprat) on Mar 11, 2014

Section: Full talk Technical level: Beginner Status: Rejected


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.

Speaker bio

I work as DevOps TechLead for Aerospike, a distributed NoSQL database.



Login to leave a comment