-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathMakefile
More file actions
77 lines (58 loc) · 2.09 KB
/
Makefile
File metadata and controls
77 lines (58 loc) · 2.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
.PHONY: build load all deploy exec log lint
.IGNORE: delete
SHELL := /bin/bash
.SHELLFLAGS := -eu -o pipefail -c
CONTAINER_RUNTIME ?= $(shell command -v docker >/dev/null 2>&1 && echo docker || echo podman)
# Base image name (without any prefix)
IMAGE_BASE ?= plugins-adapter
#IMAGE_TAG ?= latest
IMAGE_TAG ?= 0.1.0
# Handle runtime-specific image naming
ifeq ($(CONTAINER_RUNTIME),podman)
# Podman adds localhost/ prefix for local builds
IMAGE_LOCAL := localhost/$(IMAGE_BASE):$(IMAGE_TAG)
IMAGE_LOCAL_DEV := localhost/$(IMAGE_BASE)-dev:$(IMAGE_TAG)
IMAGE_PUSH := $(IMAGE_BASE):$(IMAGE_TAG)
else
# Docker doesn't add prefix
IMAGE_LOCAL := $(IMAGE_BASE):$(IMAGE_TAG)
IMAGE_LOCAL_DEV := $(IMAGE_BASE)-dev:$(IMAGE_TAG)
IMAGE_PUSH := $(IMAGE_BASE):$(IMAGE_TAG)
endif
# Build the combined broker and router
build:
$(CONTAINER_RUNTIME) build -t $(IMAGE_LOCAL) . --build-arg PLUGIN_DEPS=${PLUGIN_DEPS}
load:
kind load docker-image $(IMAGE_LOCAL) --name mcp-gateway
podname := $(shell kubectl get pods -A |grep my-extproc | grep -v Terminating | awk '{print $$2}')
logs:
kubectl logs -n istio-system -l app=plugins-adapter -f --since=0
exec:
kubectl exec -ti ${podname} -n istio-system -- bash
delete: IMAGE=$(IMAGE_PUSH)
delete:
kubectl delete -f ext-proc.yaml
deploy:
kubectl apply -f ext-proc.yaml
kubectl apply -f filter.yaml
lint:
pre-commit run --all-files
redeploy: delete deploy
push_image_quay: build
$(CONTAINER_RUNTIME) tag $(IMAGE_LOCAL) quay.io/julian_stephen/$(IMAGE_PUSH)
$(CONTAINER_RUNTIME) push quay.io/julian_stephen/$(IMAGE_PUSH)
all: build load redeploy
@echo "All done!"
port-forward-nemo:
kubectl port-forward -n istio-system service/nemo-guardrails-service 8000:8000
deploy_quay: IMAGE=quay.io/julian_stephen/$(IMAGE_PUSH)
deploy_quay:
$(CONTAINER_RUNTIME) pull $(IMAGE)
$(CONTAINER_RUNTIME) tag $(IMAGE) $(IMAGE_LOCAL)
kind load docker-image $(IMAGE_LOCAL) --name mcp-gateway
kubectl apply -f ext-proc.yaml
kubectl apply -f filter.yaml
dev-run-nemocheck:
export PYTHONPATH="${PYTHONPATH}:."; \
pip install -e plugins/examples/nemocheck; \
python src/server.py