projects
/
xremote.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Cosmetics.
[xremote.git]
/
xremote.sh
diff --git
a/xremote.sh
b/xremote.sh
index
59e588c
..
dca62c6
100755
(executable)
--- a/
xremote.sh
+++ b/
xremote.sh
@@
-50,7
+50,8
@@
xremote.sh <script>
Example:
@XREMOTE_HOST: elk.fleuret.org
Example:
@XREMOTE_HOST: elk.fleuret.org
- @XREMOTE_SEND: mnist.py
+ @XREMOTE_EXEC: python3
+ @XREMOTE_SEND: main.cf
@XREMOTE_GET: *.dat
@XREMOTE_PRE: ln -s /home/fleuret/data/pytorch ./data
@XREMOTE_GET: *.dat
@XREMOTE_PRE: ln -s /home/fleuret/data/pytorch ./data
@@
-66,7
+67,7
@@
EOF
function cleanup_remote_tmp () {
if [[ "${REMOTE_HOST}" ]] && [[ "${REMOTE_DIR}" ]]
then
function cleanup_remote_tmp () {
if [[ "${REMOTE_HOST}" ]] && [[ "${REMOTE_DIR}" ]]
then
- echo "Clean up remote workdir."
+ echo "
xremote:
Clean up remote workdir."
ssh "${REMOTE_HOST}" "rm -rf \"${REMOTE_DIR}\""
fi
}
ssh "${REMOTE_HOST}" "rm -rf \"${REMOTE_DIR}\""
fi
}
@@
-106,15
+107,15
@@
do
SEND)
check_remote_is_defined
SEND)
check_remote_is_defined
- tar c
"${value}"
| ssh "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar mx"
+ tar c
${value}
| ssh "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar mx"
;;
HOST)
[[ "${REMOTE_DIR}" ]] && (exit "Remote host already defined!" >&2 && exit 1)
REMOTE_HOST="${value}"
[[ "${REMOTE_HOST}" ]] || REMOTE_HOST="${XREMOTE_HOST}"
;;
HOST)
[[ "${REMOTE_DIR}" ]] && (exit "Remote host already defined!" >&2 && exit 1)
REMOTE_HOST="${value}"
[[ "${REMOTE_HOST}" ]] || REMOTE_HOST="${XREMOTE_HOST}"
- [[ "${REMOTE_HOST}" ]] || (echo "No remote host specified." >&2 && exit 1)
- REMOTE_DIR="$(ssh </dev/null "${REMOTE_HOST}" mktemp -d /tmp/xremote.from_"$(hostname)_$(date +%Y%m%d)".XXXXXX)"
+ [[ "${REMOTE_HOST}" ]] || (echo "
xremote:
No remote host specified." >&2 && exit 1)
+ REMOTE_DIR="$(ssh </dev/null "${REMOTE_HOST}" mktemp -d /tmp/xremote.from_"$(hostname)_$(date +%Y%m%d
-%H%M%S
)".XXXXXX)"
;;
esac
fi
;;
esac
fi
@@
-127,9
+128,7
@@
check_remote_is_defined
tar c "${main}" | ssh "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar mx"
tar c "${main}" | ssh "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar mx"
-echo "----------------------------------------------------------------------"
-echo "-- On ${REMOTE_HOST}"
-echo "----------------------------------------------------------------------"
+echo "xremote: on ${REMOTE_HOST}"
if [[ "${REMOTE_EXEC}" ]]
then
if [[ "${REMOTE_EXEC}" ]]
then
@@
-138,13
+137,15
@@
else
REMOTE_COMMAND="./${main}"
fi
REMOTE_COMMAND="./${main}"
fi
+echo "xremote: -- stdout ---------------------------------------------------"
ssh </dev/null "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && ${REMOTE_COMMAND}"
ssh </dev/null "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && ${REMOTE_COMMAND}"
-echo "----------------------------------------------------------------------"
######################################################################
# Disable globbing to keep wildcards for the remote side
######################################################################
# Disable globbing to keep wildcards for the remote side
+echo "xremote: -- retrieve results -----------------------------------------"
+
set -f
while read line
set -f
while read line
@@
-156,7
+157,7
@@
do
case "${label}" in
GET)
check_remote_is_defined
case "${label}" in
GET)
check_remote_is_defined
- ssh </dev/null "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar c ${value}" | tar mxv
+ ssh </dev/null "${REMOTE_HOST}" "cd \"${REMOTE_DIR}\" && tar
2>/dev/null
c ${value}" | tar mxv
;;
esac
fi
;;
esac
fi
@@
-164,4
+165,6
@@
done < "${main}"
set +f
set +f
+echo "xremote: -- finished -------------------------------------------------"
+
######################################################################
######################################################################