summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bash-upload.sh20
1 files changed, 20 insertions, 0 deletions
diff --git a/bash-upload.sh b/bash-upload.sh
new file mode 100644
index 0000000..ae7e3ef
--- /dev/null
+++ b/bash-upload.sh
@@ -0,0 +1,20 @@
+# Generated by Claude
+
+#!/usr/bin/env bash
+set -euo pipefail
+
+SRC="$1"
+HASH=$(sha256sum "$SRC" | cut -c1-10)
+SHARD="${HASH:0:2}/${HASH:2:2}"
+WORKDIR=$(mktemp -d)
+
+for size in thumb:200 medium:800 large:1600; do
+ name="${size%%:*}"; px="${size##*:}"
+ magick "$SRC" -resize "${px}x${px}>" "$WORKDIR/${HASH}-${name}.jpg"
+done
+cp "$SRC" "$WORKDIR/${HASH}-original.jpg"
+
+ssh cdn.bsimg.com "mkdir -p /var/www/bsimg/media/$SHARD"
+rsync -avz "$WORKDIR"/* "cdn.bsimg.com:/var/www/bsimg/media/$SHARD/"
+
+echo "https://bsimg.com/media/${SHARD}/${HASH}" \ No newline at end of file