Foreman Parameters

You can associate variables with individual hosts, Hostgroups or whole organizations that can be used by Foreman and/or Puppet.
Best practice it to use (nested) Hostgroups to set defaults, and override individual hosts as needed.
There are several parameters read by the ncsu modules of which you should be aware.

Parameters set in organizational hostgroup

When your organization was created, a hostgroup (named **YourOrg** hosts) with several default parameters set. You should set parameters here that you want to be the defaults for all your hosts, and [create child hostgroups] to separate out hosts that need specific defaults overridden.

Convenience parameters

These parameters control the initial kickstart/preseed to tune it’s operation.

Parameter Description
bootloader-append A space delimited list of kernel parameters passed to kickstart default=”nofb quiet splash=quiet”
disable-firewall default=false
disable-uek default=false
enable-epel default=true
enable-puppetlabs-pc1-repo Old, busted Puppet repo. Delete or set to false or it will break things. default=false
enable-puppetlabs-puppet5-repo Install Puppet 5 repo.
enable-puppetlabs-repo: boolean Old, busted Puppet repo. default=false
fips_enabled default=false
force-puppet Force Puppet even with no PM set. default=false
keyboard default=”us”
lang Default “en_US.UTF-8”
ntp-server set the default time source
package_upgrade true update all packages after install
pxe_kernel_options Space delimited list of options to APPEND to the PXE boot entry
salt_master default=undef
selinux-mode Default “enforcing”
time-zone Set machine’s time zone
use-ntp Default depends on OS release

Parameters associated with Subnets

Networking specific configuration parameters can be associated with subnets. This is currently use to indicate that a proxy is required for internet access.

Parameter Description
http-proxy The fqdn of the host’s http proxy
http-proxy-port The host’s http proxy port

ncsu:: puppet module parameters

Several modules in ncsu:: will configure themselves according to Foreman parameters.

Parameter Description
ownergroup The AD group with ids usually granted both ssh and sudo rights
addgroups Comna seperated list of additional AD groups
addusers Comna seperated list of additional AD users

Red Hat Satellite Subscription parameters

Several parameters are used to automatically register Red Hat hosts with the campus Satellite for licensing at install time. See the CSI documentation on Satellite at NCSU

Parameter Description
subscription_manager true subscribe to satellite. false don’t
subscription_manager_org Always “North Carolina State University”
activation_key Activation key for your group
subscription_manager_certpkg_url URL for your group
subscription_manager_repos Comma separated list of additional repositories to include. Note rhel-7-server-optional-rpms is required for ncsu::profile::authnz to function!
satellite_registration_wait_maximum The maximum length of time (in seconds) the kickstart script will wait for satellite registration to succeed (default is 500 seconds)
satellite_registration_wait_increment The polling interval (in seconds) the kickstart script uses to check for satellite registration (default is 15 seconds)
subscription_manager_username RHN account for “upstream” registration
subscription_manager_password Password matching subscription_manager_username

Foreman parameters with Puppet Roles

Foreman parameters are always simple strings. To add a Foreman parameter named target to your puppet role’s manifest, use something like:

class demo::role::role_with_params(
  String $target,       # a string passed from Foreman
  String $server_ip,    # and another Foreman parameter
) {

  notify{ "Target is set to ${target}": }

} #  demo::role::role_with_params
Edit me