document /, // behaviour of object id

Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
This commit is contained in:
Nico Schottelius 2012-02-13 11:30:11 +01:00
parent 2d61070023
commit 95cbdeba27
3 changed files with 74 additions and 69 deletions

View file

@ -9,7 +9,10 @@ Changelog
* Bugfix __user: Correct shadow field in explorer (Matt Coddington) * Bugfix __user: Correct shadow field in explorer (Matt Coddington)
* Bugfix __link: Properly handle existing links (Steven Armstrong) * Bugfix __link: Properly handle existing links (Steven Armstrong)
* Bugfix __key_value: More robust implementation (Steven Armstrong) * Bugfix __key_value: More robust implementation (Steven Armstrong)
* Bugfix __user: Fix for changing a user's group by name (Matt Coddington)
* New Type: __package_pip * New Type: __package_pip
* Bugfix/Cleanup: Correctly allow Object ID to start and end with /, but
not contain //.
2.0.6: 2012-01-28 2.0.6: 2012-01-28
* Bugfix __apt_ppa: * Bugfix __apt_ppa:

View file

@ -1,7 +1,5 @@
- cleanup object_id handling - cleanup object_id handling
- have a look at singletons - have a look at singletons
- double check verification
- adjust tests
- remove useless - remove useless
ERROR: monitoring02: Code that raised the error: ERROR: monitoring02: Code that raised the error:

View file

