Add dedicated setup.test.sh / restart.test.sh for the staging stack
Both refuse to run unless docker/.env names a non-prod COMPOSE_PROJECT_NAME and scope every compose call to that project. setup.test.sh: like setup.sh but runs the DB/cache/console steps as www-data and repairs var/cache|log|sessions ownership at the end, so php-fpm can read its own compiled cache (bare `docker exec` runs as root -> silent 500s). Never touches var/volumes/db. Test-appropriate final message (NPM upstream, local curl check). restart.test.sh: keeps the database by default (--fresh-db to wipe + re-init), never runs a host-wide docker prune, and only chowns var/cache|log|sessions (chowning var/volumes/db is what corrupted the MySQL data dir). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -19,7 +19,9 @@
|
||||
# Both must be unique on the host.
|
||||
# STACK_NAME -> prefix for every container_name (escapepage-test-php …)
|
||||
# COMPOSE_PROJECT_NAME -> compose project: isolates networks, volumes and the
|
||||
# labels that `docker compose down` / restart.sh act on
|
||||
# labels that `docker compose down` / *.test.sh act on.
|
||||
# Must be a non-prod value or setup.test.sh / restart.test.sh
|
||||
# refuse to run.
|
||||
STACK_NAME=escapepage-test
|
||||
COMPOSE_PROJECT_NAME=escapepage-test
|
||||
|
||||
|
||||
Reference in New Issue
Block a user