puppet-system icon indicating copy to clipboard operation
puppet-system copied to clipboard

Installing a package that requires epel

Open voxter opened this issue 10 years ago • 0 comments

Hi,

So I'm using hiera as per some of the examples, and attempting to install a package but that package requires EPEL be installed first. I seem to have found myself in a bit of a loop, or maybe misunderstanding of how require should work.

Basic hiera snippet:

site.pp:

node default {
  include stdlib
  hiera_include('classes','')
}

myhost.yaml:


---
classes: [' system ']

system::yumrepos:
   epel:
      mirrorlist: 'http://mirrors.fedoraproject.org/mirrorlist?repo=epel-${::os_maj_version}&arch=\$basearch'
      gpgcheck: '0'
      enabled: '1'

redis:
    ensure: installed
    require: Yumrepo[ 'epel' ]

When I run puppet agent on a client, I get:

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid relationship: Package[redis] { require => Yumrepo[ epel ] }, because Yumrepo[ epel ] doesn't seem to be in the catalog

My assumption is that because im pointing a require at a Yumrepo, but its being defined in hiera, it doesnt see it in the catalog?

Any advice?

voxter avatar Dec 04 '14 02:12 voxter