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