#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_DIR="$(dirname "${SCRIPT_DIR}")" if [[ ! -f "${PROJECT_DIR}/.env" ]]; then echo "Erreur : fichier .env introuvable." exit 1 fi set -a source "${PROJECT_DIR}/.env" set +a IMG_NAME="${HUGO_IMAGE}:v${HUGO_VERSION}" read -rp "Nom du site (exemple: fermebossejauque) : " NEW_SITE_NAME if [[ -z "${NEW_SITE_NAME}" ]]; then echo "Erreur : nom du site vide." exit 1 fi if [[ -d "${PROJECT_DIR}/${SITE_DIR}" ]] && [[ "$(ls -A "${PROJECT_DIR}/${SITE_DIR}")" ]]; then echo "Erreur : ${SITE_DIR} existe déjà et n'est pas vide." exit 1 fi mkdir -p "${PROJECT_DIR}/${SITE_DIR}" docker pull "${IMG_NAME}" docker run --rm -it \ --name "${CONTAINER_NAME}-create" \ --entrypoint /bin/sh \ -u 0:0 \ -v "${PROJECT_DIR}:/src" \ "${IMG_NAME}" \ -c " set -e cd /src hugo new site ${SITE_DIR} cd ${SITE_DIR} hugo mod init ${NEW_SITE_NAME} " sed -i "s/^SITE_NAME=.*/SITE_NAME=${NEW_SITE_NAME}/" "${PROJECT_DIR}/.env" sed -i "s/^title = .*/title = \"${NEW_SITE_NAME}\"/" \ "${PROJECT_DIR}/${SITE_DIR}/hugo.toml" cat >> "${PROJECT_DIR}/${SITE_DIR}/hugo.toml" <