Rather than always pull in the latest version of mock available, we should always be using a known good version. This has become a necessity because we aren't doing a good job with our unit tests. With the upgrade to mock, our spec tests were actually seeing through the mock to the base system, which was causing failures. Since we're moving to vanagon, this isn't going to matter much longer, hence why we're just pinning here, rather than fixing the testing.
As part of the effort to rename PE 3.4 to PE 3.7, this updates '3.4' to '3.7' in the existing automation that manages rpm builders.
Because epel 7 is not signed entirely, we have disabled gpgcheck on those repos. That means that the epel module can't be included again or instantiated in this module. This commit adds a parameter to the module that allows epel inclusion to be toggled on or off.
Previously we were trying to template files into /etc/mock, a directory that won't exist until the mock package is installed. This commit updates the class resources to require mock before proceeding with laying down the mock configs.
Previously, the tmpfs_plugin class would attempt to modify site-defaults.cfg before it was available. This is because it is supplied by the mock package, which won't be on a bare system. This commit updates these ini_setting resources to require the mock package before updating site-defaults.cfg.
This adds SLES 10 to the PE mocksets. Since we will typically build against SLES sp1, but we need to build against sp4 for SLES 10 (as it is the only supported version currently) this adds a parameter for the SLES mocks that defaults to 'sp1' and is overridden for the SLES 10 mocks.
Previous commits removed the need for a legacy mock in templates by adding a few conditional stanzas. This commit makes a similar change to the puppet code, removing the pe_legacy_mock and pe_legacy_mockset defined types. It also updates the pe_mocks and pe_mockset to include el4 mocks for PE.
We can now remove the bandaids because CentOS 7 has been officially released. This consists of removing the bandaid files themselves and updating the mocks to remove lingering patch code. We also have updated the pe-el-mock-config template to pull from osmirror instead of yo.
This commit adds a top level parameter to the rpmbuilder module to enable the pl-build-tools repo, an internal repository to Puppet Labs. It defaults to false to ensure backward compatibility. That parameter is directly looked up in both the el7 and pl mock templates. This is to avoid passing the parameter down through 5 levels of resource indirection.
Toggling the cleanup_on_failure option in our mock stubs will make it easier to diagnose problems with builds by leaving failed builds staged in their initialized mocks. By default, both options are true (which is consistent with the defaults as shipped in mock).
This update reflects the changes to repo structure in the RHEL7 release cadidate that came out in 4/14. We're still using the EL7 bandaid structure since the final repo paths aren't formalized yet. This will be updated when the final paths are determined (be they CentOS or RHEL 7).
This commit adds a template for EOS mocks to the module and adds the correct line in pe_mockset to add the mock for all of our PE versions. The mock config is based on fedora and the set of rpms that make up EOS4. Because fedora-release depends on Eos-release and that is currently unavailable, this mock config currently uses the verbose install rather than a groupinstall.
Since RHEL7 isn't really a released, baked, finished thing yet, we have to reference the beta. This has a few caveats: - x86_64 only - None of the existing mock templates quite work For the time being, support is being provided via a 'bandaid', which simply declares a file resource for the mock config if a RHEL7 host is to be built. This scaffold/band-aid/kludge will be rolled back/removed/killed with fire when RHEL7 gets its wish and the Blue Fairy makes it a real release.
This commit updates the mock configuration files and the tests for the module.