forked from ungleich-public/cdist
		
	add examples for __remote_{copy,exec} scripts
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
This commit is contained in:
		
					parent
					
						
							
								d0123acc2a
							
						
					
				
			
			
				commit
				
					
						360a03a349
					
				
			
		
					 5 changed files with 85 additions and 0 deletions
				
			
		
							
								
								
									
										2
									
								
								other/examples/remote/README
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								other/examples/remote/README
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
Some examples of using alternative __remote_copy and __remote_exec prefixes.
 | 
			
		||||
This allows you to change how cdist interacts with the target host (or directory, or whatever :-)
 | 
			
		||||
							
								
								
									
										28
									
								
								other/examples/remote/chroot/copy
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										28
									
								
								other/examples/remote/chroot/copy
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,28 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# __remote_copy script to run cdist against a local chroot instead of via ssh 
 | 
			
		||||
# to a remote target host.
 | 
			
		||||
#
 | 
			
		||||
# Usage:
 | 
			
		||||
#  __remote_copy="/path/to/this/script /path/to/your/chroot" cdist config target-id
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
log() {
 | 
			
		||||
   #echo "$@" | logger -t "cdist-chroot-copy"
 | 
			
		||||
   :
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
chroot="$1"; shift
 | 
			
		||||
target_host="$__target_host"
 | 
			
		||||
 | 
			
		||||
# replace target_host with chroot location
 | 
			
		||||
code="$(echo "$@" | sed "s|$target_host:|$chroot|g")"
 | 
			
		||||
 | 
			
		||||
log "$@"
 | 
			
		||||
log "target_host: $target_host"
 | 
			
		||||
log "$code"
 | 
			
		||||
 | 
			
		||||
# copy files into chroot
 | 
			
		||||
cp $code
 | 
			
		||||
 | 
			
		||||
log "-----"
 | 
			
		||||
							
								
								
									
										35
									
								
								other/examples/remote/chroot/exec
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										35
									
								
								other/examples/remote/chroot/exec
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,35 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# __remote_exec script to run cdist against a local chroot instead of via ssh 
 | 
			
		||||
# on a remote target host.
 | 
			
		||||
#
 | 
			
		||||
# Usage:
 | 
			
		||||
#  __remote_exec="/path/to/this/script /path/to/your/chroot" cdist config target-id
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
log() {
 | 
			
		||||
   #echo "$@" | logger -t "cdist-chroot-exec"
 | 
			
		||||
   :
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
chroot="$1"; shift
 | 
			
		||||
target_host="$1"; shift
 | 
			
		||||
script=$(mktemp "${chroot}/tmp/chroot-${0##*/}.XXXXXXXXXX")
 | 
			
		||||
trap cleanup INT TERM EXIT
 | 
			
		||||
cleanup() {
 | 
			
		||||
   [ $__cdist_debug ] || rm "$script"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
log "$script"
 | 
			
		||||
log "$@"
 | 
			
		||||
echo "#!/bin/sh -l" > "$script"
 | 
			
		||||
echo "$@" >> "$script"
 | 
			
		||||
chmod +x "$script"
 | 
			
		||||
 | 
			
		||||
relative_script="${script#$chroot}"
 | 
			
		||||
log "relative_script: $relative_script"
 | 
			
		||||
 | 
			
		||||
# run in chroot
 | 
			
		||||
chroot "$chroot" "$relative_script"
 | 
			
		||||
 | 
			
		||||
log "-----"
 | 
			
		||||
							
								
								
									
										10
									
								
								other/examples/remote/ssh/copy
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								other/examples/remote/ssh/copy
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# same as cdist default
 | 
			
		||||
#
 | 
			
		||||
# Usage:
 | 
			
		||||
#  __remote_copy="/path/to/this/script" cdist config target_host
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
#echo "$@" | logger -t "cdist-ssh-copy"
 | 
			
		||||
scp -o User=root -q $@
 | 
			
		||||
							
								
								
									
										10
									
								
								other/examples/remote/ssh/exec
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								other/examples/remote/ssh/exec
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
#
 | 
			
		||||
# same as cdist default
 | 
			
		||||
#
 | 
			
		||||
# Usage:
 | 
			
		||||
#  __remote_exec="/path/to/this/script" cdist config target_host
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
#echo "$@" | logger -t "cdist-ssh-exec"
 | 
			
		||||
ssh -o User=root -q $@
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue