Project

General

Profile

« Previous | Next » 

Revision 477b6b6b

Added by Ondřej Pražák over 7 years ago

Fixes #16740 - Access host params through macro

View differences:

lib/foreman/renderer.rb
:foreman_server_url, :log_debug, :log_info, :log_warn, :log_error, :log_fatal, :template_name, :dns_lookup,
:pxe_kernel_options ]
ALLOWED_HOST_HELPERS ||= [ :grub_pass, :ks_console, :root_pass,
:media_path, :param_true?, :param_false?, :match ]
:media_path, :param_true?, :param_false?, :match,
:host_param_true?, :host_param_false?,
:host_param, :host_puppet_classes, :host_enc ]
ALLOWED_HELPERS ||= ALLOWED_GENERIC_HELPERS + ALLOWED_HOST_HELPERS
......
@template_logger ||= Foreman::Logging.logger('templates')
end
def host_enc(*path)
@enc ||= @host.info.deep_dup
return @enc if path.compact.empty?
enc = @enc
path.each { |step| enc = enc.fetch step }
enc
end
def host_param(param_name)
@host.params[param_name]
end
def host_puppet_classes
@host.puppetclasses
end
def host_param_true?(name)
@host.params.has_key?(name) && Foreman::Cast.to_bool(@host.params[name])
end
def host_param_false?(name)
@host.params.has_key?(name) && Foreman::Cast.to_bool(@host.params[name]) == false
end
def render_safe(template, allowed_methods = [], allowed_vars = {})
if Setting[:safemode_render]
box = Safemode::Box.new self, allowed_methods

Also available in: Unified diff