Puppet Class: fhgfs::repo::debian

Defined in:
manifests/repo/debian.pp

Overview

Parameters:

  • manage_repo (Any) (defaults to: true)
  • package_source (Any) (defaults to: $fhgfs::package_source)
  • package_ensure (Any) (defaults to: $fhgfs::package_ensure)
  • major_version (Any) (defaults to: $fhgfs::major_version)


3
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'manifests/repo/debian.pp', line 3

class fhgfs::repo::debian (
  $manage_repo    = true,
  $package_source = $fhgfs::package_source,
  $package_ensure = $fhgfs::package_ensure,
  $major_version  = $fhgfs::major_version,
) {

# $distro = downcase($::operatingsystem)

  case $::operatingsystem {
    Debian: {
      case $::lsbdistcodename {
        'wheezy': {
          $release = 'deb7'
        }
        'squeeze': {
          $release = 'deb6'
        }
        default: {
          $release = 'deb7'
        }
      }
    }
    Ubuntu: {
      case $::lsbdistcodename {
        'precise': {
          $release = 'deb7'
        }
        default: {
          $release = 'deb7'
        }
      }
    }
    default: {
      fail ("Family: '${::osfamily}' OS: '${::operatingsystem}' is not supported yet")
    }
  }

  package { 'fhgfs-utils':
    ensure  => $package_ensure,
    require => Anchor['fhgfs::apt_repo'],
  }

  anchor { 'fhgfs::apt_repo' : }

  include '::apt'

  if $manage_repo {
    case $package_source {
      'fhgfs': {
        apt::source { 'fhgfs':
          location    => "http://www.fhgfs.com/release/${major_version}",
          repos       => 'non-free',
          release     => $release,
          key         => '64497785',
          include_src => false,
          key_source  => 'http://www.fhgfs.com/release/latest-stable/gpg/DEB-GPG-KEY-fhgfs',
          notify      => Exec['apt_get_update_for_fhgfs'],
        }
      }
      default: {}
    }

    exec { 'apt_get_update_for_fhgfs':
      command     => '/usr/bin/apt-get update',
      timeout     => 240,
      returns     => [ 0, 100 ],
      refreshonly => true,
      before      => Anchor['fhgfs::apt_repo'],
    }
  }
}