Parameters
Parameters may be used to specify values, which can then be used dynamically throughout much of orcharhino. Central orcharhino features like host provisioning, as well as orcharhino’s configuration management options (Puppet, Ansible, and Salt), rely heavily on the availability of parameters.
Basic Features
Parameters are name-value pairs. The name of a parameter may not contain white space. The value may contain arbitrary Unicode strings. That way, entire scripts can be contained within parameters.
Parameter values can also be set to be hidden within the management UI. Note that a user with sufficient privileges can undo this.
The orcharhino interface also includes a text editor for creating and editing parameters. It shows the difference between your current changes and the previous parameter value, supports syntax highlighting, as well as Vim and Emacs like key bindings.
Parameter Types and Hierarchy
There are various types of parameters, which are restricted to different scopes, as well as organized into a parameter hierarchy. This means that if the same parameter is defined within multiple scopes, the value of the more restrictive scope will override the more general one. That way, for example, a globally defined fallback value, could be overridden for an individual host.
The full list of different parameter types, from highest to lowest priority, goes as follows:
-
Host parameters
-
Host group parameters
-
Operating system parameters
-
Domain parameters
-
Location parameters
-
Organization parameters
Restrict the scope of parameters as much as possible without needlessly proliferating duplicate parameters. Global parameters remain the exception for when you really need to set a value for every host. |
The following table provides an overview of the different parameter types, as well as where to find them in the management UI:
Parameter Type | Description | Management UI Paths |
---|---|---|
Host parameters |
Parameters available for a single host only. The relevant edit page displays all parameters inherited from any lower scope. You can override them by adding the relevant host parameter. |
Hosts > All hosts > Your Host > Edit > Parameters |
Host group parameters |
Parameters available to all hosts in a specific host group. |
Configure > Host Groups > Your Host Group > Parameters |
Operating system parameters |
Parameters available to all hosts using a specific operating system. |
Hosts > Operating Systems > Your OS > Parameters |
Domain parameters |
Parameters available to all hosts in a specific domain. |
Infrastructure > Domains > Your Domain > Parameters |
Organization parameters |
Parameters available to all hosts in a specific organization. |
Administer > Organizations > Your Organization > Parameters |
Location parameters |
Parameters available to all hosts in a specific location. |
Administer > Locations > Your Location > Parameters |
Global parameters |
Global parameters are available to all hosts. |
Configure > Global parameters |