Skip to content
This repository was archived by the owner on Mar 22, 2018. It is now read-only.

Commit 1f06f1a

Browse files
committed
add Dockerfile for provisioner and cleanup make file
1 parent ec517d3 commit 1f06f1a

2 files changed

Lines changed: 53 additions & 7 deletions

File tree

Makefile

Lines changed: 34 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,32 +24,34 @@ REGISTRY ?= dims
2424
# CTI targets
2525

2626
depend: work
27-
cd $(DEST) && glide install --strip-vendor
27+
ifeq ($(wildcard $(DEST)/vendor/.*),)
28+
cd $(DEST) && glide install --strip-vendor
29+
endif
2830

2931
depend-update: work
3032
cd $(DEST) && glide update
3133

32-
build: depend openstack-cloud-controller-manager cinder-provisioner cinder-flex-volume-driver k8s-keystone-auth
34+
build: openstack-cloud-controller-manager cinder-provisioner cinder-flex-volume-driver k8s-keystone-auth
3335

34-
openstack-cloud-controller-manager: $(SOURCES)
36+
openstack-cloud-controller-manager: depend $(SOURCES)
3537
cd $(DEST) && CGO_ENABLED=0 GOOS=$(GOOS) go build \
3638
-ldflags "-X 'main.version=${VERSION}'" \
3739
-o openstack-cloud-controller-manager \
3840
cmd/openstack-cloud-controller-manager/main.go
3941

40-
cinder-provisioner: $(SOURCES)
42+
cinder-provisioner: depend $(SOURCES)
4143
cd $(DEST) && CGO_ENABLED=0 GOOS=$(GOOS) go build \
4244
-ldflags "-X 'main.version=${VERSION}'" \
4345
-o cinder-provisioner \
4446
cmd/cinder-provisioner/main.go
4547

46-
cinder-flex-volume-driver: $(SOURCES)
48+
cinder-flex-volume-driver: depend $(SOURCES)
4749
cd $(DEST) && CGO_ENABLED=0 GOOS=$(GOOS) go build \
4850
-ldflags "-X 'main.version=${VERSION}'" \
4951
-o cinder-flex-volume-driver \
5052
cmd/cinder-flex-volume-driver/main.go
5153

52-
k8s-keystone-auth: $(SOURCES)
54+
k8s-keystone-auth: depend $(SOURCES)
5355
cd $(DEST) && CGO_ENABLED=0 GOOS=$(GOOS) go build \
5456
-ldflags "-X 'main.version=${VERSION}'" \
5557
-o k8s-keystone-auth \
@@ -132,19 +134,44 @@ realclean: clean
132134
shell: work
133135
cd $(DEST) && $(SHELL) -i
134136

135-
build-image: build
137+
images: image-controller-manager image-flex-volume-driver image-provisioner image-k8s-keystone-auth
138+
139+
image-controller-manager: depend openstack-cloud-controller-manager
136140
ifeq ($(GOOS),linux)
137141
cp openstack-cloud-controller-manager cluster/images/controller-manager
138142
docker build -t $(REGISTRY)/openstack-cloud-controller-manager:$(VERSION) cluster/images/controller-manager
139143
rm cluster/images/controller-manager/openstack-cloud-controller-manager
144+
else
145+
$(error Please set GOOS=linux for building the image)
146+
endif
140147

148+
image-flex-volume-driver: depend cinder-flex-volume-driver
149+
ifeq ($(GOOS),linux)
141150
cp cinder-flex-volume-driver cluster/images/flex-volume-driver
142151
docker build -t $(REGISTRY)/cinder-flex-volume-driver:$(VERSION) cluster/images/flex-volume-driver
143152
rm cluster/images/flex-volume-driver/cinder-flex-volume-driver
144153
else
145154
$(error Please set GOOS=linux for building the image)
146155
endif
147156

157+
image-provisioner: depend cinder-provisioner
158+
ifeq ($(GOOS),linux)
159+
cp cinder-provisioner cluster/images/cinder-provisioner
160+
docker build -t $(REGISTRY)/cinder-provisioner:$(VERSION) cluster/images/cinder-provisioner
161+
rm cluster/images/cinder-provisioner/cinder-provisioner
162+
else
163+
$(error Please set GOOS=linux for building the image)
164+
endif
165+
166+
image-k8s-keystone-auth: depend k8s-keystone-auth
167+
ifeq ($(GOOS),linux)
168+
cp k8s-keystone-auth cluster/images/webhook
169+
docker build -t $(REGISTRY)/k8s-keystone-auth:$(VERSION) cluster/images/webhook
170+
rm cluster/images/webhook/k8s-keystone-auth
171+
else
172+
$(error Please set GOOS=linux for building the image)
173+
endif
174+
148175
version:
149176
@echo ${VERSION}
150177

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Licensed under the Apache License, Version 2.0 (the "License");
2+
# you may not use this file except in compliance with the License.
3+
# You may obtain a copy of the License at
4+
#
5+
# http://www.apache.org/licenses/LICENSE-2.0
6+
#
7+
# Unless required by applicable law or agreed to in writing, software
8+
# distributed under the License is distributed on an "AS IS" BASIS,
9+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10+
# See the License for the specific language governing permissions and
11+
# limitations under the License.
12+
13+
FROM alpine:3.7
14+
15+
RUN apk add --no-cache ca-certificates
16+
17+
ADD cinder-provisioner /bin/
18+
19+
CMD ["/bin/cinder-provisioner"]

0 commit comments

Comments
 (0)