Skip to content

Commit

Permalink
instances should not share systemd RuntimeDirectory, redis.service.er…
Browse files Browse the repository at this point in the history
…b to EPP
  • Loading branch information
aamerik-salesforce committed Oct 21, 2021
1 parent fb4db5f commit b7f7478
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 26 deletions.
18 changes: 15 additions & 3 deletions manifests/instance.pp
Original file line number Diff line number Diff line change
Expand Up @@ -318,8 +318,8 @@
String[1] $service_group = $redis::service_group,
Boolean $manage_service_file = true,
String $log_file = "redis-server-${name}.log",
Stdlib::Absolutepath $pid_file = "/var/run/redis/redis-server-${name}.pid",
Variant[Stdlib::Absolutepath, Enum['']] $unixsocket = "/var/run/redis/redis-server-${name}.sock",
Stdlib::Absolutepath $pid_file = "/var/run/${service_name}/redis.pid",
Variant[Stdlib::Absolutepath, Enum['']] $unixsocket = "/var/run/${service_name}/redis.sock",
Stdlib::Absolutepath $workdir = "${redis::workdir}/redis-server-${name}",
) {
if $title == 'default' {
Expand Down Expand Up @@ -366,7 +366,19 @@
owner => 'root',
group => 'root',
mode => '0644',
content => template('redis/service_templates/redis.service.erb'),
content => epp(
'redis/service_templates/redis.service.epp',
{
bin_path => $redis::bin_path,
instance_title => $name,
port => $port,
redis_file_name => $redis_file_name,
service_name => $service_name,
service_user => $service_user,
ulimit => $ulimit,
ulimit_managed => $ulimit_managed,
}
),
}
} else {
if $ulimit_managed {
Expand Down
2 changes: 1 addition & 1 deletion spec/classes/redis_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1406,7 +1406,7 @@ class { 'redis::globals':
|Wants=network-online.target
|
|[Service]
|RuntimeDirectory=redis
|RuntimeDirectory=#{service_name}
|RuntimeDirectoryMode=2755
|Type=notify
|ExecStart=/usr/bin/redis-server #{config_file} --supervised systemd
Expand Down
2 changes: 1 addition & 1 deletion spec/defines/instance_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class { 'redis':
with_content(%r{^bind 127.0.0.1}).
with_content(%r{^logfile /var/log/redis/redis-server-app2\.log}).
with_content(%r{^dir /var/lib/redis/redis-server-app2}).
with_content(%r{^unixsocket /var/run/redis/redis-server-app2\.sock})
with_content(%r{^unixsocket /var/run/redis-server-app2/redis\.sock})
end
it { is_expected.to contain_file('/var/lib/redis/redis-server-app2') }

Expand Down
29 changes: 29 additions & 0 deletions templates/service_templates/redis.service.epp
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<%- |
Boolean $ulimit_managed,
Integer[0] $ulimit,
Stdlib::Absolutepath $bin_path,
Stdlib::Absolutepath $redis_file_name,
Stdlib::Port $port,
String[1] $instance_title,
String[1] $service_name,
String[1] $service_user,
| -%>
[Unit]
Description=Redis Advanced key-value store for instance <%= $instance_title %>
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
RuntimeDirectory=<%= $service_name %>
RuntimeDirectoryMode=2755
Type=notify
ExecStart=<%= $bin_path %>/redis-server <%= $redis_file_name %> --supervised systemd
ExecStop=<%= $bin_path %>/redis-cli -p <%= $port %> shutdown
Restart=always
User=<%= $service_user %>
Group=<%= $service_user %>
<%if $ulimit_managed { %>LimitNOFILE=<%= $ulimit %><% } %>

[Install]
WantedBy=multi-user.target
21 changes: 0 additions & 21 deletions templates/service_templates/redis.service.erb

This file was deleted.

0 comments on commit b7f7478

Please sign in to comment.