Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Files
F9125266
service.pp
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
8 KB
Subscribers
None
service.pp
View Options
# == Class: docker::service
#
# Class to manage the docker service daemon
#
# === Parameters
# [*tcp_bind*]
# Which tcp port, if any, to bind the docker service to.
#
# [*ip_forward*]
# This flag interacts with the IP forwarding setting on
# your host system's kernel
#
# [*iptables*]
# Enable Docker's addition of iptables rules
#
# [*ip_masq*]
# Enable IP masquerading for bridge's IP range.
#
# [*socket_bind*]
# Which local unix socket to bind the docker service to.
#
# [*socket_group*]
# Which local unix socket to bind the docker service to.
#
# [*root_dir*]
# Specify a non-standard root directory for docker.
#
# [*extra_parameters*]
# Plain additional parameters to pass to the docker daemon
#
# [*shell_values*]
# Array of shell values to pass into init script config files
#
# [*manage_service*]
# Specify whether the service should be managed.
# Valid values are 'true', 'false'.
# Defaults to 'true'.
#
class
docker
::
service
(
$docker_command
=
$docker::docker_command,
$service_name
=
$docker::service_name,
$daemon_subcommand
=
$docker::daemon_subcommand,
$tcp_bind
=
$docker::tcp_bind,
$ip_forward
=
$docker::ip_forward,
$iptables
=
$docker::iptables,
$ip_masq
=
$docker::ip_masq,
$icc
=
$docker::icc,
$bridge
=
$docker::bridge,
$fixed_cidr
=
$docker::fixed_cidr,
$default_gateway
=
$docker::default_gateway,
$socket_bind
=
$docker::socket_bind,
$log_level
=
$docker::log_level,
$log_driver
=
$docker::log_driver,
$log_opt
=
$docker::log_opt,
$selinux_enabled
=
$docker::selinux_enabled,
$socket_group
=
$docker::socket_group,
$labels
=
$docker::labels,
$dns
=
$docker::dns,
$dns_search
=
$docker::dns_search,
$service_state
=
$docker::service_state,
$service_enable
=
$docker::service_enable,
$manage_service
=
$docker::manage_service,
$root_dir
=
$docker::root_dir,
$extra_parameters
=
$docker::extra_parameters,
$shell_values
=
$docker::shell_values,
$proxy
=
$docker::proxy,
$no_proxy
=
$docker::no_proxy,
$execdriver
=
$docker::execdriver,
$bip
=
$docker::bip,
$mtu
=
$docker::mtu,
$storage_driver
=
$docker::storage_driver,
$dm_basesize
=
$docker::dm_basesize,
$dm_fs
=
$docker::dm_fs,
$dm_mkfsarg
=
$docker::dm_mkfsarg,
$dm_mountopt
=
$docker::dm_mountopt,
$dm_blocksize
=
$docker::dm_blocksize,
$dm_loopdatasize
=
$docker::dm_loopdatasize,
$dm_loopmetadatasize
=
$docker::dm_loopmetadatasize,
$dm_datadev
=
$docker::dm_datadev,
$dm_metadatadev
=
$docker::dm_metadatadev,
$tmp_dir
=
$docker::tmp_dir,
$nowarn_kernel
=
$docker::nowarn_kernel,
$dm_thinpooldev
=
$docker::dm_thinpooldev,
$dm_use_deferred_removal
=
$docker::dm_use_deferred_removal,
$dm_use_deferred_deletion
=
$docker::dm_use_deferred_deletion,
$dm_blkdiscard
=
$docker::dm_blkdiscard,
$dm_override_udev_sync_check
=
$docker::dm_override_udev_sync_check,
$storage_devs
=
$docker::storage_devs,
$storage_vg
=
$docker::storage_vg,
$storage_root_size
=
$docker::storage_root_size,
$storage_data_size
=
$docker::storage_data_size,
$storage_min_data_size
=
$docker::storage_min_data_size,
$storage_chunk_size
=
$docker::storage_chunk_size,
$storage_growpart
=
$docker::storage_growpart,
$storage_auto_extend_pool
=
$docker::storage_auto_extend_pool,
$storage_pool_autoextend_threshold
=
$docker::storage_pool_autoextend_threshold,
$storage_pool_autoextend_percent
=
$docker::storage_pool_autoextend_percent,
$storage_config
=
$docker::storage_config,
$storage_config_template
=
$docker::storage_config_template,
$storage_setup_file
=
$docker::storage_setup_file,
$service_provider
=
$docker::service_provider,
$service_config
=
$docker::service_config,
$service_config_template
=
$docker::service_config_template,
$service_overrides_template
=
$docker::service_overrides_template,
$service_hasstatus
=
$docker::service_hasstatus,
$service_hasrestart
=
$docker::service_hasrestart,
$daemon_environment_files
=
$docker::daemon_environment_files,
$tls_enable
=
$docker::tls_enable,
$tls_verify
=
$docker::tls_verify,
$tls_cacert
=
$docker::tls_cacert,
$tls_cert
=
$docker::tls_cert,
$tls_key
=
$docker::tls_key,
)
{
unless
$::osfamily
=~
/
(
Debian
|
RedHat
|
Archlinux
|
Gentoo
)
/
{
fail
(
'The docker::service class needs a Debian, RedHat, Archlinux or Gentoo based system.'
)
}
$dns_array
=
any2array
(
$dns)
$dns_search_array
=
any2array
(
$dns_search)
$extra_parameters_array
=
any2array
(
$extra_parameters)
$shell_values_array
=
any2array
(
$shell_values)
$tcp_bind_array
=
any2array
(
$tcp_bind)
if
$service_config
{
$_service_config
=
$service_config
}
else
{
if
$::osfamily
==
'Debian'
{
$_service_config
=
"/etc/default/${service_name}"
}
}
$_manage_service
=
$manage_service
?
{
true
=>
Service
[
'docker'
],
default
=>
[],
}
if
$::osfamily
==
'RedHat'
{
file
{
$storage_setup_file:
ensure
=>
present
,
force
=>
true
,
content
=>
template
(
'docker/etc/sysconfig/docker-storage-setup.erb'
),
before
=>
$_manage_service,
notify
=>
$_manage_service,
}
}
case
$service_provider
{
'systemd'
:
{
file
{
'/etc/systemd/system/docker.service.d'
:
ensure
=>
directory
,
}
if
$service_overrides_template
{
file
{
'/etc/systemd/system/docker.service.d/service-overrides.conf'
:
ensure
=>
present
,
content
=>
template
(
$service_overrides_template),
notify
=>
Exec
[
'docker-systemd-reload-before-service'
],
before
=>
$_manage_service,
}
exec
{
'docker-systemd-reload-before-service'
:
path
=>
[
'/bin/'
,
'/sbin/'
,
'/usr/bin/'
,
'/usr/sbin/'
],
command
=>
'systemctl daemon-reload > /dev/null'
,
before
=>
$_manage_service,
refreshonly
=>
true
,
}
}
}
'upstart'
:
{
file
{
'/etc/init.d/docker'
:
ensure
=>
'link'
,
target
=>
'/lib/init/upstart-job'
,
force
=>
true
,
notify
=>
$_manage_service,
}
}
default
:
{}
}
if
$storage_config
{
file
{
$storage_config:
ensure
=>
present
,
force
=>
true
,
content
=>
template
(
$storage_config_template),
notify
=>
$_manage_service,
}
}
if
$_service_config
{
file
{
$_service_config:
ensure
=>
present
,
force
=>
true
,
content
=>
template
(
$service_config_template),
notify
=>
$_manage_service,
}
}
if
$manage_service
{
if
!
defined
(
Service
[
'docker'
])
{
service
{
'docker'
:
ensure
=>
$service_state,
name
=>
$service_name,
enable
=>
$service_enable,
hasstatus
=>
$service_hasstatus,
hasrestart
=>
$service_hasrestart,
provider
=>
$service_provider,
}
}
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Jun 21, 8:22 PM (3 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3426793
Attached To
R205 puppet-puppetlabs-docker
Event Timeline
Log In to Comment