Puppet Class: odoo::config

Defined in:
manifests/config.pp

Summary

Manage odoo configuration

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

class odoo::config {
  assert_private()

  $raw_params = [
    'admin_passwd',
    'csv_internal_sep',
    'reportgz',
    'without_demo',
    'import_partial',
    'pidfile',
    'addons_path',
    'upgrades_paths',
    'server_wide_modules',
    'data_dir',
    'http_interface',
    'http_port',
    'longpolling_port',
    'http_enable',
    'proxy_mode',
    'dbfilter',
    'test_enable',
    'test_file',
    'test_tags',
    'screencasts',
    'screenshots',
    'logfile',
    'syslog',
    'log_handler',
    'log_db',
    'log_db_level',
    'log_level',
    'email_from',
    'smtp_server',
    'smtp_port',
    'smtp_ssl',
    'smtp_user',
    'smtp_password',
    'db_name',
    'db_user',
    'db_password',
    'pg_path',
    'db_host',
    'db_port',
    'db_sslmode',
    'db_maxconn',
    'db_template',
    'language',
    'translate_out',
    'translate_in',
    'overwrite_existing_translations',
    'translate_modules',
    'list_db',
    'osv_memory_count_limit',
    'osv_memory_age_limit',
    'max_cron_threads',
    'unaccent',
    'geoip_database',
    'workers',
    'limit_memory_soft',
    'limit_memory_hard',
    'limit_time_cpu',
    'limit_time_real',
    'limit_time_real_cron',
    'limit_request',
  ]

  $raw_params.each |$raw_param| {
    $raw_value = getvar("odoo::${raw_param}")

    if $raw_value != undef {
      $param = $raw_param ? {
        'http_enable'    => $odoo::http_enable_setting,
        'http_interface' => $odoo::http_interface_setting,
        'http_port'      => $odoo::http_port_setting,
        default          => $raw_param,
      }

      $value = $raw_value ? {
        Array[String] => $raw_value.join(','),
        Boolean       => String($raw_value, '%T'),
        Sensitive     => $raw_value.unwrap(),
        default       => $raw_value,
      }

      $show_diff = $raw_value ? {
        Sensitive => false,
        default   => true,
      }

      odoo_config { $param:
        ensure    => present,
        value     => $value,
        show_diff => $show_diff,
      }
    }
  }
}