33 lines
1.2 KiB
Bash
Executable File
33 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Заливка собранного MkDocs-сайта (site/) в S3-реестр (bucket terraform-registry).
|
|
# Без версии: docs/<namespace>/<name>/ — перезаписывается (mc mirror).
|
|
|
|
# Usage: publish-docs.sh <site-dir> <registry-host> <namespace> <name>
|
|
SITE_DIR=${1:-site}
|
|
REGISTRY_HOST=${2:-tf-registry.containerk8s.services.ngcloud.ru}
|
|
NAMESPACE=${3:-nubes}
|
|
NAME=${4:-nubes}
|
|
|
|
# Support both S3_* (New Standard) and MINIO_* (Legacy) variables
|
|
ENDPOINT=${S3_ENDPOINT:-${MINIO_ENDPOINT:-}}
|
|
ACCESS_KEY=${S3_ACCESS_KEY:-${MINIO_ACCESS_KEY:-}}
|
|
SECRET_KEY=${S3_SECRET_KEY:-${MINIO_SECRET_KEY:-}}
|
|
|
|
if [ -z "$ENDPOINT" ] || [ -z "$ACCESS_KEY" ] || [ -z "$SECRET_KEY" ]; then
|
|
echo "Error: S3_ENDPOINT/S3_ACCESS_KEY/S3_SECRET_KEY must be set"
|
|
exit 2
|
|
fi
|
|
|
|
MC_ALIAS=registry
|
|
mc alias set $MC_ALIAS "$ENDPOINT" "$ACCESS_KEY" "$SECRET_KEY" --api S3v4
|
|
TARGET="${MC_ALIAS}/terraform-registry/docs/${NAMESPACE}/${NAME}/"
|
|
|
|
# Перезапись + удаление лишнего (без версии)
|
|
mc mirror --overwrite --remove "$SITE_DIR/" "$TARGET"
|
|
# Публичная политика на бакет
|
|
mc policy set public "$TARGET" || true
|
|
|
|
echo "Published docs to: https://${REGISTRY_HOST}/${NAMESPACE}/"
|