| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | #!/bin/sh
 | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # 2010-2011 Nico Schottelius (nico-cdist at schottelius.org) | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # This file is part of cdist. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # cdist is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | # it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  | # the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | # (at your option) any later version. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # cdist is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  | # GNU General Public License for more details. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  | # along with cdist. If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Generate manpage that lists available types | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | __cdist_pwd="$(pwd -P)" | 
					
						
							|  |  |  | __cdist_mydir="${0%/*}"; | 
					
						
							|  |  |  | __cdist_abs_mydir="$(cd "$__cdist_mydir" && pwd -P)" | 
					
						
							|  |  |  | __cdist_myname=${0##*/}; | 
					
						
							|  |  |  | __cdist_abs_myname="$__cdist_abs_mydir/$__cdist_myname" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | filename="${__cdist_myname%.sh}" | 
					
						
							|  |  |  | dest="$__cdist_abs_mydir/$filename" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cd "$__cdist_abs_mydir" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  | exec > "$dest" | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | cat << eof  | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | cdist-reference(7) | 
					
						
							|  |  |  | ================== | 
					
						
							|  |  |  | Nico Schottelius <nico-cdist--@--schottelius.org> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | NAME | 
					
						
							|  |  |  | ---- | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | cdist-reference - Variable, path and type reference for cdist $(git describe) | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DESCRIPTION | 
					
						
							|  |  |  | ----------- | 
					
						
							|  |  |  | Various scripts which are not in the core need information on how | 
					
						
							|  |  |  | to find information. This manpage summarises the available environment | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | variables, types and paths and clearifies with part may access which variables. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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 used by cdist-manifest-init(1). | 
					
						
							|  |  |  |    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. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    It should be primary used to define mapping from configurations to hosts. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | conf/manifest/*:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  |    All other files in this directory are not directly used by cdist, but you | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    can seperate configuration mappings, if you have a lot of code in the | 
					
						
							|  |  |  |    manifest/init file. This may also be very helpful to have different admins | 
					
						
							|  |  |  |    maintain different groups of hosts. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | conf/explorer/<name>:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Contains explorers to be run on the target hosts, see cdist-explorer(7). | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | conf/type/:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    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). | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 13:06:23 +01:00
										 |  |  | conf/type/<name>/man.text:: | 
					
						
							|  |  |  |    Manpage in Asciidoc format (nequired for inclusion into upstream) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | conf/type/<name>/manifest:: | 
					
						
							|  |  |  |    Used to generate additional objects from a type. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | conf/type/<name>/gencode:: | 
					
						
							|  |  |  |    Used to generate code to be executed on the client. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | conf/type/<name>/parameters/required:: | 
					
						
							|  |  |  |    Parameters required by type, \n seperated list. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | conf/type/<name>/parameters/optional:: | 
					
						
							|  |  |  |    Parameters optionally 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). | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | out/:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | tmp_dir:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    A tempdir and a tempfile is used by cdist internally, | 
					
						
							|  |  |  |    which will be removed when the scripts end automatically. | 
					
						
							|  |  |  |    See cdist-config(1). | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | TYPES | 
					
						
							|  |  |  | ----- | 
					
						
							|  |  |  | The following types are available: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | eof | 
					
						
							| 
									
										
										
										
											2011-03-09 13:06:23 +01:00
										 |  |  | for type in man7/cdist-type__*; do | 
					
						
							|  |  |  |    name_1="${type#man7/cdist-type}" | 
					
						
							|  |  |  |    name_2="${name_1%.7}" | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |    name="$name_2" | 
					
						
							|  |  |  |    echo "- $name" | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cat << eof | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | VARIABLES | 
					
						
							|  |  |  | --------- | 
					
						
							|  |  |  | __explorer:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains all explorers. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: explorer | 
					
						
							|  |  |  | __manifest:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains the initial manifest. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: initial manifest | 
					
						
							|  |  |  | __global:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains generic output like explorer. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: initial manifest, type manifest, type explorer, type codegen | 
					
						
							|  |  |  | __object:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains the current object. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: type manifest, type explorer, type codegen | 
					
						
							|  |  |  | __object_id:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    The type unique object id. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: type manifest, type explorer, type codegen | 
					
						
							|  |  |  | __target_host:: | 
					
						
							|  |  |  |    The host we are deploying to. | 
					
						
							|  |  |  |    Available for: initial manifest, type manifest, type codegen | 
					
						
							|  |  |  | __type:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Path to the current type. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: type manifest | 
					
						
							|  |  |  | __type_explorers:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains the type explorers. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    Available for: type explorer | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | SEE ALSO | 
					
						
							|  |  |  | -------- | 
					
						
							|  |  |  | - cdist(7) | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | eof | 
					
						
							| 
									
										
										
										
											2011-03-09 13:06:23 +01:00
										 |  |  | for type in man7/cdist-type__*; do | 
					
						
							|  |  |  |    name_1="${type#man7/}" | 
					
						
							|  |  |  |    name_2="${name_1%.7}" | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |    name="$name_2" | 
					
						
							|  |  |  |    echo "- ${name}(7)" | 
					
						
							|  |  |  | done | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | cat <<eof | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | COPYING | 
					
						
							|  |  |  | ------- | 
					
						
							|  |  |  | Copyright \(C) 2011 Nico Schottelius. Free use of this software is | 
					
						
							|  |  |  | granted under the terms of the GNU General Public License version 3 (GPLv3). | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | eof |