#!/usr/bin/env bash # ============================================================================= # Rychlý test SeaweedFS S3 API přes AWS CLI. # Předpoklad: nainstalované awscli (pip install awscli / apt install awscli) # # Použití: # ./test_s3.sh # použije defaulty níže # S3=http://192.168.1.50:8333 AK=admin SK=tajne ./test_s3.sh # ============================================================================= set -euo pipefail S3="${S3:-http://UNRAID-IP:8333}" AK="${AK:-ZMEN_ME_admin}" SK="${SK:-ZMEN_ME_tajny_klic_dlouhy_nahodny}" BUCKET="${BUCKET:-test-bucket}" export AWS_ACCESS_KEY_ID="$AK" export AWS_SECRET_ACCESS_KEY="$SK" export AWS_DEFAULT_REGION="us-east-1" AWS=(aws --endpoint-url "$S3") echo "== 1) vytvoření bucketu ==" "${AWS[@]}" s3 mb "s3://$BUCKET" || true echo "== 2) upload souboru ==" echo "ahoj ze SeaweedFS $(date)" > /tmp/sw_test.txt "${AWS[@]}" s3 cp /tmp/sw_test.txt "s3://$BUCKET/hello.txt" echo "== 3) výpis bucketu ==" "${AWS[@]}" s3 ls "s3://$BUCKET/" echo "== 4) stažení zpět a kontrola ==" "${AWS[@]}" s3 cp "s3://$BUCKET/hello.txt" /tmp/sw_back.txt diff /tmp/sw_test.txt /tmp/sw_back.txt && echo "OK: obsah sedí" echo "== 5) úklid ==" "${AWS[@]}" s3 rm "s3://$BUCKET/hello.txt" echo "Hotovo."