Преглед изворни кода

Allow multiple files or directories as argument for bin/copytocontainer (#1384)

Co-authored-by: Mark Shust <mark@shust.com>
Nolwennig-Jeulin пре 1 недеља
родитељ
комит
ddc543883b
1 измењених фајлова са 18 додато и 14 уклоњено
  1. 18 14
      compose/bin/copytocontainer

+ 18 - 14
compose/bin/copytocontainer

@@ -1,19 +1,23 @@
 #!/usr/bin/env bash
-[ -z "$1" ] && echo "Please specify a directory or file to copy to container (ex. vendor, --all)" && exit
+[ $# -eq 0 ] && echo "Please specify one or more directories/files to copy to container (ex. vendor, --all)" && exit 1
 
 REAL_SRC=$(cd -P "src" >/dev/null && pwd)
-if [ "$1" == "--all" ]; then
-  docker cp "$REAL_SRC/./" "$(bin/docker-compose ps -q phpfpm|awk '{print $1}')":/var/www/html/
-  echo "Completed copying all files from host to container"
-  bin/fixowns
-  bin/fixperms
-else
-  if [ -f "$REAL_SRC/$1" ]; then
-    docker cp "$REAL_SRC/${1}" "$(bin/docker-compose ps -q phpfpm|awk '{print $1}')":/var/www/html/"$1"
+CONTAINER_ID=$(bin/docker-compose ps -q phpfpm | awk '{print $1}')
+
+for ARG in "$@"; do
+  if [ "$ARG" == "--all" ]; then
+    docker cp "$REAL_SRC/./" "$CONTAINER_ID":/var/www/html/
+    echo "Completed copying all files from host to container"
+    bin/fixowns
+    bin/fixperms
   else
-    docker cp "$REAL_SRC/${1}" "$(bin/docker-compose ps -q phpfpm|awk '{print $1}')":/var/www/html/"$(dirname "$1")"
+    if [ -f "$REAL_SRC/$ARG" ]; then
+      docker cp "$REAL_SRC/$ARG" "$CONTAINER_ID":/var/www/html/"$ARG"
+    else
+      docker cp "$REAL_SRC/$ARG" "$CONTAINER_ID":/var/www/html/"$(dirname "$ARG")"
+    fi
+    echo "Completed copying $ARG from host to container"
+    bin/fixowns "$ARG"
+    bin/fixperms "$ARG"
   fi
-  echo "Completed copying $1 from host to container"
-  bin/fixowns "$1"
-  bin/fixperms "$1"
-fi
+done