Puppet Class: cfweb::nginx::aptrepo

Defined in:
manifests/nginx/aptrepo.pp

Overview



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
# File 'manifests/nginx/aptrepo.pp', line 6

class cfweb::nginx::aptrepo {
    include cfsystem

    $lsbdistcodename = $::facts['lsbdistcodename']
    $subdir = downcase($::facts['operatingsystem'])
    $release = $::facts['operatingsystem'] ? {
        'Debian' => (versioncmp($::facts['operatingsystemrelease'], '10') >= 0) ? {
            true    => 'stretch',
            default => $lsbdistcodename
        },
        'Ubuntu' => (versioncmp($::facts['operatingsystemrelease'], '18.04') >= 0) ? {
            true    => 'bionic',
            default => $lsbdistcodename
        },
        default  => $lsbdistcodename
    }

    # Nginx official
    #---
    apt::key { 'nginx_signing':
        id      => '573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62',
        content => file('cfweb/nginx_signing.key'),
    }

    apt::source { 'nginx':
        location => "${cfweb::nginx::nginx_repo}/${subdir}/",
        release  => $release,
        repos    => 'nginx',
        pin      => $cfsystem::apt_pin + 1,
        require  => Apt::Key['nginx_signing'],
    }

}