add examples for __remote_{copy,exec} scripts

Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
This commit is contained in:
Steven Armstrong 2011-11-03 17:21:14 +01:00
parent d0123acc2a
commit 360a03a349
5 changed files with 85 additions and 0 deletions

View 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 :-)

View 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 "-----"

View 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
View 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
View 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 $@