@ -49,10 +49,10 @@ The following global explorers are available:
eof eof
( (
cd ../../conf/explorer cd ../../conf/explorer
for explorer in *; do for explorer in *; do
echo "- $explorer" echo "- $explorer"
done done
) )
cat << eof cat << eof
@ -62,77 +62,77 @@ PATHS
If not specified otherwise, all paths are relative to the checkout directory. If not specified otherwise, all paths are relative to the checkout directory.
conf/:: conf/::
Contains the (static) configuration like manifests, types and explorers. Contains the (static) configuration like manifests, types and explorers.
conf/manifest/init:: conf/manifest/init::
This is the central entry point used by cdist-manifest-init(1). This is the central entry point used by cdist-manifest-init(1).
It is an executable (+x bit set) shell script that can use It is an executable (+x bit set) shell script that can use
values from the explorers to decide which configuration to create values from the explorers to decide which configuration to create
for the specified target host. for the specified target host.
It should be primary used to define mapping from configurations to hosts. It should be primary used to define mapping from configurations to hosts.
conf/manifest/*:: conf/manifest/*::
All other files in this directory are not directly used by cdist, but you 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 can seperate configuration mappings, if you have a lot of code in the
manifest/init file. This may also be helpful to have different admins manifest/init file. This may also be helpful to have different admins
maintain different groups of hosts. maintain different groups of hosts.
conf/explorer/<name>:: conf/explorer/<name>::
Contains explorers to be run on the target hosts, see cdist-explorer(7). Contains explorers to be run on the target hosts, see cdist-explorer(7).
conf/type/:: conf/type/::
Contains all available types, which are used to provide Contains all available types, which are used to provide
some kind of functionality. See cdist-type(7). some kind of functionality. See cdist-type(7).
conf/type/<name>/:: conf/type/<name>/::
Home of the type <name>. Home of the type <name>.
This directory is referenced by the variable __type (see below). This directory is referenced by the variable __type (see below).
conf/type/<name>/man.text:: conf/type/<name>/man.text::
Manpage in Asciidoc format (required for inclusion into upstream) Manpage in Asciidoc format (required for inclusion into upstream)
conf/type/<name>/manifest:: conf/type/<name>/manifest::
Used to generate additional objects from a type. Used to generate additional objects from a type.
conf/type/<name>/gencode-local:: conf/type/<name>/gencode-local::
Used to generate code to be executed on the server. Used to generate code to be executed on the server.
conf/type/<name>/gencode-remote:: conf/type/<name>/gencode-remote::
Used to generate code to be executed on the client. Used to generate code to be executed on the client.
conf/type/<name>/parameters/required:: conf/type/<name>/parameters/required::
Parameters required by type, \n seperated list. Parameters required by type, \n seperated list.
conf/type/<name>/parameters/optional:: conf/type/<name>/parameters/optional::
Parameters optionally accepted by type, \n seperated list. Parameters optionally accepted by type, \n seperated list.
conf/type/<name>/explorer:: conf/type/<name>/explorer::
Location of the type specific explorers. Location of the type specific explorers.
This directory is referenced by the variable __type_explorer (see below). This directory is referenced by the variable __type_explorer (see below).
See cdist-explorer(7). See cdist-explorer(7).
out/:: out/::
This directory contains output of cdist and is usually located This directory contains output of cdist and is usually located
in a temporary directory and thus will be removed after the run. in a temporary directory and thus will be removed after the run.
This directory is referenced by the variable __global (see below). This directory is referenced by the variable __global (see below).
out/explorer:: out/explorer::
Output of general explorers. Output of general explorers.
out/object:: out/object::
Objects created for the host. Objects created for the host.
out/object/<object>:: out/object/<object>::
Contains all object specific information. Contains all object specific information.
This directory is referenced by the variable __object (see below). This directory is referenced by the variable __object (see below).
out/object/<object>/explorers:: out/object/<object>/explorers::
Output of type specific explorers, per object. Output of type specific explorers, per object.
tmp_dir:: tmp_dir::
A tempdir and a tempfile is used by cdist internally, A tempdir and a tempfile is used by cdist internally,
which will be removed when the scripts end automatically. which will be removed when the scripts end automatically.
TYPES TYPES
----- -----
@ -141,13 +141,13 @@ The following types are available:
eof eof
for type in man7/cdist-type__*.text; do for type in man7/cdist-type__*.text; do
no_dir="${type#man7/}"; no_dir="${type#man7/}";
no_type="${no_dir#cdist-type}"; no_type="${no_dir#cdist-type}";
name="${no_type%.text}"; name="${no_type%.text}";
name_no_underline="$(echo $name | sed 's/^__/\\__/g')" name_no_underline="$(echo $name | sed 's/^__/\\__/g')"
man="${no_dir%.text}(7)" man="${no_dir%.text}(7)"
echo "- $name_no_underline" "($man)" echo "- $name_no_underline" "($man)"
done done
cat << eof cat << eof
@ -159,43 +159,47 @@ For object to object communication and tests, the following paths are
usable within a object directory: usable within a object directory:
changed:: changed::
This empty file exists in an object directory, if the object has This empty file exists in an object directory, if the object has
code to be excuted (either remote or local) code to be excuted (either remote or local)
ENVIRONMENT VARIABLES ENVIRONMENT VARIABLES
--------------------- ---------------------
__explorer:: __explorer::
Directory that contains all global explorers. Directory that contains all global explorers.
Available for: explorer Available for: explorer
__manifest:: __manifest::
Directory that contains the initial manifest. Directory that contains the initial manifest.
Available for: initial manifest Available for: initial manifest
__global:: __global::
Directory that contains generic output like explorer. Directory that contains generic output like explorer.
Available for: initial manifest, type manifest, type gencode Available for: initial manifest, type manifest, type gencode
__object:: __object::
Directory that contains the current object. Directory that contains the current object.
Available for: type manifest, type explorer, type gencode Available for: type manifest, type explorer, type gencode
__object_id:: __object_id::
The type unique object id. The type unique object id.
Available for: type manifest, type explorer, type gencode Available for: type manifest, type explorer, type gencode
Note: The leading "/" will always be stripped.
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.
__self:: __self::
DEPRECATED: Same as __object_name, do not use anymore, use __object_name instead. DEPRECATED: Same as __object_name, do not use anymore, use __object_name instead.
Will be removed in cdist 3.x. Will be removed in cdist 3.x.
__object_name:: __object_name::
The full qualified name of the current object. The full qualified name of the current object.
Available for: type manifest, type explorer, type gencode Available for: type manifest, type explorer, type gencode
__target_host:: __target_host::
The host we are deploying to. The host we are deploying to.
Available for: initial manifest, type manifest, type gencode Available for: initial manifest, type manifest, type gencode
__type:: __type::
Path to the current type. Path to the current type.
Available for: type manifest, type gencode Available for: type manifest, type gencode
__type_explorer:: __type_explorer::
Directory that contains the type explorers. Directory that contains the type explorers.
Available for: type explorer Available for: type explorer
SEE ALSO SEE ALSO