summaryrefslogtreecommitdiff
path: root/bash-upload.sh
diff options
context:
space:
mode:
authorBenjamin Sanders <hello@bensanders.net>2026-09-18 07:12:07 -0400
committerBenjamin Sanders <hello@bensanders.net>2026-09-18 07:12:07 -0400
commit3ecb8b59e1d08a6dbb81d867ea4376d9bdb25ac2 (patch)
treee09675d3a6a0fed0dece130f3fa51cbd7b89ae64 /bash-upload.sh
parent0c7ad63637b90914d9d9e3cbd04ce1ea96fc24a2 (diff)
added bash-upload.sh
Diffstat (limited to 'bash-upload.sh')
-rwxr-xr-x[-rw-r--r--]bash-upload.sh31
1 files changed, 19 insertions, 12 deletions
diff --git a/bash-upload.sh b/bash-upload.sh
index ae7e3ef..527aad2 100644..100755
--- a/bash-upload.sh
+++ b/bash-upload.sh
@@ -1,20 +1,27 @@
-# Generated by Claude
-
#!/usr/bin/env bash
+# Generated by Claude
set -euo pipefail
+umask 002
SRC="$1"
+CATEGORY="${2:-media}"
+
+HOST="pbs.bsimg.net"
+BASE="/var/www/html"
+
+case "$CATEGORY" in
+ media) SUBDIR="media" ;;
+ profile-pictures) SUBDIR="media/profile-pictures" ;;
+ *) echo "Unknown category: $CATEGORY (expected 'media' or 'profile-pictures')" >&2; exit 1 ;;
+esac
+
HASH=$(sha256sum "$SRC" | cut -c1-10)
+EXT="${SRC##*.}"
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"
+REMOTE_DIR="$BASE/$SUBDIR/$SHARD"
-ssh cdn.bsimg.com "mkdir -p /var/www/bsimg/media/$SHARD"
-rsync -avz "$WORKDIR"/* "cdn.bsimg.com:/var/www/bsimg/media/$SHARD/"
+ssh "$HOST" "mkdir -p $REMOTE_DIR"
+scp "$SRC" "$HOST:$REMOTE_DIR/${HASH}-original.${EXT}"
+ssh "$HOST" "/usr/local/bin/bsimg-process.sh '$REMOTE_DIR' '$HASH' '$EXT'"
-echo "https://bsimg.com/media/${SHARD}/${HASH}" \ No newline at end of file
+echo "https://pbs.bsimg.net/${SUBDIR}/${SHARD}/${HASH}" \ No newline at end of file