Class: Setting::Ansible

Inherits:
Setting show all
Defined in:
app/models/setting/ansible.rb

Overview

Provide settings related with Ansible

Class Method Summary collapse

Class Method Details

.default_settingsObject

It would be more disadvantages than advantages to split up default_settings into multiple methods, this way it’s already very manageable.



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
# File 'app/models/setting/ansible.rb', line 11

def default_settings
  [
    set(
      'ansible_ssh_private_key_file',
      N_('Use this to supply a path to an SSH Private Key '\
         'that Ansible will use in lieu of a password '\
         'Override with "ansible_ssh_private_key_file" '\
         'host parameter'),
      '',
      N_('Private Key Path')
    ),
    set(
      'ansible_connection',
      N_('Use this connection type by default when running '\
         'Ansible playbooks. You can override this on hosts by '\
         'adding a parameter "ansible_connection"'),
      'ssh',
      N_('Connection type')
    ),
    set(
      'ansible_winrm_server_cert_validation',
      N_('Enable/disable WinRM server certificate '\
         'validation when running Ansible playbooks. You can override '\
         'this on hosts by adding a parameter '\
         '"ansible_winrm_server_cert_validation"'),
      'validate',
      N_('WinRM cert Validation')
    ),
    set(
      'ansible_verbosity',
      N_('Foreman will add this level of verbosity for '\
         'additional debugging output when running Ansible playbooks.'),
      '0',
      N_('Default verbosity level'),
      nil,
      :collection => lambda do
        { '0' => N_('Disabled'),
          '1' => N_('Level 1 (-v)'),
          '2' => N_('Level 2 (-vv)'),
          '3' => N_('Level 3 (-vvv)'),
          '4' => N_('Level 4 (-vvvv)') }
      end
    ),
    set(
      'ansible_post_provision_timeout',
      N_('Timeout (in seconds) to set when Foreman will trigger a '\
         'play Ansible roles task after a host is fully provisioned. '\
         'Set this to the maximum time you expect a host to take '\
         'until it is ready after a reboot.'),
      '360',
      N_('Post-provision timeout')
    ),
    set(
      'ansible_interval',
      N_('Timeout (in minutes) when hosts should have reported.'),
      '30',
      N_('Ansible report timeout')
    ),
    set(
      'ansible_out_of_sync_disabled',
      format(N_('Disable host configuration status turning to out of'\
         ' sync for %{cfgmgmt} after report does not arrive within'\
         ' configured interval'), :cfgmgmt => 'Ansible'),
      false,
      format(N_('%{cfgmgmt} out of sync disabled'),
             :cfgmgmt => 'Ansible')
    ),
    set(
      'ansible_inventory_template',
      N_('Foreman will use this template to schedule the report '\
         'with Ansible inventory'),
      'Ansible - Ansible Inventory',
      N_('Default Ansible inventory report template')
    ),
    set(
      'ansible_roles_to_ignore',
      N_('Those roles will be excluded when importing roles from smart proxy, '\
          'The expected input is comma separated values and you can use * wildcard metacharacters'\
          'For example: foo*, *b*,*bar'),
      [],
      N_('Ansible roles to ignore')
    )
  ]
end

.humanized_categoryObject



101
102
103
# File 'app/models/setting/ansible.rb', line 101

def humanized_category
  N_('Ansible')
end

.load_defaultsObject



96
97
98
99
# File 'app/models/setting/ansible.rb', line 96

def load_defaults
  Setting::BLANK_ATTRS.push('ansible_ssh_private_key_file')
  super
end