Implementiert Nutzer Verifizierung
Fügt einen Mechanismus zur Nutzerverifizierung per E-Mail ein. Nach der Registrierung wird eine E-Mail mit einem zeitbasierten Verifizierungscode versandt. Der Nutzer muss diesen Code eingeben, um sein Konto zu aktivieren. Die Methode zur Erstellung des Codes ist zeitbasiert und ändert sich alle 15 Minuten.
This commit is contained in:
@@ -3,27 +3,33 @@
|
||||
# === Configuration ===
|
||||
BUCKET_NAME="ibc-db-backup"
|
||||
ENDPOINT_URL="https://s3.eu-central-3.ionoscloud.com"
|
||||
LOCAL_DOWNLOAD_DIR="./" # Where to save the file
|
||||
LOCAL_DOWNLOAD_DIR="./"
|
||||
|
||||
# === Get latest file from IONOS S3 bucket ===
|
||||
LATEST_FILE=$(aws s3api list-objects-v2 \
|
||||
--bucket "$BUCKET_NAME" \
|
||||
--prefix "data-dump" \
|
||||
--endpoint-url "$ENDPOINT_URL" \
|
||||
--query 'Contents | sort_by(@, &LastModified) | [-1].Key' \
|
||||
--output text)
|
||||
# === Use filename from argument if provided ===
|
||||
if [ -n "$1" ]; then
|
||||
LATEST_FILE="$1"
|
||||
else
|
||||
echo "📡 No filename provided, fetching latest..."
|
||||
# === Get latest file from IONOS S3 bucket ===
|
||||
LATEST_FILE=$(aws --profile ionos s3api list-objects-v2 \
|
||||
--bucket "$BUCKET_NAME" \
|
||||
--prefix "full-dump" \
|
||||
--endpoint-url "$ENDPOINT_URL" \
|
||||
--query 'Contents | sort_by(@, &LastModified) | [-1].Key' \
|
||||
--output text)
|
||||
|
||||
# === Check if file was found ===
|
||||
if [ "$LATEST_FILE" == "None" ] || [ -z "$LATEST_FILE" ]; then
|
||||
echo "❌ No matching .sql.br file found."
|
||||
exit 1
|
||||
# === Check if file was found ===
|
||||
if [ "$LATEST_FILE" == "None" ] || [ -z "$LATEST_FILE" ]; then
|
||||
echo "❌ No matching .sql.br file found."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
FILENAME=$(basename "$LATEST_FILE")
|
||||
SQL_FILE="${FILENAME%.br}" # Remove .br suffix
|
||||
|
||||
echo "📥 Downloading $LATEST_FILE"
|
||||
aws s3 cp "s3://$BUCKET_NAME/$LATEST_FILE" "$LOCAL_DOWNLOAD_DIR" \
|
||||
aws --profile ionos s3 cp "s3://$BUCKET_NAME/$LATEST_FILE" "$LOCAL_DOWNLOAD_DIR" \
|
||||
--endpoint-url "$ENDPOINT_URL"
|
||||
|
||||
# === Decompress with Brotli ===
|
||||
@@ -31,8 +37,8 @@ echo "🗜️ Decompressing $FILENAME -> $SQL_FILE"
|
||||
brotli -d "$FILENAME"
|
||||
|
||||
# === Import into Postgres inside Docker ===
|
||||
echo "🐘 Importing into PostgreSQL (online-energieausweis-database-1:main)"
|
||||
docker exec -i "online-energieausweis-database-1" env PGPASSWORD="hHMP8cd^N3SnzGRR" \
|
||||
echo "🐘 Importing into PostgreSQL (database:main)"
|
||||
docker exec -i "database" env PGPASSWORD="hHMP8cd^N3SnzGRR" \
|
||||
psql -U "main" -d "main" < "$SQL_FILE"
|
||||
|
||||
echo "✅ Import complete."
|
||||
|
||||
Reference in New Issue
Block a user