diff --git a/README.md b/README.md index 412ad5a..404201f 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,10 @@ - **port** (default: `222`): SSH port to connect to - **user** (default: `drone`): System user to connect via SSH with +### Makes me sad they exist + +- **chdir** (default: none): Add `-C` option to `tar` + ## Example ```yaml diff --git a/plugin.sh b/plugin.sh index bf528d6..679d694 100755 --- a/plugin.sh +++ b/plugin.sh @@ -34,15 +34,20 @@ run_docker_cp() { CONTAINER=$(docker -H "$REMOTE_DOCKER_HOST" container ls \ --format "table {{.ID}},{{.Names}}" \ | grep "${PLUGIN_SERVICE}" | cut -d',' -f1) + if [ -z "$CONTAINER" ]; then echo "ERROR: can't find container for $PLUGIN_SERVICE" return 1 fi + + CD="" + if [ -n "$PLUGIN_CHDIR" ]; then + CD="-C $PLUGIN_CHDIR" + fi + echo "Copying $PLUGIN_SOURCE" # shellcheck disable=SC2086 - tar cf - $PLUGIN_SOURCE | tar t - # shellcheck disable=SC2086 - tar cf - $PLUGIN_SOURCE | docker -H "$REMOTE_DOCKER_HOST" cp - $CONTAINER:$PLUGIN_DEST + tar cf - $CD $PLUGIN_SOURCE | docker -H "$REMOTE_DOCKER_HOST" cp - $CONTAINER:$PLUGIN_DEST echo "--- end deploy ---" }