change to import .env
This commit is contained in:
parent
8b11035bfb
commit
69da95ce4c
1 changed files with 20 additions and 23 deletions
|
|
@ -1,43 +1,40 @@
|
|||
#!/bin/bash
|
||||
|
||||
# 1. Capture inputs from arguments
|
||||
# Usage: bash provision-minio.sh "${MINIO_NODE_NUMBER}" "${MINIO_BUCKET_REGISTRY}"
|
||||
NODE_NUM=$1
|
||||
BUCKET_LIST=$2
|
||||
DATA_PATH="/docker/minio/data"
|
||||
# 1. Look for the .env file in the periphery folder we standardized
|
||||
ENV_PATH="/docker/p0-infrastructure/minio/.env"
|
||||
|
||||
# Validation
|
||||
if [ -z "$NODE_NUM" ] || [ -z "$BUCKET_LIST" ]; then
|
||||
echo "ERROR: Missing arguments."
|
||||
echo "Usage: bash provision-minio.sh [node_number] [bucket_list]"
|
||||
if [ -f "$ENV_PATH" ]; then
|
||||
export $(grep -v '^#' "$ENV_PATH" | xargs)
|
||||
echo "Successfully loaded variables from $ENV_PATH"
|
||||
else
|
||||
echo "ERROR: Could not find .env at $ENV_PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 2. Now use the variables that were just loaded
|
||||
NODE_NUM="${MINIO_NODE_NUMBER}"
|
||||
BUCKET_LIST="${MINIO_BUCKET_REGISTRY}"
|
||||
DATA_PATH="/docker/p0-infrastructure/minio/data"
|
||||
|
||||
if [ -z "$NODE_NUM" ]; then
|
||||
echo "ERROR: MINIO_NODE_NUMBER not found in .env"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CONTAINER_NAME="minio-node${NODE_NUM}"
|
||||
|
||||
echo "--- S3 Provisioning Started for ${CONTAINER_NAME} ---"
|
||||
|
||||
# 2. Stop the clustered container to avoid file locks during folder creation
|
||||
echo "Stopping ${CONTAINER_NAME}..."
|
||||
docker stop "${CONTAINER_NAME}" 2>/dev/null || true
|
||||
sleep 2
|
||||
|
||||
# 3. Create the directories
|
||||
# We split the space-separated list into a loop
|
||||
for BUCKET in $BUCKET_LIST; do
|
||||
TARGET_DIR="$DATA_PATH/$BUCKET"
|
||||
|
||||
if [ -d "$TARGET_DIR" ]; then
|
||||
echo "OK: Bucket '$BUCKET' exists."
|
||||
else
|
||||
echo "NEW: Creating bucket directory '$BUCKET'..."
|
||||
if [ ! -d "$TARGET_DIR" ]; then
|
||||
echo "NEW: Creating $BUCKET"
|
||||
mkdir -p "$TARGET_DIR"
|
||||
# Ensure the MinIO user (usually 1000) owns the folder
|
||||
chown -R 1000:1000 "$TARGET_DIR"
|
||||
fi
|
||||
done
|
||||
|
||||
# 4. Restart the real container
|
||||
echo "Restarting ${CONTAINER_NAME}..."
|
||||
docker start "${CONTAINER_NAME}"
|
||||
|
||||
echo "--- Provisioning Complete ---"
|
||||
Loading…
Reference in a new issue