corrections loop schema + suppr wait for db

This commit is contained in:
Valentin 2024-11-30 02:18:35 +01:00
parent b722f9f4ea
commit f2d7585956
1 changed files with 4 additions and 12 deletions

View File

@ -31,18 +31,8 @@ sed -i "s/^PORT=.*/PORT=${port}/" "/home/${USERNAME}/cms.${DOMAIN_NAME}/.env"
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
sleep 10
# @TODO: check if admin user is created (with schema it did not create the admin user)
docker exec -i "${DOMAIN_NAME}_Directus" sh -c "npx directus bootstrap" docker exec -i "${DOMAIN_NAME}_Directus" sh -c "npx directus bootstrap"
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
do
echo "Database not ready yet... waiting 5 seconds"
sleep 5
done
# @TODO: ask if import db # @TODO: ask if import db
# and prompt "take care of permissions settings" # and prompt "take care of permissions settings"
# else do the install db manipulations # else do the install db manipulations
@ -86,7 +76,9 @@ if [[ "$answer" == "y" ]]; then
can_see_policy_id=$(docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -N -uroot -e "SELECT id FROM directus.directus_policies WHERE name='CanSee'") can_see_policy_id=$(docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -N -uroot -e "SELECT id FROM directus.directus_policies WHERE name='CanSee'")
can_edit_policy_id=$(docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -N -uroot -e "SELECT id FROM directus.directus_policies WHERE name='CanEdit'") can_edit_policy_id=$(docker exec -i "${DOMAIN_NAME}_Directus_DB" mariadb -N -uroot -e "SELECT id FROM directus.directus_policies WHERE name='CanEdit'")
while read collection_name; do collections=$(docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c "mariadb -N -u root directus -e \"SELECT collection FROM directus_collections;\"" | tr -d '\r')
for collection_name in $collections; do
echo $collection_name
docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c " docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c "
mariadb -uroot directus -e \" mariadb -uroot directus -e \"
INSERT INTO directus_permissions (collection, action, permissions, fields, policy) INSERT INTO directus_permissions (collection, action, permissions, fields, policy)
@ -98,7 +90,7 @@ if [[ "$answer" == "y" ]]; then
('${collection_name}', 'delete', '{}', '*', '${can_edit_policy_id}'); ('${collection_name}', 'delete', '{}', '*', '${can_edit_policy_id}');
\" \"
" "
done < <(docker exec -i "${DOMAIN_NAME}_Directus_DB" sh -c "mariadb -N -u root directus -e \"SELECT collection FROM directus_collections;\"") done
fi fi
if ! grep -q "cms.${DOMAIN_NAME}" "$CADDYFILE"; then if ! grep -q "cms.${DOMAIN_NAME}" "$CADDYFILE"; then