32 lines
1.1 KiB
Bash
Executable File
32 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Configure AWS CLI for R2 uploads
|
|
# Usage: ./configure-r2.sh
|
|
|
|
echo "⚙️ Configuring AWS CLI for R2..."
|
|
|
|
pip install awscli
|
|
|
|
# Clean and trim environment variables (removing any whitespace)
|
|
R2_ENDPOINT="$(echo "$R2_ENDPOINT" | tr -d '[:space:]')"
|
|
R2_ACCESS_KEY_ID="$(echo "$R2_ACCESS_KEY_ID" | tr -d '[:space:]')"
|
|
R2_SECRET_ACCESS_KEY="$(echo "$R2_SECRET_ACCESS_KEY" | tr -d '[:space:]')"
|
|
|
|
# Validate environment variables
|
|
if [ -z "$R2_ENDPOINT" ] || [ -z "$R2_ACCESS_KEY_ID" ] || [ -z "$R2_SECRET_ACCESS_KEY" ]; then
|
|
echo "❌ Missing required R2 credentials"
|
|
exit 1
|
|
fi
|
|
|
|
# Configure AWS CLI for R2 using dedicated profile
|
|
aws configure set --profile R2 aws_access_key_id "$R2_ACCESS_KEY_ID"
|
|
aws configure set --profile R2 aws_secret_access_key "$R2_SECRET_ACCESS_KEY"
|
|
aws configure set --profile R2 region us-east-1
|
|
aws configure set --profile R2 s3.signature_version s3v4
|
|
|
|
# Test connection
|
|
echo "🔍 Testing R2 connection..."
|
|
aws s3 ls s3://prod-downloads/ --endpoint-url "$R2_ENDPOINT" --profile R2 >/dev/null
|
|
echo "✅ R2 connection successful"
|