derive base_url from foreman-proxy/settings.yml by default
Setting the base_url param on all foreman_* resource declarations isn't very DRY (resource defaults are another option). Deriving this value from /etc/foreman-proxy/settings.yml is consistent with looking up tls/oauth data in /etc/foreman/settings.yaml.
Fixes #35089 - set NoDelay=false when deploying a UNIX socket
Upstream foreman.socket uses NoDelay=true with a TCP socket, but on UNIX sockets this just generates a useless warning. Explicitly setting it back to false in our override fixes the issue.
explictly set service_provider fact in tests
this comes from stdlib and is required in newer versions of the postgresql module
Remove leading :: from variables
Until Puppet 4 references were relative. This meant $apache::confd_dir could actually resolve to $foreman::config::apache::confd_dir. Using $:: made it absolute. All references are absolute since Puppet 4 and we could have removed this when we dropped Puppet 3 compatibility.
Remove redundant Optional data types
When a parameter has a default, there is no way to set it back to undef. That means the Optional part is redundant and the data type can be simplified.
Stop accepting UNSET as a value and rewrite db.yml to EPP
The value UNSET is treated special by Kafo, but that dates back to the days where undef was unreliable. This moves it to straight forward undef. The database.yml template is also rewritten from ERB to EPP since it's more reliable with undef.
Replace template with to_symbolized_yaml function
This function can output the same thing and removes the need for a template.
Move static parameters to init.pp
This makes it easier to see what the actual default is and needs less code.
Use Integer type for vhost ssl_verify_depth
Since puppetlabs/puppetlabs-apache@f41251e String values are no longer allowed for this parameter