Puppet Class: rabbitmq::repo::rhel

Defined in:
manifests/repo/rhel.pp

Overview

Makes sure that the Packagecloud repo is installed

Parameters:

  • location (Any) (defaults to: "https://packagecloud.io/rabbitmq/rabbitmq-server/el/${facts['os'][release][major]}/\$basearch")
  • repo_key_source (String) (defaults to: $rabbitmq::repo_gpg_key)
  • package_key_source (String) (defaults to: $rabbitmq::package_gpg_key)


4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'manifests/repo/rhel.pp', line 4

class rabbitmq::repo::rhel (
  $location                  = "https://packagecloud.io/rabbitmq/rabbitmq-server/el/${facts['os'][release][major]}/\$basearch",
  String $repo_key_source    = $rabbitmq::repo_gpg_key,
  String $package_key_source = $rabbitmq::package_gpg_key,
) {
  # Import package key from rabbitmq to be able to
  # sign the package and the repo.
  # rabbitmq key is gpg-pubkey-6026dfca-573adfde
  exec { "rpm --import ${package_key_source}":
    path   => ['/bin','/usr/bin','/sbin','/usr/sbin'],
    unless => 'rpm -q gpg-pubkey-6026dfca-573adfde 2>/dev/null',
    before => YumRepo['rabbitmq'],
  }

  yumrepo { 'rabbitmq':
    ensure        => present,
    name          => 'rabbitmq_rabbitmq-server',
    baseurl       => $location,
    gpgkey        => $repo_key_source,
    enabled       => 1,
    gpgcheck      => 1,
    repo_gpgcheck => 1,
  }

  # This may still be needed to prevent warnings
  # packagecloud key is gpg-pubkey-4d206f89-5bbb8d59
  exec { "rpm --import ${repo_key_source}":
    path    => ['/bin','/usr/bin','/sbin','/usr/sbin'],
    unless  => 'rpm -q gpg-pubkey-4d206f89-5bbb8d59 2>/dev/null',
    require => YumRepo['rabbitmq'],
  }
}