@@ -24,9 +24,13 @@ CGID ?= $(LOCAL_GID)
2424# Define network name.
2525COMPOSE_NET_NAME := $(COMPOSE_PROJECT_NAME ) _front
2626
27- # Determine mysql data directory if defined
28- ifeq ($(shell docker-compose config --services | grep mysql) ,mysql)
29- MYSQL_DIR=$(shell cd docker && realpath $(DB_DATA_DIR))/$(COMPOSE_PROJECT_NAME)_mysql
27+ SDC_SERVICES =$(shell docker-compose config --services)
28+ # Determine database data directory if defined
29+ ifeq ($(findstring mysql,$(SDC_SERVICES ) ) ,mysql)
30+ DB_MOUNT_DIR=$(shell cd docker && realpath $(DB_DATA_DIR))/$(COMPOSE_PROJECT_NAME)_mysql
31+ endif
32+ ifeq ($(findstring postgresql,$(SDC_SERVICES ) ) ,postgresql)
33+ DB_MOUNT_DIR=$(shell cd docker && realpath $(DB_DATA_DIR))/$(COMPOSE_PROJECT_NAME)_pgsql
3034endif
3135
3236# Define current directory only once
@@ -59,8 +63,8 @@ ifeq ($(strip $(COMPOSE_PROJECT_NAME)),projectname)
5963 $(info Please review your project settings and run `make all` again.)
6064 exit 1
6165endif
62- ifdef MYSQL_DIR
63- mkdir -p $(MYSQL_DIR ) && chmod 777 $(MYSQL_DIR )
66+ ifdef DB_MOUNT_DIR
67+ $(shell [ ! -d $(DB_MOUNT_DIR) ] && mkdir -p $(DB_MOUNT_DIR ) && chmod 777 $(DB_MOUNT_DIR) )
6468endif
6569 make -s down
6670 @echo "Updating containers..."
@@ -148,9 +152,9 @@ clean: info
148152 make -s down
149153 $(eval SCAFFOLD = $(shell docker run --rm -v $(CURDIR ) :/mnt -w /mnt --user $(CUID ) :$(CGID ) $(IMAGE_PHP ) composer run-script list-scaffold-files | grep -P '^(?!>) ') )
150154 @docker run --rm --user 0:0 -v $(CURDIR ) :/mnt -w /mnt -e RMLIST=" $( addprefix web/,$( SCAFFOLD) ) $( DIRS) " $(IMAGE_PHP ) sh -c ' for i in $$RMLIST; do rm -fr $$i && echo "Removed $$i"; done'
151- ifdef MYSQL_DIR
152- @echo "Removing mysql data from $(MYSQL_DIR ) ..."
153- docker run --rm --user 0:0 -v $(shell dirname $(MYSQL_DIR )):/mnt $(IMAGE_PHP) sh -c "rm -fr /mnt/`basename $(MYSQL_DIR )`"
155+ ifdef DB_MOUNT_DIR
156+ @echo "Clean-up database data from $(DB_MOUNT_DIR ) ..."
157+ docker run --rm --user 0:0 -v $(shell dirname $(DB_MOUNT_DIR )):/mnt $(IMAGE_PHP) sh -c "rm -fr /mnt/`basename $(DB_MOUNT_DIR )`"
154158endif
155159ifeq ($(CLEAR_FRONT_PACKAGES ) , yes)
156160 make clear-front
0 commit comments