Semnykcz commited on
Commit
1998750
·
verified ·
1 Parent(s): d21c4cd

Create model_download.sh

Browse files
Files changed (1) hide show
  1. model_download.sh +34 -0
model_download.sh ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ MODELS_DIR="${MODELS_DIR:-/grpc-models}"
5
+ URLS="${MODEL_URLS:-}"
6
+
7
+ # Accept comma/newline/space separated URLs
8
+ if [[ -z "$URLS" ]]; then
9
+ echo "[models] No MODEL_URLS provided. Skipping downloads."
10
+ exit 0
11
+ fi
12
+
13
+ mkdir -p "$MODELS_DIR"
14
+ echo "$URLS" | tr ', ' '\n' | while read -r URL; do
15
+ [[ -z "$URL" ]] && continue
16
+ echo "[models] Fetching: $URL"
17
+ # Keep the original filename if possible
18
+ FNAME="$(basename "$URL")"
19
+ TMP="/tmp/${FNAME}.part"
20
+
21
+ # Basic download (supports HTTP(S))
22
+ curl -L --fail --retry 3 -o "$TMP" "$URL"
23
+ # Move into MODELS_DIR after successful download
24
+ mv "$TMP" "${MODELS_DIR}/${FNAME}"
25
+
26
+ # Optional: auto-extract archives
27
+ case "$FNAME" in
28
+ *.zip) echo "[models] Unzipping $FNAME"; unzip -o "${MODELS_DIR}/${FNAME}" -d "${MODELS_DIR}" ;;
29
+ *.tar.gz|*.tgz) echo "[models] Untarring $FNAME"; tar -xzf "${MODELS_DIR}/${FNAME}" -C "${MODELS_DIR}" ;;
30
+ *.xz) echo "[models] Unxz $FNAME"; xz -d -k "${MODELS_DIR}/${FNAME}" ;;
31
+ esac
32
+ done
33
+
34
+ echo "[models] Done."