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 ultimately just a name-value pair. 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 orcharhino interface (a user with sufficient privileges can undo this).

The orcharhino interface also includes a text editor for creating and editing parameters. This text editor can show the diff 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:

  1. Host parameters

  2. Host group parameters

  3. Operating system parameters

  4. Domain parameters

  5. Location parameters

  6. Organization parameters

  7. Global parameters

The best practice recommendation is to use as restrictive a scope as possible (without needlessly proliferating duplicate parameters). Global parameters should remain the exception (for when you really need some 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:

Type

Description

Management UI Paths

Host parameters

Parameters available for a single host only. The relevant edit page will display 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

Parameters available to all hosts.

Configure > Global parameters