puppet module for rpmbuild configuration

Diego Gutierrez



9,914 latest version

3.5 quality score

Version information

  • 0.2.0 (latest)
  • 0.1.0
released Sep 28th 2014

Start using this module


dgutierrez1287/rpmbuild — version 0.2.0 Sep 28th 2014


Table of Contents

  1. Overview - What is the rpmbuild module?
  2. Module Description - What does the module do?
  3. Setup - The basics of getting started with rpmbuild module
  4. Usage - How to use the module for various tasks
  5. Upgrading - Guide for upgrading from older revisions of this module
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module
  8. Disclaimer
  9. Contributors - List of module contributors


The rpmbuild module allows you to set up an environment for building RPMs

Module Description

The rpmbuild module sets up a environment for building and maintaining RPMs. This module will install all the needed basic packages needed for building RPMs, this will also install some addition packages needed for building RPMs on Fedora as well as allowing for an addition array of package names that might need to be installed for a custom enviornment. This module will also set up a standard build directories and .rpmmacros file in a user's home directory.


Pre-Setup Requirements

  • Before this module is run the user's home directory must already created



rpmbuild_packages - A standard set of packages needed for a build environmnent, this should not have to be overrided optional_packages - an array of additional package names that are needed for a more custom build environment

example usage with default parameters

class { 'rpmbuild': }

Managing user environment

The userhome define is used to create the needed directories and .rpmmacros file that is needed for the build environment. This will provide the .rpmmacros file through a template that will customize a basic file for the user, this define also allows for a completely custom .rpmmacros file from an existing file.

  • Paramters:

    • username -> title - the username of the user to create the environment for
    • usedefaultmacros - this is set to yes to use the default template or no to use a custom file, default is yes
    • userfirstname - the first name of the user
    • userlastname - the lastname of the user
    • companyname - the company name of the user (this is optional)
    • emailaddress - the email address of the user
    • macrofilepath - this is only used if you are using a custom macros file, this should be the path of the file
  • example:

    rpmbuild::env::userhome { 'exampleuser': userfirstname => 'user', userlastname => 'name', companyname => 'example company LLC', emailaddress => 'user@company.com', }


Since this is the first version there are no notes about upgrading


Since the package limitations this will only work on RHEL based systems and Fedora.


Contributions and pull requests are welcome to making this module the best that it can be.


There is a full set of rspec-puppet tests include in the module, just run rake spec in the top directory of the module to run the tests. As always a full integration test with a tool like vagrant is reccomended to ensure compatibilty correct usage.


This module is provided without warranty of any kind, the creator(s) and contributors do their best to ensure stablity but can make no warranty about the stability of this module in different environments. The creator(s) and contributors reccomend that you test this module and all future releases of this module in your environment before use.