91 lines
2.4 KiB
Puppet
91 lines
2.4 KiB
Puppet
# Install common prequisites for Google products.
|
|
#
|
|
class google::common {
|
|
|
|
case $::operatingsystem {
|
|
"centos","redhat","fedora": {
|
|
include yum::repo::google
|
|
}
|
|
default: {
|
|
fail("Google products via puppet not supported on ${::operatingsystem}")
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
# Install Google Chrome browser.
|
|
#
|
|
# == Parameters:
|
|
#
|
|
# $managed:
|
|
# Source for managed profile settings, defaults to none.
|
|
#
|
|
# $recommended:
|
|
# Source for recommended profile settings, defaults to none.
|
|
#
|
|
class google::chrome($managed=undef, $recommended=undef) {
|
|
|
|
include google::common
|
|
package { "google-chrome-beta":
|
|
ensure => installed,
|
|
require => Class["google::common"],
|
|
}
|
|
|
|
if $managed or $recommended {
|
|
file { [ "/etc/opt", "/etc/opt/chrome", "/etc/opt/chrome/policies", ]:
|
|
ensure => directory,
|
|
mode => "0755",
|
|
owner => "root",
|
|
group => "root",
|
|
}
|
|
if $managed {
|
|
file { "/etc/opt/chrome/policies/managed":
|
|
ensure => directory,
|
|
mode => "0755",
|
|
owner => "root",
|
|
group => "root",
|
|
require => File["/etc/opt/chrome/policies"],
|
|
}
|
|
file { "/etc/opt/chrome/policies/managed/defaults.json":
|
|
ensure => present,
|
|
source => $managed,
|
|
mode => "0644",
|
|
owner => "root",
|
|
group => "root",
|
|
require => File["/etc/opt/chrome/policies/managed"],
|
|
}
|
|
}
|
|
if $recommended {
|
|
file { "/etc/opt/chrome/policies/recommended":
|
|
ensure => directory,
|
|
mode => "0755",
|
|
owner => "root",
|
|
group => "root",
|
|
require => File["/etc/opt/chrome/policies"],
|
|
}
|
|
file { "/etc/opt/chrome/policies/recommended/defaults.json":
|
|
ensure => present,
|
|
source => $recommended,
|
|
mode => "0644",
|
|
owner => "root",
|
|
group => "root",
|
|
require => File["/etc/opt/chrome/policies/recommended"],
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
# Install Google Desktop.
|
|
#
|
|
class google::desktop {
|
|
|
|
include google::common
|
|
package { "google-desktop-linux":
|
|
ensure => installed,
|
|
require => Class["google::common"],
|
|
}
|
|
|
|
}
|