Skip to content

Commit 84de984

Browse files
committed
fix makefile targets
This would create several targets which didn't incorporate any version numbers and so wouldn't be updated when version numbers were changed. There were also non-make-ey ways of doings things like variables and folder creation. This also bumps the version of the kubebuilder tools we use Signed-off-by: Ashley Davis <ashley.davis@venafi.com>
1 parent 4b95398 commit 84de984

File tree

1 file changed

+21
-18
lines changed

1 file changed

+21
-18
lines changed

Makefile

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,36 +7,39 @@ IMAGE_TAG := "latest"
77

88
OUT := $(shell pwd)/_out
99

10-
KUBE_VERSION=1.25.0
10+
KUBEBUILDER_VERSION=1.28.0
1111

12-
$(shell mkdir -p "$(OUT)")
13-
export TEST_ASSET_ETCD=_test/kubebuilder/etcd
14-
export TEST_ASSET_KUBE_APISERVER=_test/kubebuilder/kube-apiserver
15-
export TEST_ASSET_KUBECTL=_test/kubebuilder/kubectl
12+
HELM_FILES := $(shell find deploy/example-webhook)
1613

17-
test: _test/kubebuilder
14+
test: _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/etcd _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kube-apiserver _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kubectl
15+
TEST_ASSET_ETCD=_test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/etcd \
16+
TEST_ASSET_KUBE_APISERVER=_test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kube-apiserver \
17+
TEST_ASSET_KUBECTL=_test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kubectl \
1818
$(GO) test -v .
1919

20-
_test/kubebuilder:
21-
curl -fsSL https://go.kubebuilder.io/test-tools/$(KUBE_VERSION)/$(OS)/$(ARCH) -o kubebuilder-tools.tar.gz
22-
mkdir -p _test/kubebuilder
23-
tar -xvf kubebuilder-tools.tar.gz
24-
mv kubebuilder/bin/* _test/kubebuilder/
25-
rm kubebuilder-tools.tar.gz
26-
rm -R kubebuilder
20+
_test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH).tar.gz: | _test
21+
curl -fsSL https://go.kubebuilder.io/test-tools/$(KUBEBUILDER_VERSION)/$(OS)/$(ARCH) -o $@
2722

28-
clean: clean-kubebuilder
23+
_test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/etcd _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kube-apiserver _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)/kubectl: _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH).tar.gz | _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH)
24+
tar xfO $< kubebuilder/bin/$(notdir $@) > $@ && chmod +x $@
2925

30-
clean-kubebuilder:
31-
rm -Rf _test/kubebuilder
26+
.PHONY: clean
27+
clean:
28+
rm -r _test $(OUT)
3229

30+
.PHONY: build
3331
build:
3432
docker build -t "$(IMAGE_NAME):$(IMAGE_TAG)" .
3533

3634
.PHONY: rendered-manifest.yaml
37-
rendered-manifest.yaml:
35+
rendered-manifest.yaml: $(OUT)/rendered-manifest.yaml
36+
37+
$(OUT)/rendered-manifest.yaml: $(HELM_FILES) | $(OUT)
3838
helm template \
3939
--name example-webhook \
4040
--set image.repository=$(IMAGE_NAME) \
4141
--set image.tag=$(IMAGE_TAG) \
42-
deploy/example-webhook > "$(OUT)/rendered-manifest.yaml"
42+
deploy/example-webhook > $@
43+
44+
_test $(OUT) _test/kubebuilder-$(KUBEBUILDER_VERSION)-$(OS)-$(ARCH):
45+
mkdir -p $@

0 commit comments

Comments
 (0)