8
8
@echo " ui - Open Metaflow UI"
9
9
@echo " dashboard - Open Minikube dashboard"
10
10
@echo " down - Stop and clean up the environment"
11
+ @echo " all-up - Start the development environment with all services"
11
12
@echo " help - Show this help message"
12
13
13
14
HELM_VERSION := v3.14.0
@@ -24,10 +25,10 @@ MINIKUBE := $(MINIKUBE_DIR)/minikube
24
25
TILT_DIR := $(DEVTOOLS_DIR ) /tilt
25
26
TILT := $(TILT_DIR ) /tilt
26
27
TILTFILE := $(MKFILE_DIR ) /Tiltfile
27
- MAKE_CMD := $(MAKE ) -C "$(MKFILE_DIR ) "
28
+ MAKE_CMD := $(MAKE ) -f "$(MKFILE_PATH ) "
28
29
29
30
MINIKUBE_CPUS ?= 4
30
- MINIKUBE_MEMORY ?= 6000
31
+ MINIKUBE_MEMORY ?= 6144
31
32
MINIKUBE_DISK_SIZE ?= 20g
32
33
33
34
ifeq ($(shell uname) , Darwin)
@@ -129,7 +130,8 @@ setup-minikube:
129
130
--cpus $(MINIKUBE_CPUS ) \
130
131
--memory $(MINIKUBE_MEMORY ) \
131
132
--disk-size $(MINIKUBE_DISK_SIZE ) \
132
- --driver docker; \
133
+ --driver docker \
134
+ || { echo " ❌ Failed to start Minikube (check if Docker is running)" ; exit 1; }; \
133
135
echo " 🔌 Enabling metrics-server and dashboard (quietly)..." ; \
134
136
$(MINIKUBE ) addons enable metrics-server > /dev/null 2>&1 ; \
135
137
$(MINIKUBE ) addons enable dashboard > /dev/null 2>&1 ; \
@@ -170,7 +172,6 @@ up: install-brew check-docker install-curl install-gum setup-minikube install-he
170
172
@echo ' trap "exit" INT TERM' >> $(DEVTOOLS_DIR ) /start.sh
171
173
@echo ' trap "kill 0" EXIT' >> $(DEVTOOLS_DIR ) /start.sh
172
174
@echo ' eval $$($(MINIKUBE) docker-env)' >> $(DEVTOOLS_DIR ) /start.sh
173
-
174
175
@echo ' if [ -n "$$SERVICES_OVERRIDE" ]; then' >> " $( DEVTOOLS_DIR) /start.sh"
175
176
@echo ' echo "🌐 Using user-provided list of services: $$SERVICES_OVERRIDE"' >> " $( DEVTOOLS_DIR) /start.sh"
176
177
@echo ' SERVICES="$$SERVICES_OVERRIDE"' >> " $( DEVTOOLS_DIR) /start.sh"
@@ -186,11 +187,14 @@ up: install-brew check-docker install-curl install-gum setup-minikube install-he
186
187
@chmod +x $(DEVTOOLS_DIR ) /start.sh
187
188
@$(DEVTOOLS_DIR ) /start.sh
188
189
190
+ all-up :
191
+ @echo " 🚀 Starting up all services..."
192
+ SERVICES_OVERRIDE=all $(MAKE_CMD ) up
193
+
189
194
down :
190
195
@echo " 🛑 Stopping all services..."
191
196
@-pkill -f " $( MINIKUBE) tunnel" 2> /dev/null || true
192
197
@echo " ⏹️ Stopping Tilt..."
193
- -PATH=" $( MINIKUBE_DIR) :$( TILT_DIR) :$$ PATH" tilt down -f $(TILTFILE )
194
198
@echo " 🧹 Cleaning up Minikube..."
195
199
$(MAKE_CMD ) teardown-minikube
196
200
@echo " 🗑️ Removing Tilt binary and directory..."
@@ -201,7 +205,7 @@ down:
201
205
202
206
shell : setup-tilt
203
207
@echo " ⏳ Checking if development environment is up..."
204
- @set -e ; \
208
+ @set -eu ; \
205
209
for i in $$ (seq 1 90); do \
206
210
if " $( TILT) " get session > /dev/null 2>&1 ; then \
207
211
found_session=1; \
@@ -210,7 +214,7 @@ shell: setup-tilt
210
214
sleep 2; \
211
215
fi ; \
212
216
done ; \
213
- if [ -z " $$ {found_session}" ]; then \
217
+ if [ -z " $$ {found_session:- }" ]; then \
214
218
echo " ❌ Development environment is not up." ; \
215
219
echo " Please run 'metaflow-dev up' in another terminal, then re-run 'metaflow-dev shell'." ; \
216
220
exit 1; \
@@ -220,7 +224,10 @@ shell: setup-tilt
220
224
" $( TILT) " get uiresource generate-configs > /dev/null 2>&1 ; \
221
225
status=$$? ; \
222
226
if [ $$ status -eq 0 ]; then \
223
- " $( TILT) " wait --for=condition=Ready uiresource/generate-configs; \
227
+ if ! " $( TILT) " wait --for=condition=Ready uiresource/generate-configs --timeout=300s; then \
228
+ echo " ❌ Timed out waiting for development environment to be ready." ; \
229
+ exit 1; \
230
+ fi ; \
224
231
break ; \
225
232
elif [ $$ status -eq 127 ]; then \
226
233
echo " ❌ Development environment is not up." ; \
@@ -267,7 +274,10 @@ create-dev-shell: setup-tilt
267
274
echo " fi" >> $$ SHELL_PATH && \
268
275
echo " " >> $$ SHELL_PATH && \
269
276
echo " echo \" ⏳ Waiting for development environment to be ready...\" " >> $$ SHELL_PATH && \
270
- echo " $( TILT) wait --for=condition=Ready uiresource/generate-configs" >> $$ SHELL_PATH && \
277
+ echo " if ! $( TILT) wait --for=condition=Ready uiresource/generate-configs --timeout=300s; then" >> $$ SHELL_PATH && \
278
+ echo " echo \" ❌ Timed out waiting for development environment to be ready.\" " >> $$ SHELL_PATH && \
279
+ echo " exit 1" >> $$ SHELL_PATH && \
280
+ echo " fi" >> $$ SHELL_PATH && \
271
281
echo " " >> $$ SHELL_PATH && \
272
282
echo " echo \" 🔧 Starting a new shell for development environment...\" " >> $$ SHELL_PATH && \
273
283
echo " if [ -n \"\$ $SHELL \" ]; then" >> $$ SHELL_PATH && \
@@ -317,6 +327,6 @@ ui: setup-tilt
317
327
@echo " 🔗 Opening Metaflow UI at http://localhost:3000"
318
328
@open http://localhost:3000
319
329
320
- .PHONY : install-helm setup-minikube setup-tilt teardown-minikube tunnel up down check-docker install-curl install-gum install-brew up down dashboard shell ui help
330
+ .PHONY : install-helm setup-minikube setup-tilt teardown-minikube tunnel up down check-docker install-curl install-gum install-brew up down dashboard shell ui all-up help
321
331
322
332
.DEFAULT_GOAL := up
0 commit comments