Files
Minikura/operator/Makefile
T

57 lines
1.2 KiB
Makefile
Raw Normal View History

2026-08-13 01:57:26 +07:00
IMG ?= minikura-operator:latest
NAMESPACE ?= minikura
2026-08-13 02:18:51 +07:00
CONTROLLER_GEN_VERSION ?= v0.20.0
2026-08-13 01:57:26 +07:00
CONTROLLER_GEN ?= $(shell go env GOPATH)/bin/controller-gen
.PHONY: all
all: generate manifests fmt vet test build
.PHONY: controller-gen
controller-gen:
2026-08-13 02:18:51 +07:00
@test -x $(CONTROLLER_GEN) || go install sigs.k8s.io/controller-tools/cmd/controller-gen@$(CONTROLLER_GEN_VERSION)
2026-08-13 01:57:26 +07:00
.PHONY: generate
generate: controller-gen
$(CONTROLLER_GEN) object:headerFile=/dev/null paths=./api/...
.PHONY: manifests
manifests: controller-gen
$(CONTROLLER_GEN) crd paths=./api/... output:crd:artifacts:config=config/crd
$(CONTROLLER_GEN) rbac:roleName=minikura-operator-role paths=./internal/... output:rbac:artifacts:config=config/rbac
.PHONY: fmt
fmt:
go fmt ./...
.PHONY: vet
vet:
go vet ./...
.PHONY: test
test:
go test ./... -race
.PHONY: build
build:
go build -o bin/operator ./cmd
.PHONY: run
run:
go run ./cmd --leader-elect=false
.PHONY: docker-build
docker-build:
docker build -t $(IMG) .
.PHONY: install-crds
2026-08-13 03:29:29 +07:00
install-crds:
2026-08-13 01:57:26 +07:00
kubectl apply -f config/crd
.PHONY: uninstall-crds
uninstall-crds:
kubectl delete --ignore-not-found -f config/crd
.PHONY: deploy
2026-08-13 03:29:29 +07:00
deploy:
KUBERNETES_NAMESPACE="$(NAMESPACE)" OPERATOR_IMAGE="$(IMG)" bash ../scripts/install.sh