|
37 | 37 | }
|
38 | 38 | }
|
39 | 39 |
|
40 |
| - if $deployment_mode == 'package' { |
41 |
| - service { "${foreman_service}.socket": |
42 |
| - ensure => $foreman_service_ensure, |
43 |
| - enable => $foreman_service_enable, |
44 |
| - } |
| 40 | + service { "${foreman_service}.socket": |
| 41 | + ensure => bool2str($deployment_mode == 'package', $foreman_service_ensure, 'absent'), |
| 42 | + enable => $foreman_service_enable, |
| 43 | + } |
45 | 44 |
|
46 |
| - service { $foreman_service: |
| 45 | + if $deployment_mode == 'package' { |
| 46 | + # podman::quadlet already creates a service with the same name |
| 47 | + service { "${foreman_service}.service": |
47 | 48 | ensure => $foreman_service_ensure,
|
48 | 49 | enable => $foreman_service_enable,
|
49 | 50 | before => Service["${foreman_service}.socket"],
|
50 | 51 | }
|
51 |
| - } else { |
| 52 | + } |
| 53 | + |
| 54 | + if $deployment_mode == 'container' { |
52 | 55 | file { '/etc/containers/systemd':
|
53 | 56 | ensure => directory,
|
54 | 57 | }
|
55 |
| - podman::quadlet { 'foreman.container': |
56 |
| - ensure => present, |
57 |
| - unit_entry => { |
58 |
| - 'Description' => 'Foreman', |
59 |
| - }, |
60 |
| - service_entry => { |
61 |
| - 'TimeoutStartSec' => '900', |
62 |
| - }, |
63 |
| - container_entry => { |
64 |
| - 'Image' => $container_image, |
65 |
| - 'Volume' => ['/etc/foreman/:/etc/foreman/'], |
66 |
| - 'AddCapability' => ['CAP_DAC_OVERRIDE', 'CAP_IPC_OWNER'], |
67 |
| - 'Network' => 'host', |
68 |
| - 'HostName' => $foreman::servername, |
69 |
| - 'Notify' => true, |
70 |
| - }, |
71 |
| - install_entry => { |
72 |
| - 'WantedBy' => 'default.target', |
73 |
| - }, |
74 |
| - active => true, |
75 |
| - } |
| 58 | + } |
| 59 | + |
| 60 | + $quadlet_active = $deployment_mode ? { 'container' => true, default => undef } |
| 61 | + |
| 62 | + podman::quadlet { 'foreman.container': |
| 63 | + ensure => bool2str($deployment_mode == 'container', 'present', 'absent'), |
| 64 | + unit_entry => { |
| 65 | + 'Description' => 'Foreman', |
| 66 | + }, |
| 67 | + service_entry => { |
| 68 | + 'TimeoutStartSec' => '900', |
| 69 | + }, |
| 70 | + container_entry => { |
| 71 | + 'Image' => $container_image, |
| 72 | + 'Volume' => ['/etc/foreman/:/etc/foreman/'], |
| 73 | + 'AddCapability' => ['CAP_DAC_OVERRIDE', 'CAP_IPC_OWNER'], |
| 74 | + 'Network' => 'host', |
| 75 | + 'HostName' => $foreman::servername, |
| 76 | + 'Notify' => true, |
| 77 | + }, |
| 78 | + install_entry => { |
| 79 | + 'WantedBy' => 'default.target', |
| 80 | + }, |
| 81 | + active => $quadlet_active, |
76 | 82 | }
|
77 | 83 | }
|
0 commit comments