cdist-reference(7)


Table of Contents

1. NAME
2. EXPLORERS
3. PATHS
4. TYPES
5. OBJECTS
6. ENVIRONMENT VARIABLES
7. SEE ALSO
8. COPYING

1. NAME

cdist-reference - Variable, path and type reference for cdist

2. EXPLORERS

The following global explorers are available:

  • hostname
  • interfaces
  • lsb_codename
  • lsb_description
  • lsb_id
  • lsb_release
  • machine
  • os
  • os_version
  • runlevel

3. PATHS

If not specified otherwise, all paths are relative to the checkout directory.

conf/
Contains the (static) configuration like manifests, types and explorers.
conf/manifest/init
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.
conf/manifest/*
All other files in this directory are not directly used by cdist, but you can seperate 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.
conf/explorer/<name>
Contains explorers to be run on the target hosts, see cdist-explorer(7).
conf/type/
Contains all available types, which are used to provide some kind of functionality. See cdist-type(7).
conf/type/<name>/

Home of the type <name>.

This directory is referenced by the variable __type (see below).
conf/type/<name>/man.text
Manpage in Asciidoc format (required for inclusion into upstream)
conf/type/<name>/manifest
Used to generate additional objects from a type.
conf/type/<name>/gencode-local
Used to generate code to be executed on the source host
conf/type/<name>/gencode-remote
Used to generate code to be executed on the target host
conf/type/<name>/parameter/required
Parameters required by type, \n seperated list.
conf/type/<name>/parameter/optional
Parameters optionally accepted by type, \n seperated list.
conf/type/<name>/parameter/boolean
Boolean parameters accepted by type, \n seperated list.
conf/type/<name>/explorer
Location of the type specific explorers. This directory is referenced by the variable __type_explorer (see below). See cdist-explorer(7).
out/
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).
out/explorer
Output of general explorers.
out/object
Objects created for the host.
out/object/<object>
Contains all object specific information. This directory is referenced by the variable __object (see below).
out/object/<object>/explorers
Output of type specific explorers, per object.

4. TYPES

The following types are available:

  • __apt_ppa (cdist-type__apt_ppa(7))
  • __apt_update_index (cdist-type__apt_update_index(7))
  • __autofs_map (cdist-type__autofs_map(7))
  • __autofs_master (cdist-type__autofs_master(7))
  • __cdistmarker (cdist-type__cdistmarker(7))
  • __cron (cdist-type__cron(7))
  • __debconf_set_selections (cdist-type__debconf_set_selections(7))
  • __directory (cdist-type__directory(7))
  • __file (cdist-type__file(7))
  • __group (cdist-type__group(7))
  • __issue (cdist-type__issue(7))
  • __jail (cdist-type__jail(7))
  • __key_value (cdist-type__key_value(7))
  • __line (cdist-type__line(7))
  • __link (cdist-type__link(7))
  • __mkfs (cdist-type__mkfs(7))
  • __motd (cdist-type__motd(7))
  • __mysql_database (cdist-type__mysql_database(7))
  • __package_apt (cdist-type__package_apt(7))
  • __package_luarocks (cdist-type__package_luarocks(7))
  • __package_opkg (cdist-type__package_opkg(7))
  • __package_pacman (cdist-type__package_pacman(7))
  • __package_pip (cdist-type__package_pip(7))
  • __package_pkg_freebsd (cdist-type__package_pkg_freebsd(7))
  • __package_pkg_openbsd (cdist-type__package_pkg_openbsd(7))
  • __package_rubygem (cdist-type__package_rubygem(7))
  • __package (cdist-type__package(7))
  • __package_yum (cdist-type__package_yum(7))
  • __package_zypper (cdist-type__package_zypper(7))
  • __partition_msdos_apply (cdist-type__partition_msdos_apply(7))
  • __partition_msdos (cdist-type__partition_msdos(7))
  • __pf_apply (cdist-type__pf_apply(7))
  • __pf_ruleset (cdist-type__pf_ruleset(7))
  • __postgres_database (cdist-type__postgres_database(7))
  • __postgres_role (cdist-type__postgres_role(7))
  • __process (cdist-type__process(7))
  • __qemu_img (cdist-type__qemu_img(7))
  • __rvm_gemset (cdist-type__rvm_gemset(7))
  • __rvm_gem (cdist-type__rvm_gem(7))
  • __rvm_ruby (cdist-type__rvm_ruby(7))
  • __rvm (cdist-type__rvm(7))
  • __ssh_authorized_key (cdist-type__ssh_authorized_key(7))
  • __start_on_boot (cdist-type__start_on_boot(7))
  • __timezone (cdist-type__timezone(7))
  • __user (cdist-type__user(7))

5. OBJECTS

For object to object communication and tests, the following paths are usable within a object directory:

changed
This empty file exists in an object directory, if the object has code to be excuted (either remote or local)

6. ENVIRONMENT VARIABLES

__explorer
Directory that contains all global explorers. Available for: explorer, type explorer
__manifest
Directory that contains the initial manifest. Available for: initial manifest, type manifest
__global
Directory that contains generic output like explorer. Available for: initial manifest, type manifest, type gencode
__object
Directory that contains the current object. Available for: type manifest, type explorer, type gencode
__object_id

The type unique object id. Available for: type manifest, type explorer, type gencode

Note: The leading and the trailing "/" will always be stripped (caused by
the filesystem database and ensured by the core).
    Note: Double slashes ("//") will not be fixed and result in an error.
__object_name::
    The full qualified name of the current object.
    Available for: type manifest, type explorer, type gencode
__target_host::
    The host we are deploying to.
    Available for: explorer, initial manifest, type explorer, type manifest, type gencode
__type::
    Path to the current type.
    Available for: type manifest, type gencode
__type_explorer::
    Directory that contains the type explorers.
    Available for: type explorer

7. SEE ALSO

  • cdist(1)

8. COPYING

Copyright (C) 2011-2012 Nico Schottelius. Free use of this software is granted under the terms of the GNU General Public License version 3 (GPLv3).