14
14
15
15
# Build the node-problem-detector image.
16
16
17
- .PHONY : all build-container build-tar build push-container push-tar push clean vet fmt version Dockerfile
17
+ .PHONY : all build-container build-tar build push-container push-tar push clean vet fmt version \
18
+ Dockerfile build-binaries docker-builder build-in-docker
18
19
19
20
all : build
20
21
@@ -46,7 +47,6 @@ IMAGE:=$(REGISTRY)/node-problem-detector:$(TAG)
46
47
47
48
# ENABLE_JOURNALD enables build journald support or not. Building journald support needs libsystemd-dev
48
49
# or libsystemd-journal-dev.
49
- # TODO(random-liu): Build NPD inside container.
50
50
ENABLE_JOURNALD? =1
51
51
52
52
# TODO(random-liu): Support different architectures.
@@ -93,7 +93,9 @@ Dockerfile: Dockerfile.in
93
93
test : vet fmt
94
94
go test -timeout=1m -v -race ./cmd/options ./pkg/... $(BUILD_TAGS )
95
95
96
- build-container : ./bin/node-problem-detector ./bin/log-counter Dockerfile
96
+ build-binaries : ./bin/node-problem-detector ./bin/log-counter
97
+
98
+ build-container : build-binaries Dockerfile
97
99
docker build -t $(IMAGE ) .
98
100
99
101
build-tar : ./bin/node-problem-detector ./bin/log-counter
@@ -103,6 +105,12 @@ build-tar: ./bin/node-problem-detector ./bin/log-counter
103
105
104
106
build : build-container build-tar
105
107
108
+ docker-builder :
109
+ docker build -t npd-builder ./builder
110
+
111
+ build-in-docker : clean docker-builder
112
+ docker run -v ` pwd` :/gopath/src/k8s.io/node-problem-detector/ npd-builder:latest bash -c ' cd /gopath/src/k8s.io/node-problem-detector/ && make build-binaries'
113
+
106
114
push-container : build-container
107
115
gcloud docker -- push $(IMAGE )
108
116
0 commit comments