272
|
1 # Configure EPEL (Extra Repository for Enterprise Linux)
|
|
2
|
387
|
3 [![Build Status](https://github.com/voxpupuli/puppet-epel/workflows/CI/badge.svg)](https://github.com/voxpupuli/puppet-epel/actions?query=workflow%3ACI)
|
|
4 [![Release](https://github.com/voxpupuli/puppet-epel/actions/workflows/release.yml/badge.svg)](https://github.com/voxpupuli/puppet-epel/actions/workflows/release.yml)
|
|
5 [![Puppet Forge](https://img.shields.io/puppetforge/v/puppet/epel.svg)](https://forge.puppetlabs.com/puppet/epel)
|
|
6 [![Puppet Forge - downloads](https://img.shields.io/puppetforge/dt/puppet/epel.svg)](https://forge.puppetlabs.com/puppet/epel)
|
|
7 [![Puppet Forge - endorsement](https://img.shields.io/puppetforge/e/puppet/epel.svg)](https://forge.puppetlabs.com/puppet/epel)
|
|
8 [![Puppet Forge - scores](https://img.shields.io/puppetforge/f/puppet/epel.svg)](https://forge.puppetlabs.com/puppet/epel)
|
|
9 [![puppetmodule.info docs](http://www.puppetmodule.info/images/badge.png)](http://www.puppetmodule.info/m/puppet-epel)
|
|
10 [![AGPL v3 License](https://img.shields.io/github/license/voxpupuli/puppet-epel.svg)](LICENSE)
|
272
|
11
|
|
12 # About
|
|
13 This module basically just mimics the epel-release rpm. The same repos are
|
|
14 enabled/disabled and the GPG key is imported. In the end you will end up with
|
|
15 the EPEL repos configured.
|
|
16
|
|
17 The following Repos will be setup and enabled by default:
|
|
18
|
|
19 * epel
|
|
20
|
|
21 Other repositories that will setup but disabled (as per the epel-release setup)
|
|
22
|
|
23 * epel-debuginfo
|
|
24 * epel-source
|
|
25 * epel-testing
|
|
26 * epel-testing-debuginfo
|
|
27 * epel-testing-source
|
|
28
|
|
29 # Usage
|
|
30
|
|
31 In nearly all cases, you can simply _include epel_ or classify your nodes with
|
|
32 the epel class. There are quite a few parameters available if you need to modify
|
|
33 the default settings for the epel repository such as having your own mirror, an
|
|
34 http proxy, or disable gpg checking.
|
|
35
|
387
|
36 A list of all parameters is available in [REFERENCE.md](REFERENCE.md).
|
|
37
|
272
|
38 You can also use a puppet one-liner to get epel onto a system.
|
|
39
|
|
40 puppet apply -e 'include epel'
|
|
41
|
|
42 # Proxy
|
|
43 If you have a http proxy required to access the internet, you can use either
|
|
44 a class parameter in the _epel_ class (epel_proxy), or edit the $proxy variable
|
|
45 in the params.pp file. By default no proxy is assumed.
|
|
46
|
|
47 # Why?
|
|
48 I am a big fan of EPEL. I actually was one of the people who helped get it
|
|
49 going. I am also the owner of the epel-release package, so in general this
|
|
50 module should stay fairly up to date with the official upstream package.
|
|
51
|
|
52 I just got sick of coding Puppet modules and basically having an assumption
|
|
53 that EPEL was setup or installed. I can now depend on this module instead.
|
|
54
|
|
55 I realize it is fairly trivial to get EPEL setup. Every now-and-then however
|
|
56 the path to epel-release changes because something changes in the package (mass
|
|
57 rebuild, rpm build macros updates, etc). This module will bypass the changing
|
|
58 URL and just setup the package mirrors.
|
|
59
|
|
60 This does mean that if you are looking for RPM macros that are normally
|
|
61 included with EPEL release, this will not have them.
|
|
62
|
|
63 # Further Information
|
|
64
|
|
65 * [EPEL Wiki](http://fedoraproject.org/wiki/EPEL)
|
|
66 * [epel-release package information](http://mirrors.servercentral.net/fedora/epel/6/i386/repoview/epel-release.html)
|
|
67
|
387
|
68 # Testing and Compatibility
|
272
|
69
|
387
|
70 * This module is tested on CentOS 6, 7 and 8 with Puppet 5 and Puppet 6.
|
|
71 * It should work on any RHEL variant such as RedHat, OracleLinux, Scientific Linux etc.
|
|
72 * Amazon Linux compatability is not promised, as EPEL doesn't always work with it.
|
|
73 * Support for EL5 is deprecated. It *may* still work but we have no acceptance tests. CentOS 5 is EOL and RHEL5 and OracleLinux 5 extended support for most customers is due to end in 2020.
|
272
|
74
|
|
75 ## Unit tests
|
|
76
|
|
77 Install the necessary gems
|
|
78
|
|
79 bundle install --path vendor --without system_tests
|
|
80
|
|
81 Run the RSpec and puppet-lint tests
|
|
82
|
|
83 bundle exec rake test
|
|
84
|
|
85 ## System tests
|
|
86
|
|
87 If you have Vagrant >=1.1.0 you can also run system tests:
|
|
88
|
|
89 RSPEC_SET=centos-64-x64 bundle exec rake spec:system
|
|
90
|
|
91 Available RSPEC_SET options are in .nodeset.yml
|
|
92
|
|
93 # License
|
387
|
94
|
|
95 This module is distributed under the [Apache License 2.0](LICENSE).
|
|
96 Since version 3, it is maintained by [Vox Pupuli](https://voxpupuli.org/).
|
272
|
97
|
|
98 # Author/Contributors
|
|
99 * Aaron <slapula@users.noreply.github.com>
|
|
100 * Alex Harvey <Alex_Harvey@amp.com.au>
|
|
101 * Chad Metcalf <metcalfc@gmail.com>
|
|
102 * Ewoud Kohl van Wijngaarden <e.kohlvanwijngaarden@oxilion.nl>
|
|
103 * Jeffrey Clark <jclark@nmi.com>
|
|
104 * Joseph Swick <joseph.swick@meltwater.com>
|
|
105 * Matthaus Owens <mlitteken@gmail.com>
|
|
106 * Michael Hanselmann <hansmi@vshn.ch>
|
|
107 * Michael Stahnke <stahnma@fedoraproject.org>
|
|
108 * Michael Stahnke <stahnma@puppet.com>
|
|
109 * Michael Stahnke <stahnma@puppetlabs.com>
|
|
110 * Michael Stahnke <stahnma@websages.com>
|
|
111 * Mickaël Canévet <mickael.canevet@camptocamp.com>
|
|
112 * Nick Le Mouton <nick@noodles.net.nz>
|
|
113 * Pro Cabales <proletaryo@gmail.com>
|
|
114 * Proletaryo Cabales <proletaryo@gmail.com>
|
|
115 * Riccardo Calixte <rcalixte@broadinstitute.org>
|
|
116 * Robert Story <rstory@localhost>
|
|
117 * Rob Nelson <rnelson0@gmail.com>
|
387
|
118 * Siebrand Mazeland <siebrand@kitano.nl>
|
272
|
119 * Stefan Goethals <stefan@zipkid.eu>
|
|
120 * Tim Rupp <caphrim007@gmail.com>
|
|
121 * Toni Schmidbauer <toni@stderr.at>
|
|
122 * Trey Dockendorf <treydock@gmail.com>
|
|
123 * Troy Bollinger <troy@us.ibm.com>
|
|
124 * Vlastimil Holer <holer@ics.muni.cz>
|
|
125
|
|
126 # Alternatives
|
387
|
127 If you're on CentOS 7 or CentOS 8, you can just `yum install epel-release` as it's in centos-extras.
|