Puppet Class: google_chrome::config

Defined in:
manifests/config.pp

Overview

Class: google_chrome::install

config Installs the Google Chrome web browser.

Parameters

package_name

The name of the package to install. Default: ‘google-chrome-stable’

version

Chrome version to install. Can be one of ‘stable’ (the default), ‘unstable’ or ‘beta’. Default: ‘stable’

repo_gpg_key

The URL of the GPG key used to sign the repository. Default: ‘dl-ssl.google.com/linux/linux_signing_key.pub

repo_gpg_key_id

The ID of the GPG key used to sign the repository. Default: ‘4CCA1EAF950CEE4AB83976DCA040830F7FAC5991’

repo_gpg_key_options

Additional options to pass to the GPG command when importing the key. Default: undef

repo_name

The name of the repository to create. Default: ‘google-chrome’

defaults_file

The path to the defaults file that will be created. Default: ‘/etc/default/google-chrome’

defaults_proxy_pac_url

The URL of the proxy.pac file to use for proxy configuration. Default: undef

repo_base_url

The base URL of the repository. Default: ‘dl.google.com/linux/chrome/rpm/stable/x86_64

Parameters:

  • defaults_file (Stdlib::Absolutepath) (defaults to: $google_chrome::params::defaults_file)
  • repo_name (String) (defaults to: $google_chrome::params::repo_name)
  • repo_base_url (String) (defaults to: $google_chrome::params::repo_base_url)
  • repo_gpg_key (Stdlib::Httpsurl) (defaults to: $google_chrome::params::repo_gpg_key)
  • package_name (String) (defaults to: $google_chrome::params::package_name)
  • version (String) (defaults to: $google_chrome::params::version)
  • repo_gpg_key_id (String) (defaults to: $google_chrome::params::repo_gpg_key_id)
  • repo_gpg_key_options (Optional[String]) (defaults to: $google_chrome::params::repo_gpg_key_options)
  • defaults_proxy_pac_url (Variant[ Stdlib::Httpsurl, Stdlib::Httpurl, Undef ]) (defaults to: $google_chrome::params::defaults_proxy_pac_url)


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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'manifests/config.pp', line 42

class google_chrome::config (
  Stdlib::Absolutepath $defaults_file    = $google_chrome::params::defaults_file,
  String $repo_name                      = $google_chrome::params::repo_name,
  String $repo_base_url                  = $google_chrome::params::repo_base_url,
  Stdlib::Httpsurl $repo_gpg_key         = $google_chrome::params::repo_gpg_key,
  String $package_name                   = $google_chrome::params::package_name,
  String $version                        = $google_chrome::params::version,
  String $repo_gpg_key_id                = $google_chrome::params::repo_gpg_key_id,
  Optional[String] $repo_gpg_key_options = $google_chrome::params::repo_gpg_key_options,
  Variant[
    Stdlib::Httpsurl, Stdlib::Httpurl, Undef
  ] $defaults_proxy_pac_url              = $google_chrome::params::defaults_proxy_pac_url,
) {
  file { $defaults_file:
    ensure  => 'file',
    owner   => 'root',
    group   => 'root',
    mode    => '0644',
    content => epp('google_chrome/defaults-google-chrome.epp',
      {
        proxy_pac_url => $defaults_proxy_pac_url,
      }
    ),
  }

  case $facts['os']['family'] {
    'RedHat': {
      yumrepo { $repo_name:
        name     => $repo_name,
        descr    => $repo_name,
        enabled  => 1,
        gpgcheck => 1,
        baseurl  => $repo_base_url,
        gpgkey   => $repo_gpg_key,
        before   => Package["${package_name}-${version}"],
      }
    }
    'Debian': {
      Exec['apt_update'] -> Package["${package_name}-${version}"]

      apt::source { $repo_name:
        location => $repo_base_url,
        release  => 'stable',
        key      => {
          id      => $repo_gpg_key_id,
          source  => $repo_gpg_key,
          options => $repo_gpg_key_options,
        },
        repos    => 'main',
        include  => {
          'src' => false,
        },
      }
    }
    'Suse': {
      zypprepo { $repo_name:
        name     => $repo_name,
        baseurl  => $repo_base_url,
        enabled  => 1,
        gpgcheck => 0,
        type     => 'rpm-md',
        before   => Package["${package_name}-${version}"],
      }
    }
    default: {
      fail("Unsupported operating system family ${facts['os']['family']}")
    }
  }
}