Puppet Class: oauth2_proxy::install

Defined in:
manifests/install.pp

Summary

Class to install and configure an oauth2_proxy This class should be considered private.

Overview



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
# File 'manifests/install.pp', line 4

class oauth2_proxy::install {
  if $caller_module_name != $module_name {
    fail("Use of private class ${name} by ${caller_module_name}")
  }

  $base    = regsubst($oauth2_proxy::tarball_name, '(\w+).tar.gz$', '\1')

  include ::archive
  archive { $oauth2_proxy::tarball_name:
    ensure       => present,
    source       => "${oauth2_proxy::source_base_url}/${oauth2_proxy::tarball_name}",
    path         => "${oauth2_proxy::install_root}/${oauth2_proxy::tarball_name}",
    extract      => true,
    extract_path => $oauth2_proxy::install_root,
    user         => $oauth2_proxy::user,
  }

  file { $oauth2_proxy::install_root:
    ensure => directory,
    owner  => $oauth2_proxy::user,
    group  => $oauth2_proxy::group,
    mode   => '0755',
  }

  file { "${oauth2_proxy::install_root}/bin":
    ensure => link,
    owner  => $oauth2_proxy::user,
    group  => $oauth2_proxy::group,
    target => "${oauth2_proxy::install_root}/${base}",
  }

  file { '/etc/oauth2_proxy':
    ensure => directory,
    owner  => $oauth2_proxy::user,
    group  => $oauth2_proxy::group,
    mode   => '0755',
  }

  file { '/var/log/oauth2_proxy':
    ensure => directory,
    owner  => $oauth2_proxy::user,
    group  => $oauth2_proxy::group,
    mode   => '0775',
  }

  case $oauth2_proxy::provider {
    'systemd': {
      file { "${oauth2_proxy::systemd_path}/oauth2_proxy@.service":
        ensure  => file,
        owner   => 'root',
        group   => 'root',
        mode    => '0644',
        content => template("${module_name}/oauth2_proxy@.service.erb"),
      }
    }
    default: {}
  }
}