| 
									
										
										
										
											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}" | 
					
						
							| 
									
										
										
										
											2011-04-01 10:47:09 +02:00
										 |  |  | dest="$__cdist_abs_mydir/man7/$filename" | 
					
						
							| 
									
										
										
										
											2011-03-09 09:52:43 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 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-20 02:57:49 +01:00
										 |  |  | cdist-reference - Variable, path and type reference for cdist | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-05-10 16:44:48 +02:00
										 |  |  | EXPLORERS | 
					
						
							|  |  |  | --------- | 
					
						
							|  |  |  | The following global explores are available: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | eof | 
					
						
							|  |  |  | ( | 
					
						
							|  |  |  |    cd ../../conf/explorer | 
					
						
							|  |  |  |    for explorer in *; do | 
					
						
							|  |  |  |       echo "- $explorer" | 
					
						
							|  |  |  |    done | 
					
						
							|  |  |  | ) | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-05-10 16:44:48 +02:00
										 |  |  | cat << eof  | 
					
						
							| 
									
										
										
										
											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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-19 23:36:58 +01:00
										 |  |  | conf/type/<name>/gencode-local:: | 
					
						
							|  |  |  |    Used to generate code to be executed on the server. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | conf/type/<name>/gencode-remote:: | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  |    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 | 
					
						
							|  |  |  | ----- | 
					
						
							| 
									
										
										
										
											2011-04-05 21:08:09 +02:00
										 |  |  | The following types are available: | 
					
						
							| 
									
										
										
										
											2011-04-06 09:32:11 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-05 21:08:09 +02:00
										 |  |  | eof | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for type in man7/cdist-type__*.text; do | 
					
						
							| 
									
										
										
										
											2011-04-06 09:32:11 +02:00
										 |  |  |    no_dir="${type#man7/}"; | 
					
						
							|  |  |  |    no_type="${no_dir#cdist-type}"; | 
					
						
							|  |  |  |    name="${no_type%.text}"; | 
					
						
							| 
									
										
										
										
											2011-05-10 16:40:33 +02:00
										 |  |  |    name_no_underline="$(echo $name | sed 's/^__/\\__/g')" | 
					
						
							| 
									
										
										
										
											2011-04-06 09:32:11 +02:00
										 |  |  |    man="${no_dir%.text}(7)" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-05-10 16:40:33 +02:00
										 |  |  |    echo "- $name_no_underline" "($man)" | 
					
						
							| 
									
										
										
										
											2011-04-05 21:08:09 +02:00
										 |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | cat << eof | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-06-17 14:14:32 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-04 12:19:02 +02:00
										 |  |  | ENVIRONMENT VARIABLES | 
					
						
							|  |  |  | --------------------- | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | __explorer:: | 
					
						
							| 
									
										
										
										
											2011-06-17 14:14:32 +02:00
										 |  |  |    Directory that contains all global 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-09-10 15:09:09 +02:00
										 |  |  |    Available for: initial manifest, type manifest, type gencode | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | __object:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    Directory that contains the current object. | 
					
						
							| 
									
										
										
										
											2011-09-10 15:09:09 +02:00
										 |  |  |    Available for: type manifest, type explorer, type gencode | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | __object_id:: | 
					
						
							| 
									
										
										
										
											2011-03-09 10:01:14 +01:00
										 |  |  |    The type unique object id. | 
					
						
							| 
									
										
										
										
											2011-09-10 15:09:09 +02:00
										 |  |  |    Available for: type manifest, type explorer, type gencode | 
					
						
							| 
									
										
										
										
											2011-03-29 16:52:27 +02:00
										 |  |  | __self:: | 
					
						
							|  |  |  |    The full qualified name of the current object. | 
					
						
							| 
									
										
										
										
											2011-09-10 15:09:09 +02:00
										 |  |  |    Available for: type manifest, type explorer, type gencode | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | __target_host:: | 
					
						
							|  |  |  |    The host we are deploying to. | 
					
						
							| 
									
										
										
										
											2011-09-10 15:09:09 +02:00
										 |  |  |    Available for: initial manifest, type manifest, type gencode | 
					
						
							| 
									
										
										
										
											2011-03-20 02:44:31 +01:00
										 |  |  | __target_user:: | 
					
						
							|  |  |  |    User to use for authentication on remote host. | 
					
						
							|  |  |  |    Currently static in core. | 
					
						
							| 
									
										
										
										
											2011-03-09 09:34:53 +01:00
										 |  |  | __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 | 
					
						
							| 
									
										
										
										
											2011-06-17 14:29:22 +02:00
										 |  |  | __type_explorer:: | 
					
						
							| 
									
										
										
										
											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) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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 |