www.nico.schottelius.org/software/cdist/man/beta/cdist-reference.html
2019-03-30 19:37:24 +01:00

696 lines
No EOL
39 KiB
HTML

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>23. Reference &mdash; cdist 4.10.7 documentation</title>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="24. Best practice" href="cdist-best-practice.html" />
<link rel="prev" title="22. cdist integration / using cdist as library" href="cdist-integration.html" />
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="index.html" class="icon icon-home"> cdist
</a>
<div class="version">
4.10.7
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="cdist-intro.html">1. cdist - usable configuration management</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-why.html">2. Why should I use cdist?</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-os.html">3. Supported Operating Systems</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-install.html">4. How to install cdist</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-update.html">5. How to update cdist</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-support.html">6. Support</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-features.html">7. Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-quickstart.html">8. Quickstart</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-real-world.html">9. Dive into real world cdist</a></li>
<li class="toctree-l1"><a class="reference internal" href="man1/cdist.html">10. cdist(1)</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-bootstrap.html">11. Bootstrap</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-configuration.html">12. Configuration</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-manifest.html">13. Manifest</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-type.html">14. cdist type</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-types.html">15. cdist types</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-explorer.html">16. Explorer</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-messaging.html">17. Messaging</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-parallelization.html">18. Parallelization</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-inventory.html">19. Inventory</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-trigger.html">20. Trigger</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-preos.html">21. PreOS</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-integration.html">22. cdist integration / using cdist as library</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">23. Reference</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#explorers">23.1. Explorers</a></li>
<li class="toctree-l2"><a class="reference internal" href="#paths">23.2. Paths</a></li>
<li class="toctree-l2"><a class="reference internal" href="#types">23.3. Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="#objects">23.4. Objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="#environment-variables-for-reading">23.5. Environment variables (for reading)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#environment-variables-for-writing">23.6. Environment variables (for writing)</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="cdist-best-practice.html">24. Best practice</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-stages.html">25. Execution stages</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-cache.html">26. Local cache overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-saving-output-streams.html">27. Saving output streams</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-remote-exec-copy.html">28. Remote exec and copy commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-hacker.html">29. Hacking</a></li>
<li class="toctree-l1"><a class="reference internal" href="cdist-troubleshooting.html">30. Troubleshooting</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">cdist</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li>23. Reference</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/cdist-reference.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="reference">
<h1>23. Reference<a class="headerlink" href="#reference" title="Permalink to this headline"></a></h1>
<p>Variable, path and type reference for cdist</p>
<div class="section" id="explorers">
<h2>23.1. Explorers<a class="headerlink" href="#explorers" title="Permalink to this headline"></a></h2>
<p>The following global explorers are available:</p>
<ul class="simple">
<li>cpu_cores</li>
<li>cpu_sockets</li>
<li>disks</li>
<li>hostname</li>
<li>init</li>
<li>interfaces</li>
<li>is-freebsd-jail</li>
<li>kernel_name</li>
<li>lsb_codename</li>
<li>lsb_description</li>
<li>lsb_id</li>
<li>lsb_release</li>
<li>machine</li>
<li>machine_type</li>
<li>memory</li>
<li>os</li>
<li>os_release</li>
<li>os_version</li>
<li>runlevel</li>
</ul>
</div>
<div class="section" id="paths">
<h2>23.2. Paths<a class="headerlink" href="#paths" title="Permalink to this headline"></a></h2>
<dl class="docutils">
<dt>$HOME/.cdist</dt>
<dd>The standard cdist configuration directory relative to your home directory.
This is usually the place you want to store your site specific configuration.</dd>
<dt>cdist/conf/</dt>
<dd>The distribution configuration directory.
This contains types and explorers to be used.</dd>
<dt>cdist/inventory/</dt>
<dd>The distribution inventory directory.
This path is relative to cdist installation directory.</dd>
<dt>cdist/preos/</dt>
<dd>The distribution PreOS plugins directory.</dd>
<dt>confdir</dt>
<dd>Cdist will use all available configuration directories and create
a temporary confdir containing links to the real configuration directories.
This way it is possible to merge configuration directories.
By default it consists of everything in $HOME/.cdist and cdist/conf/.
For more details see cdist(1).</dd>
<dt>confdir/files/</dt>
<dd>Cdist does not care about this directory besides providing access to it.
It is thought to be a general file storage area.</dd>
<dt>confdir/manifest/init</dt>
<dd>This is the central entry point.
It is an executable (+x bit set) shell script that can use
values from the explorers to decide which configuration to create
for the specified target host.
Its intent is to used to define mapping from configurations to hosts.</dd>
<dt>confdir/manifest/*</dt>
<dd>All other files in this directory are not directly used by cdist, but you
can separate configuration mappings, if you have a lot of code in the
conf/manifest/init file. This may also be helpful to have different admins
maintain different groups of hosts.</dd>
<dt>confdir/explorer/&lt;name&gt;</dt>
<dd>Contains explorers to be run on the target hosts, see <a class="reference external" href="cdist-explorer.html">cdist explorer</a>.</dd>
<dt>confdir/type/</dt>
<dd>Contains all available types, which are used to provide
some kind of functionality. See <a class="reference external" href="cdist-type.html">cdist type</a>.</dd>
<dt>confdir/type/&lt;name&gt;/</dt>
<dd>Home of the type &lt;name&gt;.
This directory is referenced by the variable __type (see below).</dd>
<dt>confdir/type/&lt;name&gt;/man.rst</dt>
<dd>Manpage in reStructuredText format (required for inclusion into upstream).</dd>
<dt>confdir/type/&lt;name&gt;/manifest</dt>
<dd>Used to generate additional objects from a type.</dd>
<dt>confdir/type/&lt;name&gt;/gencode-local</dt>
<dd>Used to generate code to be executed on the source host.</dd>
<dt>confdir/type/&lt;name&gt;/gencode-remote</dt>
<dd>Used to generate code to be executed on the target host.</dd>
<dt>confdir/type/&lt;name&gt;/parameter/required</dt>
<dd>Parameters required by type, n separated list.</dd>
<dt>confdir/type/&lt;name&gt;/parameter/optional</dt>
<dd>Parameters optionally accepted by type, n separated list.</dd>
<dt>confdir/type/&lt;name&gt;/parameter/default/*</dt>
<dd>Default values for optional parameters.
Assuming an optional parameter name of 'foo', it's default value would
be read from the file confdir/type/&lt;name&gt;/parameter/default/foo.</dd>
<dt>confdir/type/&lt;name&gt;/parameter/boolean</dt>
<dd>Boolean parameters accepted by type, n separated list.</dd>
<dt>confdir/type/&lt;name&gt;/explorer</dt>
<dd>Location of the type specific explorers.
This directory is referenced by the variable __type_explorer (see below).
See <a class="reference external" href="cdist-explorer.html">cdist explorer</a>.</dd>
<dt>confdir/type/&lt;name&gt;/files</dt>
<dd>This directory is reserved for user data and will not be used
by cdist at any time. It can be used for storing supplementary
files (like scripts to act as a template or configuration files).</dd>
<dt>out/</dt>
<dd>This directory contains output of cdist and is usually located
in a temporary directory and thus will be removed after the run.
This directory is referenced by the variable __global (see below).</dd>
<dt>out/explorer</dt>
<dd>Output of general explorers.</dd>
<dt>out/object</dt>
<dd>Objects created for the host.</dd>
<dt>out/object/&lt;object&gt;</dt>
<dd>Contains all object specific information.
This directory is referenced by the variable __object (see below).</dd>
<dt>out/object/&lt;object&gt;/explorers</dt>
<dd>Output of type specific explorers, per object.</dd>
</dl>
</div>
<div class="section" id="types">
<h2>23.3. Types<a class="headerlink" href="#types" title="Permalink to this headline"></a></h2>
<p>The following types are available:</p>
<ul class="simple">
<li>__acl (<a class="reference external" href="man7/cdist-type__acl.html">cdist-type__acl(7)</a>)</li>
<li>__apt_default_release (<a class="reference external" href="man7/cdist-type__apt_default_release.html">cdist-type__apt_default_release(7)</a>)</li>
<li>__apt_key (<a class="reference external" href="man7/cdist-type__apt_key.html">cdist-type__apt_key(7)</a>)</li>
<li>__apt_key_uri (<a class="reference external" href="man7/cdist-type__apt_key_uri.html">cdist-type__apt_key_uri(7)</a>)</li>
<li>__apt_mark (<a class="reference external" href="man7/cdist-type__apt_mark.html">cdist-type__apt_mark(7)</a>)</li>
<li>__apt_norecommends (<a class="reference external" href="man7/cdist-type__apt_norecommends.html">cdist-type__apt_norecommends(7)</a>)</li>
<li>__apt_ppa (<a class="reference external" href="man7/cdist-type__apt_ppa.html">cdist-type__apt_ppa(7)</a>)</li>
<li>__apt_source (<a class="reference external" href="man7/cdist-type__apt_source.html">cdist-type__apt_source(7)</a>)</li>
<li>__apt_update_index (<a class="reference external" href="man7/cdist-type__apt_update_index.html">cdist-type__apt_update_index(7)</a>)</li>
<li>__block (<a class="reference external" href="man7/cdist-type__block.html">cdist-type__block(7)</a>)</li>
<li>__ccollect_source (<a class="reference external" href="man7/cdist-type__ccollect_source.html">cdist-type__ccollect_source(7)</a>)</li>
<li>__cdist (<a class="reference external" href="man7/cdist-type__cdist.html">cdist-type__cdist(7)</a>)</li>
<li>__cdist_preos_trigger (<a class="reference external" href="man7/cdist-type__cdist_preos_trigger.html">cdist-type__cdist_preos_trigger(7)</a>)</li>
<li>__cdistmarker (<a class="reference external" href="man7/cdist-type__cdistmarker.html">cdist-type__cdistmarker(7)</a>)</li>
<li>__chroot_mount (<a class="reference external" href="man7/cdist-type__chroot_mount.html">cdist-type__chroot_mount(7)</a>)</li>
<li>__chroot_umount (<a class="reference external" href="man7/cdist-type__chroot_umount.html">cdist-type__chroot_umount(7)</a>)</li>
<li>__clean_path (<a class="reference external" href="man7/cdist-type__clean_path.html">cdist-type__clean_path(7)</a>)</li>
<li>__config_file (<a class="reference external" href="man7/cdist-type__config_file.html">cdist-type__config_file(7)</a>)</li>
<li>__consul (<a class="reference external" href="man7/cdist-type__consul.html">cdist-type__consul(7)</a>)</li>
<li>__consul_agent (<a class="reference external" href="man7/cdist-type__consul_agent.html">cdist-type__consul_agent(7)</a>)</li>
<li>__consul_check (<a class="reference external" href="man7/cdist-type__consul_check.html">cdist-type__consul_check(7)</a>)</li>
<li>__consul_reload (<a class="reference external" href="man7/cdist-type__consul_reload.html">cdist-type__consul_reload(7)</a>)</li>
<li>__consul_service (<a class="reference external" href="man7/cdist-type__consul_service.html">cdist-type__consul_service(7)</a>)</li>
<li>__consul_template (<a class="reference external" href="man7/cdist-type__consul_template.html">cdist-type__consul_template(7)</a>)</li>
<li>__consul_template_template (<a class="reference external" href="man7/cdist-type__consul_template_template.html">cdist-type__consul_template_template(7)</a>)</li>
<li>__consul_watch_checks (<a class="reference external" href="man7/cdist-type__consul_watch_checks.html">cdist-type__consul_watch_checks(7)</a>)</li>
<li>__consul_watch_event (<a class="reference external" href="man7/cdist-type__consul_watch_event.html">cdist-type__consul_watch_event(7)</a>)</li>
<li>__consul_watch_key (<a class="reference external" href="man7/cdist-type__consul_watch_key.html">cdist-type__consul_watch_key(7)</a>)</li>
<li>__consul_watch_keyprefix (<a class="reference external" href="man7/cdist-type__consul_watch_keyprefix.html">cdist-type__consul_watch_keyprefix(7)</a>)</li>
<li>__consul_watch_nodes (<a class="reference external" href="man7/cdist-type__consul_watch_nodes.html">cdist-type__consul_watch_nodes(7)</a>)</li>
<li>__consul_watch_service (<a class="reference external" href="man7/cdist-type__consul_watch_service.html">cdist-type__consul_watch_service(7)</a>)</li>
<li>__consul_watch_services (<a class="reference external" href="man7/cdist-type__consul_watch_services.html">cdist-type__consul_watch_services(7)</a>)</li>
<li>__cron (<a class="reference external" href="man7/cdist-type__cron.html">cdist-type__cron(7)</a>)</li>
<li>__daemontools (<a class="reference external" href="man7/cdist-type__daemontools.html">cdist-type__daemontools(7)</a>)</li>
<li>__daemontools_service (<a class="reference external" href="man7/cdist-type__daemontools_service.html">cdist-type__daemontools_service(7)</a>)</li>
<li>__debconf_set_selections (<a class="reference external" href="man7/cdist-type__debconf_set_selections.html">cdist-type__debconf_set_selections(7)</a>)</li>
<li>__directory (<a class="reference external" href="man7/cdist-type__directory.html">cdist-type__directory(7)</a>)</li>
<li>__docker (<a class="reference external" href="man7/cdist-type__docker.html">cdist-type__docker(7)</a>)</li>
<li>__docker_compose (<a class="reference external" href="man7/cdist-type__docker_compose.html">cdist-type__docker_compose(7)</a>)</li>
<li>__docker_config (<a class="reference external" href="man7/cdist-type__docker_config.html">cdist-type__docker_config(7)</a>)</li>
<li>__docker_secret (<a class="reference external" href="man7/cdist-type__docker_secret.html">cdist-type__docker_secret(7)</a>)</li>
<li>__docker_stack (<a class="reference external" href="man7/cdist-type__docker_stack.html">cdist-type__docker_stack(7)</a>)</li>
<li>__docker_swarm (<a class="reference external" href="man7/cdist-type__docker_swarm.html">cdist-type__docker_swarm(7)</a>)</li>
<li>__dog_vdi (<a class="reference external" href="man7/cdist-type__dog_vdi.html">cdist-type__dog_vdi(7)</a>)</li>
<li>__dot_file (<a class="reference external" href="man7/cdist-type__dot_file.html">cdist-type__dot_file(7)</a>)</li>
<li>__file (<a class="reference external" href="man7/cdist-type__file.html">cdist-type__file(7)</a>)</li>
<li>__filesystem (<a class="reference external" href="man7/cdist-type__filesystem.html">cdist-type__filesystem(7)</a>)</li>
<li>__firewalld_rule (<a class="reference external" href="man7/cdist-type__firewalld_rule.html">cdist-type__firewalld_rule(7)</a>)</li>
<li>__firewalld_start (<a class="reference external" href="man7/cdist-type__firewalld_start.html">cdist-type__firewalld_start(7)</a>)</li>
<li>__git (<a class="reference external" href="man7/cdist-type__git.html">cdist-type__git(7)</a>)</li>
<li>__go_get (<a class="reference external" href="man7/cdist-type__go_get.html">cdist-type__go_get(7)</a>)</li>
<li>__golang_from_vendor (<a class="reference external" href="man7/cdist-type__golang_from_vendor.html">cdist-type__golang_from_vendor(7)</a>)</li>
<li>__grafana_dashboard (<a class="reference external" href="man7/cdist-type__grafana_dashboard.html">cdist-type__grafana_dashboard(7)</a>)</li>
<li>__group (<a class="reference external" href="man7/cdist-type__group.html">cdist-type__group(7)</a>)</li>
<li>__hostname (<a class="reference external" href="man7/cdist-type__hostname.html">cdist-type__hostname(7)</a>)</li>
<li>__hosts (<a class="reference external" href="man7/cdist-type__hosts.html">cdist-type__hosts(7)</a>)</li>
<li>__install_bootloader_grub (<a class="reference external" href="man7/cdist-type__install_bootloader_grub.html">cdist-type__install_bootloader_grub(7)</a>)</li>
<li>__install_chroot_mount (<a class="reference external" href="man7/cdist-type__install_chroot_mount.html">cdist-type__install_chroot_mount(7)</a>)</li>
<li>__install_chroot_umount (<a class="reference external" href="man7/cdist-type__install_chroot_umount.html">cdist-type__install_chroot_umount(7)</a>)</li>
<li>__install_config (<a class="reference external" href="man7/cdist-type__install_config.html">cdist-type__install_config(7)</a>)</li>
<li>__install_coreos (<a class="reference external" href="man7/cdist-type__install_coreos.html">cdist-type__install_coreos(7)</a>)</li>
<li>__install_directory (<a class="reference external" href="man7/cdist-type__install_directory.html">cdist-type__install_directory(7)</a>)</li>
<li>__install_file (<a class="reference external" href="man7/cdist-type__install_file.html">cdist-type__install_file(7)</a>)</li>
<li>__install_fstab (<a class="reference external" href="man7/cdist-type__install_fstab.html">cdist-type__install_fstab(7)</a>)</li>
<li>__install_generate_fstab (<a class="reference external" href="man7/cdist-type__install_generate_fstab.html">cdist-type__install_generate_fstab(7)</a>)</li>
<li>__install_mkfs (<a class="reference external" href="man7/cdist-type__install_mkfs.html">cdist-type__install_mkfs(7)</a>)</li>
<li>__install_mount (<a class="reference external" href="man7/cdist-type__install_mount.html">cdist-type__install_mount(7)</a>)</li>
<li>__install_partition_msdos (<a class="reference external" href="man7/cdist-type__install_partition_msdos.html">cdist-type__install_partition_msdos(7)</a>)</li>
<li>__install_partition_msdos_apply (<a class="reference external" href="man7/cdist-type__install_partition_msdos_apply.html">cdist-type__install_partition_msdos_apply(7)</a>)</li>
<li>__install_reboot (<a class="reference external" href="man7/cdist-type__install_reboot.html">cdist-type__install_reboot(7)</a>)</li>
<li>__install_reset_disk (<a class="reference external" href="man7/cdist-type__install_reset_disk.html">cdist-type__install_reset_disk(7)</a>)</li>
<li>__install_stage (<a class="reference external" href="man7/cdist-type__install_stage.html">cdist-type__install_stage(7)</a>)</li>
<li>__install_umount (<a class="reference external" href="man7/cdist-type__install_umount.html">cdist-type__install_umount(7)</a>)</li>
<li>__iptables_apply (<a class="reference external" href="man7/cdist-type__iptables_apply.html">cdist-type__iptables_apply(7)</a>)</li>
<li>__iptables_rule (<a class="reference external" href="man7/cdist-type__iptables_rule.html">cdist-type__iptables_rule(7)</a>)</li>
<li>__issue (<a class="reference external" href="man7/cdist-type__issue.html">cdist-type__issue(7)</a>)</li>
<li>__jail (<a class="reference external" href="man7/cdist-type__jail.html">cdist-type__jail(7)</a>)</li>
<li>__jail_freebsd10 (<a class="reference external" href="man7/cdist-type__jail_freebsd10.html">cdist-type__jail_freebsd10(7)</a>)</li>
<li>__jail_freebsd9 (<a class="reference external" href="man7/cdist-type__jail_freebsd9.html">cdist-type__jail_freebsd9(7)</a>)</li>
<li>__key_value (<a class="reference external" href="man7/cdist-type__key_value.html">cdist-type__key_value(7)</a>)</li>
<li>__keyboard (<a class="reference external" href="man7/cdist-type__keyboard.html">cdist-type__keyboard(7)</a>)</li>
<li>__letsencrypt_cert (<a class="reference external" href="man7/cdist-type__letsencrypt_cert.html">cdist-type__letsencrypt_cert(7)</a>)</li>
<li>__line (<a class="reference external" href="man7/cdist-type__line.html">cdist-type__line(7)</a>)</li>
<li>__link (<a class="reference external" href="man7/cdist-type__link.html">cdist-type__link(7)</a>)</li>
<li>__locale (<a class="reference external" href="man7/cdist-type__locale.html">cdist-type__locale(7)</a>)</li>
<li>__locale_system (<a class="reference external" href="man7/cdist-type__locale_system.html">cdist-type__locale_system(7)</a>)</li>
<li>__motd (<a class="reference external" href="man7/cdist-type__motd.html">cdist-type__motd(7)</a>)</li>
<li>__mount (<a class="reference external" href="man7/cdist-type__mount.html">cdist-type__mount(7)</a>)</li>
<li>__mysql_database (<a class="reference external" href="man7/cdist-type__mysql_database.html">cdist-type__mysql_database(7)</a>)</li>
<li>__package (<a class="reference external" href="man7/cdist-type__package.html">cdist-type__package(7)</a>)</li>
<li>__package_apt (<a class="reference external" href="man7/cdist-type__package_apt.html">cdist-type__package_apt(7)</a>)</li>
<li>__package_dpkg (<a class="reference external" href="man7/cdist-type__package_dpkg.html">cdist-type__package_dpkg(7)</a>)</li>
<li>__package_emerge (<a class="reference external" href="man7/cdist-type__package_emerge.html">cdist-type__package_emerge(7)</a>)</li>
<li>__package_emerge_dependencies (<a class="reference external" href="man7/cdist-type__package_emerge_dependencies.html">cdist-type__package_emerge_dependencies(7)</a>)</li>
<li>__package_luarocks (<a class="reference external" href="man7/cdist-type__package_luarocks.html">cdist-type__package_luarocks(7)</a>)</li>
<li>__package_opkg (<a class="reference external" href="man7/cdist-type__package_opkg.html">cdist-type__package_opkg(7)</a>)</li>
<li>__package_pacman (<a class="reference external" href="man7/cdist-type__package_pacman.html">cdist-type__package_pacman(7)</a>)</li>
<li>__package_pip (<a class="reference external" href="man7/cdist-type__package_pip.html">cdist-type__package_pip(7)</a>)</li>
<li>__package_pkg_freebsd (<a class="reference external" href="man7/cdist-type__package_pkg_freebsd.html">cdist-type__package_pkg_freebsd(7)</a>)</li>
<li>__package_pkg_openbsd (<a class="reference external" href="man7/cdist-type__package_pkg_openbsd.html">cdist-type__package_pkg_openbsd(7)</a>)</li>
<li>__package_pkgng_freebsd (<a class="reference external" href="man7/cdist-type__package_pkgng_freebsd.html">cdist-type__package_pkgng_freebsd(7)</a>)</li>
<li>__package_rubygem (<a class="reference external" href="man7/cdist-type__package_rubygem.html">cdist-type__package_rubygem(7)</a>)</li>
<li>__package_update_index (<a class="reference external" href="man7/cdist-type__package_update_index.html">cdist-type__package_update_index(7)</a>)</li>
<li>__package_upgrade_all (<a class="reference external" href="man7/cdist-type__package_upgrade_all.html">cdist-type__package_upgrade_all(7)</a>)</li>
<li>__package_yum (<a class="reference external" href="man7/cdist-type__package_yum.html">cdist-type__package_yum(7)</a>)</li>
<li>__package_zypper (<a class="reference external" href="man7/cdist-type__package_zypper.html">cdist-type__package_zypper(7)</a>)</li>
<li>__pacman_conf (<a class="reference external" href="man7/cdist-type__pacman_conf.html">cdist-type__pacman_conf(7)</a>)</li>
<li>__pacman_conf_integrate (<a class="reference external" href="man7/cdist-type__pacman_conf_integrate.html">cdist-type__pacman_conf_integrate(7)</a>)</li>
<li>__pf_apply (<a class="reference external" href="man7/cdist-type__pf_apply.html">cdist-type__pf_apply(7)</a>)</li>
<li>__pf_ruleset (<a class="reference external" href="man7/cdist-type__pf_ruleset.html">cdist-type__pf_ruleset(7)</a>)</li>
<li>__ping (<a class="reference external" href="man7/cdist-type__ping.html">cdist-type__ping(7)</a>)</li>
<li>__postfix (<a class="reference external" href="man7/cdist-type__postfix.html">cdist-type__postfix(7)</a>)</li>
<li>__postfix_master (<a class="reference external" href="man7/cdist-type__postfix_master.html">cdist-type__postfix_master(7)</a>)</li>
<li>__postfix_postconf (<a class="reference external" href="man7/cdist-type__postfix_postconf.html">cdist-type__postfix_postconf(7)</a>)</li>
<li>__postfix_postmap (<a class="reference external" href="man7/cdist-type__postfix_postmap.html">cdist-type__postfix_postmap(7)</a>)</li>
<li>__postfix_reload (<a class="reference external" href="man7/cdist-type__postfix_reload.html">cdist-type__postfix_reload(7)</a>)</li>
<li>__postgres_database (<a class="reference external" href="man7/cdist-type__postgres_database.html">cdist-type__postgres_database(7)</a>)</li>
<li>__postgres_extension (<a class="reference external" href="man7/cdist-type__postgres_extension.html">cdist-type__postgres_extension(7)</a>)</li>
<li>__postgres_role (<a class="reference external" href="man7/cdist-type__postgres_role.html">cdist-type__postgres_role(7)</a>)</li>
<li>__process (<a class="reference external" href="man7/cdist-type__process.html">cdist-type__process(7)</a>)</li>
<li>__prometheus_alertmanager (<a class="reference external" href="man7/cdist-type__prometheus_alertmanager.html">cdist-type__prometheus_alertmanager(7)</a>)</li>
<li>__prometheus_exporter (<a class="reference external" href="man7/cdist-type__prometheus_exporter.html">cdist-type__prometheus_exporter(7)</a>)</li>
<li>__prometheus_server (<a class="reference external" href="man7/cdist-type__prometheus_server.html">cdist-type__prometheus_server(7)</a>)</li>
<li>__pyvenv (<a class="reference external" href="man7/cdist-type__pyvenv.html">cdist-type__pyvenv(7)</a>)</li>
<li>__qemu_img (<a class="reference external" href="man7/cdist-type__qemu_img.html">cdist-type__qemu_img(7)</a>)</li>
<li>__rbenv (<a class="reference external" href="man7/cdist-type__rbenv.html">cdist-type__rbenv(7)</a>)</li>
<li>__rsync (<a class="reference external" href="man7/cdist-type__rsync.html">cdist-type__rsync(7)</a>)</li>
<li>__rvm (<a class="reference external" href="man7/cdist-type__rvm.html">cdist-type__rvm(7)</a>)</li>
<li>__rvm_gem (<a class="reference external" href="man7/cdist-type__rvm_gem.html">cdist-type__rvm_gem(7)</a>)</li>
<li>__rvm_gemset (<a class="reference external" href="man7/cdist-type__rvm_gemset.html">cdist-type__rvm_gemset(7)</a>)</li>
<li>__rvm_ruby (<a class="reference external" href="man7/cdist-type__rvm_ruby.html">cdist-type__rvm_ruby(7)</a>)</li>
<li>__ssh_authorized_key (<a class="reference external" href="man7/cdist-type__ssh_authorized_key.html">cdist-type__ssh_authorized_key(7)</a>)</li>
<li>__ssh_authorized_keys (<a class="reference external" href="man7/cdist-type__ssh_authorized_keys.html">cdist-type__ssh_authorized_keys(7)</a>)</li>
<li>__ssh_dot_ssh (<a class="reference external" href="man7/cdist-type__ssh_dot_ssh.html">cdist-type__ssh_dot_ssh(7)</a>)</li>
<li>__staged_file (<a class="reference external" href="man7/cdist-type__staged_file.html">cdist-type__staged_file(7)</a>)</li>
<li>__start_on_boot (<a class="reference external" href="man7/cdist-type__start_on_boot.html">cdist-type__start_on_boot(7)</a>)</li>
<li>__sysctl (<a class="reference external" href="man7/cdist-type__sysctl.html">cdist-type__sysctl(7)</a>)</li>
<li>__systemd_unit (<a class="reference external" href="man7/cdist-type__systemd_unit.html">cdist-type__systemd_unit(7)</a>)</li>
<li>__timezone (<a class="reference external" href="man7/cdist-type__timezone.html">cdist-type__timezone(7)</a>)</li>
<li>__update_alternatives (<a class="reference external" href="man7/cdist-type__update_alternatives.html">cdist-type__update_alternatives(7)</a>)</li>
<li>__user (<a class="reference external" href="man7/cdist-type__user.html">cdist-type__user(7)</a>)</li>
<li>__user_groups (<a class="reference external" href="man7/cdist-type__user_groups.html">cdist-type__user_groups(7)</a>)</li>
<li>__yum_repo (<a class="reference external" href="man7/cdist-type__yum_repo.html">cdist-type__yum_repo(7)</a>)</li>
<li>__zypper_repo (<a class="reference external" href="man7/cdist-type__zypper_repo.html">cdist-type__zypper_repo(7)</a>)</li>
<li>__zypper_service (<a class="reference external" href="man7/cdist-type__zypper_service.html">cdist-type__zypper_service(7)</a>)</li>
</ul>
</div>
<div class="section" id="objects">
<h2>23.4. Objects<a class="headerlink" href="#objects" title="Permalink to this headline"></a></h2>
<p>For object to object communication and tests, the following paths are
usable within a object directory:</p>
<dl class="docutils">
<dt>files</dt>
<dd>This directory is reserved for user data and will not be used
by cdist at any time. It can be used freely by the type
(for instance to store template results).</dd>
<dt>changed</dt>
<dd>This empty file exists in an object directory, if the object has
code to be executed (either remote or local).</dd>
<dt>stdin</dt>
<dd>This file exists and contains data, if data was provided on stdin
when the type was called.</dd>
</dl>
</div>
<div class="section" id="environment-variables-for-reading">
<h2>23.5. Environment variables (for reading)<a class="headerlink" href="#environment-variables-for-reading" title="Permalink to this headline"></a></h2>
<p>The following environment variables are exported by cdist:</p>
<dl class="docutils">
<dt>__cdist_log_level, __cdist_log_level_name</dt>
<dd><p class="first">cdist log level value and cdist log level name. One of:</p>
<table border="1" class="docutils">
<colgroup>
<col width="48%" />
<col width="52%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Log level name</th>
<th class="head">Log level value</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>OFF</td>
<td>60</td>
</tr>
<tr class="row-odd"><td>ERROR</td>
<td>40</td>
</tr>
<tr class="row-even"><td>WARNING</td>
<td>30</td>
</tr>
<tr class="row-odd"><td>INFO</td>
<td>20</td>
</tr>
<tr class="row-even"><td>VERBOSE</td>
<td>15</td>
</tr>
<tr class="row-odd"><td>DEBUG</td>
<td>10</td>
</tr>
<tr class="row-even"><td>TRACE</td>
<td>5</td>
</tr>
</tbody>
</table>
<p class="last">Available for: initial manifest, explorer, type manifest, type explorer,
type gencode.</p>
</dd>
<dt>__explorer</dt>
<dd>Directory that contains all global explorers.
Available for: initial manifest, explorer, type explorer, shell.</dd>
<dt>__files</dt>
<dd>Directory that contains content from the &quot;files&quot; subdirectories
from the configuration directories.
Available for: initial manifest, type manifest, type gencode, shell.</dd>
<dt>__manifest</dt>
<dd>Directory that contains the initial manifest.
Available for: initial manifest, type manifest, shell.</dd>
<dt>__global</dt>
<dd>Directory that contains generic output like explorer.
Available for: initial manifest, type manifest, type gencode, shell.</dd>
<dt>__messages_in</dt>
<dd>File to read messages from.
Available for: initial manifest, type manifest, type gencode.</dd>
<dt>__messages_out</dt>
<dd>File to write messages.
Available for: initial manifest, type manifest, type gencode.</dd>
<dt>__object</dt>
<dd>Directory that contains the current object.
Available for: type manifest, type explorer, type gencode and code scripts.</dd>
<dt>__object_id</dt>
<dd>The type unique object id.
Available for: type manifest, type explorer, type gencode and code scripts.
Note: The leading and the trailing &quot;/&quot; will always be stripped (caused by
the filesystem database and ensured by the core).
Note: Double slashes (&quot;//&quot;) will not be fixed and result in an error.</dd>
<dt>__object_name</dt>
<dd>The full qualified name of the current object.
Available for: type manifest, type explorer, type gencode.</dd>
<dt>__target_host</dt>
<dd>The host we are deploying to. This is primary variable. It's content is
literally the one user passed in.
Available for: explorer, initial manifest, type explorer, type manifest, type gencode, shell.</dd>
<dt>__target_hostname</dt>
<dd>The hostname of host we are deploying to. This variable is derived from
<strong>__target_host</strong> (using <strong>socket.getaddrinfo(__target_host)</strong> and then
<strong>socket.gethostbyaddr()</strong>).
Available for: explorer, initial manifest, type explorer, type manifest, type gencode, shell.</dd>
<dt>__target_fqdn</dt>
<dd>The fully qualified domain name of the host we are deploying to.
This variable is derived from <strong>__target_host</strong>
(using <strong>socket.getfqdn()</strong>).
Available for: explorer, initial manifest, type explorer, type manifest, type gencode, shell.</dd>
<dt>__target_host_tags</dt>
<dd>Comma separated list of target host tags.
Available for: explorer, initial manifest, type explorer, type manifest, type gencode, shell.</dd>
<dt>__type</dt>
<dd>Path to the current type.
Available for: type manifest, type gencode.</dd>
<dt>__type_explorer</dt>
<dd>Directory that contains the type explorers.
Available for: type explorer.</dd>
</dl>
</div>
<div class="section" id="environment-variables-for-writing">
<h2>23.6. Environment variables (for writing)<a class="headerlink" href="#environment-variables-for-writing" title="Permalink to this headline"></a></h2>
<p>The following environment variables influence the behaviour of cdist:</p>
<dl class="docutils">
<dt>require</dt>
<dd>Setup dependencies between objects (see <a class="reference external" href="cdist-manifest.html">cdist manifest</a>).</dd>
<dt>__cdist_log_level</dt>
<dd><p class="first">cdist log level value. One of:</p>
<table border="1" class="docutils">
<colgroup>
<col width="48%" />
<col width="52%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Log level</th>
<th class="head">Log level value</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>OFF</td>
<td>60</td>
</tr>
<tr class="row-odd"><td>ERROR</td>
<td>40</td>
</tr>
<tr class="row-even"><td>WARNING</td>
<td>30</td>
</tr>
<tr class="row-odd"><td>INFO</td>
<td>20</td>
</tr>
<tr class="row-even"><td>VERBOSE</td>
<td>15</td>
</tr>
<tr class="row-odd"><td>DEBUG</td>
<td>10</td>
</tr>
<tr class="row-even"><td>TRACE</td>
<td>5</td>
</tr>
</tbody>
</table>
<p class="last">If set cdist will set this log level in
accordance with configuration rules. If cdist invokation is used
in types then nested cdist will honor this specified log level if
not specified otherwise while invoking it.</p>
</dd>
<dt>CDIST_PATH</dt>
<dd>Colon delimited list of config directories.</dd>
<dt>CDIST_LOCAL_SHELL</dt>
<dd>Use this shell locally instead of /bin/sh to execute scripts.</dd>
<dt>CDIST_REMOTE_SHELL</dt>
<dd>Use this shell remotely instead of /bin/sh to execute scripts.</dd>
<dt>CDIST_OVERRIDE</dt>
<dd>Allow overwriting type parameters (see <a class="reference external" href="cdist-manifest.html">cdist manifest</a>).</dd>
<dt>CDIST_ORDER_DEPENDENCY</dt>
<dd>Create dependencies based on the execution order (see <a class="reference external" href="cdist-manifest.html">cdist manifest</a>).</dd>
<dt>CDIST_REMOTE_EXEC</dt>
<dd>Use this command for remote execution (should behave like ssh).</dd>
<dt>CDIST_REMOTE_COPY</dt>
<dd>Use this command for remote copy (should behave like scp).</dd>
<dt>CDIST_INVENTORY_DIR</dt>
<dd>Use this directory as inventory directory.</dd>
<dt>CDIST_BETA</dt>
<dd>Enable beta functionalities.</dd>
<dt>CDIST_CACHE_PATH_PATTERN</dt>
<dd>Custom cache path pattern.</dd>
</dl>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="cdist-best-practice.html" class="btn btn-neutral float-right" title="24. Best practice" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="cdist-integration.html" class="btn btn-neutral" title="22. cdist integration / using cdist as library" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>