@@ -4,6 +4,9 @@ SOURCES := $(shell \
44
55BUF := github.com/bufbuild/buf/cmd/buf@v1.32.1
66
7+ # Detect Docker Compose command - prefer 'docker compose' over 'docker-compose'
8+ DOCKER_COMPOSE := $(shell if command -v docker >/dev/null 2>&1 && docker compose version >/dev/null 2>&1; then echo "docker compose"; elif command -v docker-compose >/dev/null 2>&1; then echo "docker-compose"; else echo "docker-compose"; fi)
9+
710.PHONY : help
811help : Makefile # # Show list of commands.
912 @echo " Choose a command to run in " $(APP_NAME ) " :"
@@ -152,25 +155,25 @@ migrate: ## Execute migration.
152155.PHONY : deps/up
153156deps/up : # # Create containers dependencies.
154157 @echo " Creating dependencies "
155- @docker-compose up -d --build
158+ @$( DOCKER_COMPOSE ) up -d --build
156159 @echo " Dependencies created successfully."
157160
158161.PHONY : deps/start
159162deps/start : # # Start containers dependencies.
160163 @echo " Starting dependencies "
161- @docker-compose start
164+ @$( DOCKER_COMPOSE ) start
162165 @echo " Dependencies started successfully."
163166
164167.PHONY : deps/stop
165168deps/stop : # # Stop containers dependencies.
166169 @echo " Stopping dependencies "
167- @docker-compose stop
170+ @$( DOCKER_COMPOSE ) stop
168171 @echo " Dependencies stopped successfully."
169172
170173.PHONY : deps/down
171174deps/down : # # Delete containers dependencies.
172175 @echo " Deleting dependencies "
173- @docker-compose down
176+ @$( DOCKER_COMPOSE ) down
174177 @echo " Dependencies deleted successfully."
175178
176179
@@ -179,16 +182,18 @@ deps/down: ## Delete containers dependencies.
179182# -------------------------------------------------------------------------------
180183.PHONY : maestro/start
181184maestro/start : k3d/up build # # Start Maestro with all of its dependencies.
182- @echo " Starting maestro..."
183- @cd ./e2e/framework/maestro; docker compose up --build -d
185+ @echo " Starting maestro dependencies (postgres, redis)..."
186+ @cd ./e2e/framework/maestro; $(DOCKER_COMPOSE ) up -d postgres redis
187+ @echo " Running database migrations..."
184188 @MAESTRO_MIGRATION_PATH=" file://internal/service/migrations" go run main.go migrate;
185- @cd ./e2e/framework/maestro; docker compose up --build -d worker runtime-watcher # Worker and watcher do not work before migration, so we start them after it.
189+ @echo " Starting maestro application services..."
190+ @cd ./e2e/framework/maestro; $(DOCKER_COMPOSE ) up --build -d
186191 @echo " Maestro is up and running!"
187192
188193.PHONY : maestro/down
189194maestro/down : k3d/down # # Delete Maestro and all of its dependencies.
190195 @echo " Deleting maestro..."
191- @cd ./e2e/framework/maestro; docker compose down
196+ @cd ./e2e/framework/maestro; $( DOCKER_COMPOSE ) down
192197 @$(MAKE ) k3d/down
193198 @echo " Maestro was deleted with success!"
194199
@@ -201,7 +206,7 @@ K3D_CLUSTER_NAME ?= maestro-dev
201206.PHONY : k3d/up
202207k3d/up : # # Create/Start the k3d cluster via docker-compose.
203208 @echo " INFO: Ensuring k3d service is up and cluster '$( K3D_CLUSTER_NAME) ' is created via docker-compose..."
204- @docker-compose up -d k3d
209+ @$( DOCKER_COMPOSE ) up -d k3d
205210 @echo " INFO: Waiting for k3d cluster and kubeconfig file at ./e2e/framework/maestro/.k3d-kubeconfig.yaml..."
206211 @timeout=120; \
207212 interval=5; \
@@ -221,13 +226,13 @@ k3d/up: ## Create/Start the k3d cluster via docker-compose.
221226.PHONY : k3d/down
222227k3d/down : # # Delete the local k3d cluster and stop the k3d docker-compose service.
223228 @echo " INFO: Attempting to delete k3d cluster '$( K3D_CLUSTER_NAME) ' via k3d service (if running)..."
224- @if docker-compose ps k3d | grep -q " k3d" ; then \
225- docker-compose exec k3d k3d cluster delete $(K3D_CLUSTER_NAME ) || echo " INFO: k3d cluster delete command failed or cluster was not found." ; \
229+ @if $( DOCKER_COMPOSE ) ps k3d | grep -q " k3d" ; then \
230+ $( DOCKER_COMPOSE ) exec k3d k3d cluster delete $(K3D_CLUSTER_NAME ) || echo " INFO: k3d cluster delete command failed or cluster was not found." ; \
226231 else \
227232 echo " INFO: k3d service not running, skipping cluster deletion command." ; \
228233 fi
229234 @echo " INFO: Stopping and removing k3d service..."
230- @docker-compose rm -sf k3d
235+ @$( DOCKER_COMPOSE ) rm -sf k3d
231236 @echo " INFO: Removing k3d kubeconfig file..."
232237 @rm -f ./e2e/framework/maestro/.k3d-kubeconfig.yaml
233238 @echo " INFO: k3d cluster and service are down."
0 commit comments