Files
sicabe-core/deploy/config/minio/buckets.sh
T

31 lines
1.3 KiB
Bash
Raw Normal View History

2026-10-09 02:35:14 +07:00
#!/usr/bin/env bash
# =============================================================================
# MinIO — Inisialisasi Bucket dan Policy
# Referensi arsitektur: bab 4.2.1 (MinIO — Object Storage)
# - 4.2.1.7 Buat bucket awal (iceberg-data)
# - 4.2.1.8 Buat service account dan policy akses
# =============================================================================
set -euo pipefail
MINIO_ALIAS="${MINIO_ALIAS:-sicabe}"
MINIO_ENDPOINT="${MINIO_ENDPOINT:-http://minio:9000}"
MINIO_ROOT_USER="${MINIO_ROOT_USER:-minioadmin}"
MINIO_ROOT_PASSWORD="${MINIO_ROOT_PASSWORD:?err}"
MINIO_BUCKET_ICEBERG_DATA="${MINIO_BUCKET_ICEBERG_DATA:-iceberg-data}"
echo "[MinIO] Configuring alias..."
mc alias set "${MINIO_ALIAS}" "${MINIO_ENDPOINT}" "${MINIO_ROOT_USER}" "${MINIO_ROOT_PASSWORD}"
# ─── Buat bucket awal (4.2.1.7) ──────────────────────────────────────────────
echo "[MinIO] Creating buckets..."
for bucket in "${MINIO_BUCKET_ICEBERG_DATA}"; do
if mc ls "${MINIO_ALIAS}/${bucket}" >/dev/null 2>&1; then
echo "[MinIO] Bucket '${bucket}' already exists, skipping."
else
mc mb "${MINIO_ALIAS}/${bucket}"
echo "[MinIO] Bucket '${bucket}' created."
fi
done
echo "[MinIO] Buckets initialized successfully."