continue on cdist-quickstart
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								998be2025b
							
						
					
				
			
			
				commit
				
					
						097e2cb303
					
				
			
		
					 2 changed files with 81 additions and 11 deletions
				
			
		| 
						 | 
					@ -26,6 +26,7 @@ set -eu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
banner="cdist-quickstart>"
 | 
					banner="cdist-quickstart>"
 | 
				
			||||||
continue="Press enter to continue or ctrl-c to abort."
 | 
					continue="Press enter to continue or ctrl-c to abort."
 | 
				
			||||||
 | 
					create_continue="Press enter to create the described files/directories"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
__prompt()
 | 
					__prompt()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -33,33 +34,101 @@ __prompt()
 | 
				
			||||||
   read answer
 | 
					   read answer
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# Intro
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
cat << eof
 | 
					cat << eof
 | 
				
			||||||
$banner cdist version $__cdist_version
 | 
					$banner cdist version $__cdist_version
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Welcome to the interactive guide to cdist!
 | 
					Welcome to the interactive guide to cdist!
 | 
				
			||||||
This is the interactive tutorial and beginners help for cdist.
 | 
					This is the interactive tutorial and beginners help for cdist.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					If you would like to run this tutorial completly without root priveliges,
 | 
				
			||||||
 | 
					setup the variables __cdist_conf_dir to point to a writable locaction
 | 
				
			||||||
 | 
					(i.e. $HOME/cdist-config).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eof
 | 
					eof
 | 
				
			||||||
__prompt "$continue"
 | 
					__prompt "$continue"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# /etc/cdist via root
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
cat << eof
 | 
					cat << eof
 | 
				
			||||||
 | 
					 | 
				
			||||||
To make any use of cdist, we need to create the configuration base, which
 | 
					To make any use of cdist, we need to create the configuration base, which
 | 
				
			||||||
can normally be found below ${__cdist_conf_dir}:
 | 
					can normally be found below ${__cdist_conf_dir}. As cdist does not need
 | 
				
			||||||
 | 
					any root priveliges normally, it is recommended that you create this
 | 
				
			||||||
 | 
					directory as root and change the owner to a dedicated user (for instance
 | 
				
			||||||
 | 
					cdist).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
${__cdist_explorer_dir}: Contains explorer, which explore the target
 | 
					MANUAL STEP:
 | 
				
			||||||
${__cdist_manifest_dir}: Contains manifests which define types being used
 | 
					
 | 
				
			||||||
${__cdist_manifest_init}: The first manifest executed (i.e. cdist entry point)
 | 
					   - Become root: su -
 | 
				
			||||||
${__cdist_type_dir}: Contains types
 | 
					   - Create ${__cdist_conf_dir}: mkdir ${__cdist_conf_dir}
 | 
				
			||||||
 | 
					   - Change owner to $USER: chown $USER ${__cdist_conf_dir}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
eof
 | 
					eof
 | 
				
			||||||
__prompt "$continue"
 | 
					__prompt "$continue"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# Basic directories
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					cat << eof
 | 
				
			||||||
 | 
					Now we need to create some basic directories:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   - ${__cdist_explorer_dir}: Contains explorer, which explore the target
 | 
				
			||||||
 | 
					   - ${__cdist_manifest_dir}: Contains manifests which define types being used
 | 
				
			||||||
 | 
					   - ${__cdist_type_dir}: Contains types
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eof
 | 
				
			||||||
 | 
					__prompt "$create_continue"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set -x
 | 
					set -x
 | 
				
			||||||
mkdir ${__cdist_conf_dir}
 | 
					mkdir -p ${__cdist_explorer_dir}
 | 
				
			||||||
mkdir ${__cdist_explorer_dir}
 | 
					mkdir -p ${__cdist_manifest_dir}
 | 
				
			||||||
mkdir ${__cdist_manifest_dir}
 | 
					mkdir -p ${__cdist_type_dir}
 | 
				
			||||||
touch ${__cdist_manifest_init}
 | 
					 | 
				
			||||||
mkdir ${__cdist_type_dir}
 | 
					 | 
				
			||||||
set +x
 | 
					set +x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# create manifest/init
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					cat << eof
 | 
				
			||||||
 | 
					At the beginning of a configuration deployment the first file cdist reads is
 | 
				
			||||||
 | 
					${__cdist_manifest_init}, which defines the types to be created on
 | 
				
			||||||
 | 
					a specific host.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					We'll create the initial manifest and add some example types to it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eof
 | 
				
			||||||
 | 
					__prompt "$create_continue"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set -x
 | 
				
			||||||
 | 
					cat << eof > "${__cdist_manifest_init}"
 | 
				
			||||||
 | 
					# Always create a marker
 | 
				
			||||||
 | 
					__file /etc/cdist-configured --type file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					case "\$__target_host" in
 | 
				
			||||||
 | 
					   $(hostname)*)
 | 
				
			||||||
 | 
					      __file /tmp/cdist-quickstart --type file
 | 
				
			||||||
 | 
					   ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					eof
 | 
				
			||||||
 | 
					set +x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# show generated manifest/niit
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					cat << eof
 | 
				
			||||||
 | 
					Let's have a look how the initial manifest looks like currently:
 | 
				
			||||||
 | 
					--------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					eof
 | 
				
			||||||
 | 
					cat "${__cdist_manifest_init}"
 | 
				
			||||||
 | 
					cat << eof
 | 
				
			||||||
 | 
					--------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					eof
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					__prompt "$continue"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					################################################################################
 | 
				
			||||||
 | 
					# add type file
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,3 +2,4 @@ Prepare documentation for 1.0.0.
 | 
				
			||||||
   - Check all references in manpages
 | 
					   - Check all references in manpages
 | 
				
			||||||
      - cdist.text, cdist-quickstart
 | 
					      - cdist.text, cdist-quickstart
 | 
				
			||||||
         - write cdist-quickstart
 | 
					         - write cdist-quickstart
 | 
				
			||||||
 | 
					            - redefine installation + configuration base?
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue