wait for db

This commit is contained in:
Valentin 2024-11-30 19:58:01 +01:00
parent 05d4ada5fc
commit 697b859e60
1 changed files with 7 additions and 7 deletions

View File

@ -33,19 +33,19 @@ set_secrets() {
sed -i "s/^SECRET=.*/SECRET=${secret}/" "/home/${USERNAME}/cms.${DOMAIN_NAME}/.env" sed -i "s/^SECRET=.*/SECRET=${secret}/" "/home/${USERNAME}/cms.${DOMAIN_NAME}/.env"
} }
docker_up_create_db() { docker_up() {
docker compose -f "/home/${USERNAME}/cms.${DOMAIN_NAME}/docker-compose.yml" up -d docker compose -f "/home/${USERNAME}/cms.${DOMAIN_NAME}/docker-compose.yml" up -d
echo -e "${PURPLE}${BOLD}Create DB${RESET}"
docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -uroot -e "CREATE DATABASE directus; GRANT ALL PRIVILEGES ON directus.* TO 'root'@'%';"
} }
wait_for_DB() { wait_for_DB() {
echo "Waiting for Directus database to be ready..." echo "Waiting for Directus database to be ready..."
until docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -uroot -e "SELECT 1 FROM directus.directus_roles LIMIT 1" &> /dev/null until docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -uroot -e "SELECT 1" &> /dev/null
do do
echo "Database not ready yet... waiting 5 seconds" echo "Database not ready yet... waiting 5 seconds"
sleep 5 sleep 5
done done
echo -e "${PURPLE}${BOLD}Create DB${RESET}"
docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -uroot -e "CREATE DATABASE directus; GRANT ALL PRIVILEGES ON directus.* TO 'root'@'%';"
} }
echo -e "${PURPLE}${BOLD}Import the Directus database ? (y/N) ${RESET}" echo -e "${PURPLE}${BOLD}Import the Directus database ? (y/N) ${RESET}"
@ -56,7 +56,7 @@ if [[ "$answer" == "y" ]]; then
# do we really need the .env file ? # do we really need the .env file ?
set_port set_port
set_secrets set_secrets
docker_up_create_db docker_up
wait_for_DB wait_for_DB
echo -e "${PURPLE}${BOLD}Import the .tar.gz archive from your local storage${RESET}" echo -e "${PURPLE}${BOLD}Import the .tar.gz archive from your local storage${RESET}"
@ -80,9 +80,9 @@ else
set_admin_credentials set_admin_credentials
set_port set_port
set_secrets set_secrets
docker_up_create_db docker_up
wait_for_DB
docker exec -i "${DOMAIN_NAME}_Directus" sh -c "npx directus bootstrap" docker exec -i "${DOMAIN_NAME}_Directus" sh -c "npx directus bootstrap"
# wait_for_DB
docker cp assets/directus_policies.sql "${DOMAIN_NAME}_Directus_DB:/directus_policies.sql" docker cp assets/directus_policies.sql "${DOMAIN_NAME}_Directus_DB:/directus_policies.sql"
docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c " docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c "