The following settings are in the [evars]
section of the linchpin.conf
LinchPin sets several extra_vars
values, which are passed to the provisioning playbooks.
Note
Default paths in playbooks exist. lp_path = <src_dir>/linchpin determined in the load_config method of linchpin.cli.LinchpinCliContext if either of these change, the value in linchpin/templates must also change
Enables the Ansible check_mode, or Dry Run functionality. Most provisioners currently DO NOT support this option
_check_mode = False
LinchPin supports the Ansible async mode for certain ../providers
. Setting async = True
here enables the feature.
_async = False
Works in conjunction with the async setting, defaulting the async wait time to {{ async_timeout }}
in provider playbooks
async_timeout = 1000
In older versions of Linchpin, the uhash value was not used. If set to true, the unique-ish hash (uhash) will be appended to instances (for providers who support naming) and the inventory_path.
enable_uhash = False
In older versions of linchpin (<v1.0.4), a resources folder exists, which dumped the data that is now stored in the RunDB.
generate_resources = True
Deprecated in version 1.2.0 Removed in version 1.5.0
Horribly named variable, no longer used
output = True
Used in lookup for a specific layout
within a workspace. The PinFile specifies the layout without a path, this is the relative location.
Also used in combination with default_layouts_path <conf_def_layout_path>, which isn't generally used.
layouts_folder = layouts
Used in lookup for a specific topology
within a workspace. The PinFile specifies the topology without a path, this is the relative location.
Also used in combination with default_topologies_path<conf_def_topo_path>, which isn't generally used.
topologies_folder = topologies
New in version 1.5.0
Used in combination with default_roles_path <conf_def_roles_path> for external provider roles
roles_folder = roles
Relative location where inventories will be written. Usually combined with the default_inventories_path, but could be relative tothe workspace.
_check_mode = False
inventories_folder = inventories
Relative location within the workspace where hooks data is stored
hooks_folder = hooks
Deprecated in version 1.5.0
Relative location of the resources destination path. Generally combined with the default_resource_path
resources_folder = resources
Deprecated in version 1.2.0
Relative location of the schemas within the LinchPin codebase
schemas_folder = schemas
Relative location of the Ansible playbooks and roles within the LinchPin codebase
playbooks_folder = provision
Deprecated in version 1.5.0
Used to locate default schemas, usually schema_v4 or schema_v3
default_schemas_path = {{ lp_path }}/defaults/%(schemas_folder)s
Deprecated in version 1.2.0
Default location for topologies in cases where topology
or topology_file
is not set.
default_topologies_path = {{ lp_path }}/defaults/%(topologies_folder)s
Deprecated in version 1.2.0
When inventories are processed, layouts are looked up here if layout_file
is not set
default_layouts_path = {{ lp_path }}/defaults/%(layouts_folder)s
Deprecated in version 1.2.0
When writing out inventories, this path is used if inventory_file
is not set
default_inventories_path = {{ lp_path }}/defaults/%(inventories_folder)s
Deprecated in version 1.2.0
When writing out resources files, this path is used if inventory_file
is not set
default_inventories_path = {{ lp_path }}/defaults/%(inventories_folder)s
When using an external provider, this path points back to some of the core roles needed in the provider's playbook.
default_roles_path = {{ lp_path }}/%(playbooks_folder)s/%(roles_folder)s
default_roles_path = {{ lp_path }}/%(playbooks_folder)s/%(roles_folder)s
Deprecated in v1.5.0
Full path to the location of the schema_v3.json
file, which is used to perform validation of the topology.
_check_mode = False
schema_v3 = %(default_schemas_path)s/schema_v3.json
Deprecated in v1.5.0
Full path to the location of the schema_v4.json
file, which is used to perform validation of the topology.
schema_v4 = %(default_schemas_path)s/schema_v4.json
If the --creds-path
option or $CREDS_PATH
environment variable are not set, use this location to look up credentials files defined in a topology.
default_credentials_path = %(default_config_path)s
New in version 1.5.0
The inventory_path is used to set the value of the resulting inventory file which is generated by LinchPin. This value is dynamically generated by default.
Note
This should not be confused with the inventory_file which is an input to the LinchPin ansible playbooks.
#inventory_path = {{ workspace }}/{{inventories_folder}}/happy.inventory
New in version 1.2.0
Used solely in the libvirt provider <prov_libvirt>. Could be used to set a default location for ssh keys that might be passed via a cloud-config setup.
default_ssh_key_path = ~/.ssh
Where to store the libvirt images for copying/booting instances. This can be adjusted to a user accessible location if permissions are an issue.
Note
Ensure the libvirt_user and libvirt_become options below are also adjusted according to proper permissions.
libvirt_image_path = /var/lib/libvirt/images/
What user to use to access the libvirt services.
Note
Specifying root means that linchpin will attempt to access the libvirt service as the root user. If the linchpin user is not root, sudo without password must be setup.
libvirt_user = root
When using root or any privileged user, this must be set to yes.
Note
If the linchpin user is not root, sudo without password must also be setup.
libvirt_become = yes