Puppet Class: squid::config

Inherits:
squid
Defined in:
manifests/config.pp

Summary

Configure the system to use squid config is included in the main class `squid` for parameters see `squid` class

Overview

Parameters:

  • config (Any) (defaults to: $squid::config)
  • config_user (Any) (defaults to: $squid::config_user)
  • config_group (Any) (defaults to: $squid::config_group)
  • cache_mem (Any) (defaults to: $squid::cache_mem)
  • cache_replacement_policy (Any) (defaults to: $squid::cache_replacement_policy)
  • memory_replacement_policy (Any) (defaults to: $squid::memory_replacement_policy)
  • visible_hostname (Any) (defaults to: $squid::visible_hostname)
  • via (Any) (defaults to: $squid::via)
  • httpd_suppress_version_string (Any) (defaults to: $squid::httpd_suppress_version_string)
  • forwarded_for (Any) (defaults to: $squid::forwarded_for)
  • memory_cache_shared (Any) (defaults to: $squid::memory_cache_shared)
  • maximum_object_size_in_memory (Any) (defaults to: $squid::maximum_object_size_in_memory)
  • access_log (Any) (defaults to: $squid::access_log)
  • buffered_logs (Any) (defaults to: $squid::buffered_logs)
  • coredump_dir (Any) (defaults to: $squid::coredump_dir)
  • max_filedescriptors (Any) (defaults to: $squid::max_filedescriptors)
  • error_directory (Any) (defaults to: $squid::error_directory)
  • err_page_stylesheet (Any) (defaults to: $squid::err_page_stylesheet)
  • workers (Any) (defaults to: $squid::workers)
  • acls (Any) (defaults to: $squid::acls)
  • http_access (Any) (defaults to: $squid::http_access)
  • send_hit (Any) (defaults to: $squid::send_hit)
  • snmp_access (Any) (defaults to: $squid::snmp_access)
  • icp_access (Any) (defaults to: $squid::icp_access)
  • auth_params (Any) (defaults to: $squid::auth_params)
  • http_ports (Any) (defaults to: $squid::http_ports)
  • https_ports (Any) (defaults to: $squid::https_ports)
  • url_rewrite_program (Any) (defaults to: $squid::url_rewrite_program)
  • url_rewrite_children (Any) (defaults to: $squid::url_rewrite_children)
  • url_rewrite_child_options (Any) (defaults to: $squid::url_rewrite_child_options)
  • refresh_patterns (Any) (defaults to: $squid::refresh_patterns)
  • snmp_incoming_address (Any) (defaults to: $squid::snmp_incoming_address)
  • snmp_ports (Any) (defaults to: $squid::snmp_ports)
  • ssl_bump (Any) (defaults to: $squid::ssl_bump)
  • sslproxy_cert_error (Any) (defaults to: $squid::sslproxy_cert_error)
  • cache_dirs (Any) (defaults to: $squid::cache_dirs)
  • cache (Any) (defaults to: $squid::cache)
  • extra_config_sections (Any) (defaults to: $squid::extra_config_sections)
  • squid_bin_path (Any) (defaults to: $squid::squid_bin_path)


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

class squid::config (
  $config                        = $squid::config,
  $config_user                   = $squid::config_user,
  $config_group                  = $squid::config_group,
  $cache_mem                     = $squid::cache_mem,
  $cache_replacement_policy      = $squid::cache_replacement_policy,
  $memory_replacement_policy     = $squid::memory_replacement_policy,
  $visible_hostname              = $squid::visible_hostname,
  $via                           = $squid::via,
  $httpd_suppress_version_string = $squid::httpd_suppress_version_string,
  $forwarded_for                 = $squid::forwarded_for,
  $memory_cache_shared           = $squid::memory_cache_shared,
  $maximum_object_size_in_memory = $squid::maximum_object_size_in_memory,
  $access_log                    = $squid::access_log,
  $buffered_logs                 = $squid::buffered_logs,
  $coredump_dir                  = $squid::coredump_dir,
  $max_filedescriptors           = $squid::max_filedescriptors,
  $error_directory               = $squid::error_directory,
  $err_page_stylesheet           = $squid::err_page_stylesheet,
  $workers                       = $squid::workers,
  $acls                          = $squid::acls,
  $http_access                   = $squid::http_access,
  $send_hit                      = $squid::send_hit,
  $snmp_access                   = $squid::snmp_access,
  $icp_access                    = $squid::icp_access,
  $auth_params                   = $squid::auth_params,
  $http_ports                    = $squid::http_ports,
  $https_ports                   = $squid::https_ports,
  $url_rewrite_program           = $squid::url_rewrite_program,
  $url_rewrite_children          = $squid::url_rewrite_children,
  $url_rewrite_child_options     = $squid::url_rewrite_child_options,
  $refresh_patterns              = $squid::refresh_patterns,
  $snmp_incoming_address         = $squid::snmp_incoming_address,
  $snmp_ports                    = $squid::snmp_ports,
  $ssl_bump                      = $squid::ssl_bump,
  $sslproxy_cert_error           = $squid::sslproxy_cert_error,
  $cache_dirs                    = $squid::cache_dirs,
  $cache                         = $squid::cache,
  $extra_config_sections         = $squid::extra_config_sections,
  $squid_bin_path                = $squid::squid_bin_path,
) inherits squid {
  concat { $config:
    ensure       => present,
    owner        => $config_user,
    group        => $config_group,
    mode         => '0640',
    validate_cmd => "${squid_bin_path} -k parse -f %",
  }

  concat::fragment { 'squid_header':
    target  => $config,
    content => template('squid/squid.conf.header.erb'),
    order   => '01',
  }

  if $acls {
    create_resources('squid::acl', $acls)
  }
  if $http_access {
    create_resources('squid::http_access', $http_access)
  }
  if $send_hit {
    create_resources('squid::send_hit', $send_hit)
  }
  if $snmp_access {
    create_resources('squid::snmp_access', $snmp_access)
  }
  if $icp_access {
    create_resources('squid::icp_access', $icp_access)
  }
  if $auth_params {
    create_resources('squid::auth_param', $auth_params)
  }
  if $http_ports {
    create_resources('squid::http_port', $http_ports)
  }
  if $https_ports {
    create_resources('squid::https_port', $https_ports)
  }
  if $snmp_ports {
    create_resources('squid::snmp_port', $snmp_ports)
  }
  if $cache_dirs {
    create_resources('squid::cache_dir', $cache_dirs)
  }
  if $cache {
    create_resources('squid::cache', $cache)
  }
  if $refresh_patterns {
    create_resources('squid::refresh_pattern', $refresh_patterns)
  }
  if $ssl_bump {
    create_resources('squid::ssl_bump', $ssl_bump)
  }
  if $sslproxy_cert_error {
    create_resources('squid::sslproxy_cert_error', $sslproxy_cert_error)
  }
  create_resources('squid::extra_config_section', $extra_config_sections)
}