@@ -20,7 +20,8 @@ ILAB_KUBE_CONTEXT?=kind-instructlab-ui
20
20
ILAB_KUBE_NAMESPACE? =instructlab
21
21
ILAB_KUBE_CLUSTER_NAME? =instructlab-ui
22
22
CONTAINER_ENGINE? =docker
23
- DEVCONTAINER_BINARY_EXISTS ?= $(shell command -v devcontainer)
23
+ DEVCONTAINER_BINARY_EXISTS? =$(shell command -v devcontainer)
24
+ DEVCONTAINER_DEFAULT_SHELL? =zsh
24
25
TAG =$(shell git rev-parse HEAD)
25
26
# #@ Development - Helper commands for development
26
27
.PHONY : md-lint
@@ -111,6 +112,14 @@ check-kubectl:
111
112
exit 1 ; \
112
113
fi
113
114
115
+ .PHONY : check-kubeseal
116
+ check-kubeseal :
117
+ $(CMD_PREFIX ) if [ -z " $( shell which kubeseal) " ]; then \
118
+ echo " Please install kubeseal" ; \
119
+ echo " https://github.com/bitnami-labs/sealed-secrets?tab=readme-ov-file#kubeseal" ; \
120
+ exit 1 ; \
121
+ fi
122
+
114
123
.PHONY : load-images
115
124
load-images : # # Load images onto Kind cluster
116
125
$(CMD_PREFIX ) kind load --name $(ILAB_KUBE_CLUSTER_NAME ) docker-image ghcr.io/instructlab/ui/ui:main
@@ -130,8 +139,8 @@ wait-for-readiness: # Wait for operators to be ready
130
139
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) -n ingress-nginx rollout restart deployment ingress-nginx-controller
131
140
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) -n ingress-nginx rollout status deployment ingress-nginx-controller --timeout=10m
132
141
133
- .PHONY : deploy
134
- deploy : wait-for-readiness # # Deploy a InstructLab UI development stack onto a kubernetes cluster
142
+ .PHONY : deploy-kind
143
+ deploy-kind : wait-for-readiness # # Deploy a InstructLab UI development stack onto a kubernetes cluster
135
144
$(CMD_PREFIX ) if [ ! -f .env ]; then \
136
145
echo " Please create a .env file in the root of the project." ; \
137
146
exit 1 ; \
@@ -140,20 +149,20 @@ deploy: wait-for-readiness ## Deploy a InstructLab UI development stack onto a k
140
149
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) apply -k ./deploy/k8s/overlays/kind
141
150
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) wait --for=condition=Ready pods -n $(ILAB_KUBE_NAMESPACE ) --all -l app.kubernetes.io/part-of=ui --timeout=15m
142
151
143
- .PHONY : redeploy
144
- redeploy : ui-image load-images # # Redeploy the InstructLab UI stack onto a kubernetes cluster
152
+ .PHONY : redeploy-kind
153
+ redeploy-kind : ui-image load-images # # Redeploy the InstructLab UI stack onto a kubernetes cluster
145
154
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) -n $(ILAB_KUBE_NAMESPACE ) rollout restart deploy/ui
146
155
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) -n $(ILAB_KUBE_NAMESPACE ) rollout restart deploy/pathservice
147
156
148
- .PHONY : undeploy
149
- undeploy : # # Undeploy the InstructLab UI stack from a kubernetes cluster
157
+ .PHONY : undeploy-kind
158
+ undeploy-kind : # # Undeploy the InstructLab UI stack from a kubernetes cluster
150
159
$(CMD_PREFIX ) if [ -f ./deploy/k8s/overlays/kind/.env ]; then \
151
160
rm ./deploy/k8s/overlays/kind/.env ; \
152
161
fi
153
162
$(CMD_PREFIX ) kubectl --context=$(ILAB_KUBE_CONTEXT ) delete namespace $(ILAB_KUBE_NAMESPACE )
154
163
155
164
.PHONY : start-dev-kind # # Run the development environment on Kind cluster
156
- start-dev-kind : setup-kind deploy # # Setup a Kind cluster and deploy InstructLab UI on it
165
+ start-dev-kind : setup-kind load-images deploy-kind # # Setup a Kind cluster and deploy InstructLab UI on it
157
166
158
167
# #@ OpenShift - UI prod and qa deployment on OpenShift
159
168
.PHONY : deploy-qa-openshift
@@ -162,7 +171,6 @@ deploy-qa-openshift: ## Deploy QA stack of the InstructLab UI on OpenShift
162
171
echo " Please create a .env file in the root of the project." ; \
163
172
exit 1 ; \
164
173
fi
165
-
166
174
$(CMD_PREFIX ) yes | cp -rf .env ./deploy/k8s/overlays/openshift/qa/.env
167
175
$(CMD_PREFIX ) oc apply -k ./deploy/k8s/overlays/openshift/qa
168
176
$(CMD_PREFIX ) oc wait --for=condition=Ready pods -n $(ILAB_KUBE_NAMESPACE ) --all -l app.kubernetes.io/part-of=ui --timeout=15m
@@ -172,7 +180,6 @@ redeploy-qa-openshift: ## Redeploy QA stack of the InstructLab UI on OpenShift
172
180
$(CMD_PREFIX ) oc -n $(ILAB_KUBE_NAMESPACE ) rollout restart deploy/ui
173
181
$(CMD_PREFIX ) oc -n $(ILAB_KUBE_NAMESPACE ) rollout restart deploy/pathservice
174
182
175
-
176
183
.PHONY : undeploy-qa-openshift
177
184
undeploy-qa-openshift : # # Undeploy QA stack of the InstructLab UI on OpenShift
178
185
$(CMD_PREFIX ) oc delete -k ./deploy/k8s/overlays/openshift/qa
@@ -224,7 +231,7 @@ start-dev-container:
224
231
.PHONY : enter-dev-container
225
232
enter-dev-container :
226
233
$(MAKE ) check-dev-container-installed
227
- devcontainer exec --workspace-folder=./ --docker-path=${CONTAINER_ENGINE} bash
234
+ devcontainer exec --workspace-folder=./ --docker-path=${CONTAINER_ENGINE} ${DEVCONTAINER_DEFAULT_SHELL}
228
235
229
236
.PHONY : cycle-dev-container
230
237
cycle-dev-container :
0 commit comments