forked from ungleich-public/cdist
eeaab438c2
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
38 lines
715 B
Text
38 lines
715 B
Text
Steven, Nico:
|
|
|
|
Problem:
|
|
How to execute a function instead of binary
|
|
|
|
Solutions:
|
|
|
|
1)
|
|
(
|
|
cat $lib/*
|
|
cat bin/cdist-config
|
|
echo $function $args
|
|
) | ssh foo
|
|
|
|
2)
|
|
scp $dir/lib.sh root@foo:/tmp/lib.sh
|
|
cat << DONE | ssh root@foo sh
|
|
source /tmp/lib.sh
|
|
DONE
|
|
|
|
3) follow up to 1)
|
|
__run_remote()
|
|
{
|
|
cat << eof | ssh foo
|
|
|
|
. /cdist-config
|
|
"$@" # NOT USABLE, no export = export = lines possible!
|
|
|
|
eof
|
|
|
|
|
|
Problems found and solved:
|
|
|
|
- remote shell cannot work due to multi line variable export
|
|
- caching library directory with scp
|
|
- create function for every remote action
|
|
-> prepares environment
|
|
|