Skip to content

Commit

Permalink
Configurable Redis URL
Browse files Browse the repository at this point in the history
This allows users to run with a remote Redis server.
  • Loading branch information
ekohl committed Feb 28, 2024
1 parent cc20358 commit 9534286
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 4 deletions.
7 changes: 7 additions & 0 deletions manifests/config.pp
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
# Configures pulp3
# @api private
class pulpcore::config {
if $pulpcore::redis_url {
$redis_url = $pulpcore::redis_url
} else {
contain redis
$redis_url = "redis://localhost:${redis::port}/${pulpcore::redis_db}"
}

file { [$pulpcore::config_dir, $pulpcore::certs_dir]:
ensure => directory,
owner => 'root',
Expand Down
2 changes: 0 additions & 2 deletions manifests/database.pp
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,4 @@
refreshonly => false,
require => Pulpcore::Admin['migrate --noinput'],
}

contain redis
}
6 changes: 5 additions & 1 deletion manifests/init.pp
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,11 @@
# @param django_secret_key
# SECRET_KEY for Django
#
# @param redis_url
# Redis URL use. If not specified, a local server will be installed
#
# @param redis_db
# Redis DB number to use. By default, Redis supports a DB number of 0 through 15.
# The default DB to use when redis_url is not specified. By default, Redis supports a DB number of 0 through 15.
#
# @param servername
# Server name of the VirtualHost in the webserver
Expand Down Expand Up @@ -232,6 +235,7 @@
Optional[Stdlib::Absolutepath] $postgresql_db_ssl_key = undef,
Optional[Stdlib::Absolutepath] $postgresql_db_ssl_root_ca = undef,
String $django_secret_key = extlib::cache_data('pulpcore_cache_data', 'secret_key', extlib::random_password(50)),
Optional[Redis::RedisUrl] $redis_url = undef,
Integer[0] $redis_db = 8,
Stdlib::Fqdn $servername = $facts['networking']['fqdn'],
Array[Stdlib::Fqdn] $serveraliases = [],
Expand Down
12 changes: 12 additions & 0 deletions spec/classes/pulpcore_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -659,6 +659,18 @@
end
end
end

context 'with external redis' do
let(:params) do
{
redis_url: 'redis://redis.example.com:12345/7',
}
end

it { is_expected.to compile.with_all_deps }
it { is_expected.to contain_concat__fragment('base').with_content(include('REDIS_URL = "redis://redis.example.com:12345/7"')) }
it { is_expected.not_to contain_class('redis') }
end
end
end
end
2 changes: 1 addition & 1 deletion templates/settings.py.erb
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ DATABASES = {
<% end -%>
},
}
REDIS_URL = "redis://localhost:<%= scope['redis::port'] %>/<%= scope['pulpcore::redis_db'] %>"
REDIS_URL = "<%= @redis_url %>"

<% if scope['pulpcore::worker_ttl'] -%>
WORKER_TTL = <%= scope['pulpcore::worker_ttl'] %>
Expand Down

0 comments on commit 9534286

Please sign in to comment.