Puppet Class: rabbitmq::repo::apt

Defined in:
manifests/repo/apt.pp

Overview

requires

puppetlabs-apt
puppetlabs-stdlib

Parameters:

  • location (Any) (defaults to: 'http://www.rabbitmq.com/debian/')
  • release (Any) (defaults to: 'testing')
  • repos (Any) (defaults to: 'main')
  • include_src (Any) (defaults to: false)
  • key (Any) (defaults to: '0A9AF2115F4687BD29803A206B73A36E6026DFCA')
  • key_source (Any) (defaults to: 'https://www.rabbitmq.com/rabbitmq-release-signing-key.asc')
  • key_content (Any) (defaults to: undef)
  • architecture (Any) (defaults to: undef)


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
36
37
38
39
40
41
42
43
44
45
46
47
# File 'manifests/repo/apt.pp', line 4

class rabbitmq::repo::apt(
  $location     = 'http://www.rabbitmq.com/debian/',
  $release      = 'testing',
  $repos        = 'main',
  $include_src  = false,
  $key          = '0A9AF2115F4687BD29803A206B73A36E6026DFCA',
  $key_source   = 'https://www.rabbitmq.com/rabbitmq-release-signing-key.asc',
  $key_content  = undef,
  $architecture = undef,
  ) {

  $pin = $rabbitmq::package_apt_pin

  # ordering / ensure to get the last version of repository
  Class['rabbitmq::repo::apt']
  -> Class['apt::update']
  -> Package<| title == 'rabbitmq-server' |>

  $ensure_source = $rabbitmq::repos_ensure ? {
    false   => 'absent',
    default => 'present',
  }

  apt::source { 'rabbitmq':
    ensure       => $ensure_source,
    location     => $location,
    release      => $release,
    repos        => $repos,
    include_src  => $include_src,
    key          => $key,
    key_source   => $key_source,
    key_content  => $key_content,
    architecture => $architecture,
  }

  if $pin != '' {
    validate_re($pin, '\d{1,4}')
    apt::pin { 'rabbitmq':
      packages => '*',
      priority => $pin,
      origin   => 'www.rabbitmq.com',
    }
  }
}