5
5
# all: prepare env, compile binarys, build images and install images
6
6
# prepare: prepare env
7
7
# compile: compile ui and jobservice code
8
+ # compile_buildgolangimage:
9
+ # compile local building golang image
10
+ # forexample : make compile_buildgolangimage -e \
11
+ # GOBUILDIMAGE=harborgo:1.6.2
8
12
# compile_golangimage:
9
13
# compile from golang image
10
14
# for example: make compile_golangimage -e GOBUILDIMAGE= \
11
- # reg-bj.eng.vmware.com/harborrelease/ harborgo:1.6.2
15
+ # harborgo:1.6.2
12
16
# compile_ui, compile_jobservice: compile specific binary
13
17
#
14
18
# build: build Harbor docker images (defuault: build_photon)
52
56
# cleanversiontag:
53
57
# cleanpackageremove specific version tag
54
58
# cleanpackage: remove online/offline install package
55
- #
56
- # all: install
57
59
#
58
60
# other example:
59
61
# clean specific version binarys and images:
@@ -106,6 +108,7 @@ GOBUILDPATH_JOBSERVICE=$(GOBUILDPATH)/src/jobservice
106
108
GOBUILDMAKEPATH =$(GOBUILDPATH ) /make
107
109
GOBUILDMAKEPATH_UI =$(GOBUILDMAKEPATH ) /dev/ui
108
110
GOBUILDMAKEPATH_JOBSERVICE =$(GOBUILDMAKEPATH ) /dev/jobservice
111
+ GOLANGDOCKERFILENAME =Dockerfile.golang
109
112
110
113
# binary
111
114
UISOURCECODE =$(SRCPATH ) /ui
@@ -170,7 +173,7 @@ REGISTRYUSER=user
170
173
REGISTRYPASSWORD =default
171
174
172
175
version :
173
- if [ " $( DEVFLAG) " = " false" ] ; then \
176
+ @ if [ " $( DEVFLAG) " = " false" ] ; then \
174
177
$(SEDCMD ) -i ' s/version=\"{{.Version}}\"/version=\"$(VERSIONTAG)\"/' -i $(VERSIONFILEPATH ) /$(VERSIONFILENAME ) ; \
175
178
fi
176
179
@@ -179,40 +182,41 @@ check_environment:
179
182
180
183
compile_ui :
181
184
@echo " compiling binary for ui..."
182
- $(GOBUILD ) -o $(UIBINARYPATH ) /$(UIBINARYNAME ) $(UISOURCECODE )
185
+ @ $(GOBUILD ) -o $(UIBINARYPATH ) /$(UIBINARYNAME ) $(UISOURCECODE )
183
186
@echo " Done."
184
187
185
188
compile_jobservice :
186
189
@echo " compiling binary for jobservice..."
187
- $(GOBUILD ) -o $(JOBSERVICEBINARYPATH ) /$(JOBSERVICEBINARYNAME ) $(JOBSERVICESOURCECODE )
190
+ @ $(GOBUILD ) -o $(JOBSERVICEBINARYPATH ) /$(JOBSERVICEBINARYNAME ) $(JOBSERVICESOURCECODE )
188
191
@echo " Done."
189
192
190
193
compile_normal : compile_ui compile_jobservice
191
194
192
- compile_golangimage :
193
- @echo " pulling golang build base image "
194
- $( DOCKERPULL ) $(GOBUILDIMAGE )
195
+ compile_buildgolangimage :
196
+ @echo " compiling golang image for harbor ... "
197
+ @ $( DOCKERBUILD ) -t $(GOBUILDIMAGE ) -f $( TOOLSPATH ) / $( GOLANGDOCKERFILENAME ) .
195
198
@echo " Done."
196
199
200
+ compile_golangimage :
197
201
@echo " compiling binary for ui (golang image)..."
198
202
@echo $(GOBASEPATH )
199
203
@echo $(GOBUILDPATH )
200
- $(DOCKERCMD) run --rm -v $(BUILDPATH):$(GOBUILDPATH) -w $(GOBUILDPATH_UI) $(GOBUILDIMAGE) $(GOIMAGEBUILD) -v -o $(GOBUILDMAKEPATH_UI)/$(UIBINARYNAME)
204
+ @ $(DOCKERCMD ) run --rm -v $(BUILDPATH ) :$(GOBUILDPATH ) -w $(GOBUILDPATH_UI ) $(GOBUILDIMAGE ) $(GOIMAGEBUILD ) -v -o $(GOBUILDMAKEPATH_UI ) /$(UIBINARYNAME )
201
205
@echo " Done."
202
206
203
207
@echo " compiling binary for jobservice (golang image)..."
204
- $(DOCKERCMD) run --rm -v $(BUILDPATH):$(GOBUILDPATH) -w $(GOBUILDPATH_JOBSERVICE) $(GOBUILDIMAGE) $(GOIMAGEBUILD) -v -o $(GOBUILDMAKEPATH_JOBSERVICE)/$(JOBSERVICEBINARYNAME)
208
+ @ $(DOCKERCMD ) run --rm -v $(BUILDPATH ) :$(GOBUILDPATH ) -w $(GOBUILDPATH_JOBSERVICE ) $(GOBUILDIMAGE ) $(GOIMAGEBUILD ) -v -o $(GOBUILDMAKEPATH_JOBSERVICE ) /$(JOBSERVICEBINARYNAME )
205
209
@echo " Done."
206
210
207
211
compile :check_environment $(COMPILETAG )
208
212
209
213
prepare :
210
214
@echo " preparing..."
211
- $(MAKEPATH ) /$(PREPARECMD ) -conf $(CONFIGPATH ) /$(CONFIGFILE )
215
+ @ $(MAKEPATH ) /$(PREPARECMD ) -conf $(CONFIGPATH ) /$(CONFIGFILE )
212
216
213
217
build_common : version
214
218
@echo " buildging db container for photon..."
215
- cd $(DOCKERFILEPATH_DB ) && $(DOCKERBUILD ) -f $(DOCKERFILENAME_DB ) -t $(DOCKERIMAGENAME_DB ) :$(VERSIONTAG ) .
219
+ @ cd $(DOCKERFILEPATH_DB ) && $(DOCKERBUILD ) -f $(DOCKERFILENAME_DB ) -t $(DOCKERIMAGENAME_DB ) :$(VERSIONTAG ) .
216
220
@echo " Done."
217
221
218
222
build_photon : build_common
@@ -224,26 +228,27 @@ build_ubuntu: build_common
224
228
build : build_$(BASEIMAGE )
225
229
226
230
modify_composefile :
227
- @echo " preparing tag: $( VERSIONTAG ) docker-compose file..."
231
+ @echo " preparing docker-compose file..."
228
232
@cp $(DOCKERCOMPOSEFILEPATH ) /$(DOCKERCOMPOSETPLFILENAME ) $(DOCKERCOMPOSEFILEPATH ) /$(DOCKERCOMPOSEFILENAME )
229
233
@$(SEDCMD ) -i ' s/image\: vmware.*/&:$(VERSIONTAG)/g' $(DOCKERCOMPOSEFILEPATH ) /$(DOCKERCOMPOSEFILENAME )
230
234
231
235
install : compile build prepare modify_composefile
232
236
@echo " loading harbor images..."
233
- $(DOCKERCOMPOSECMD ) -f $(DOCKERCOMPOSEFILEPATH ) /$(DOCKERCOMPOSEFILENAME ) up -d
237
+ @ $(DOCKERCOMPOSECMD ) -f $(DOCKERCOMPOSEFILEPATH ) /$(DOCKERCOMPOSEFILENAME ) up -d
234
238
@echo " Install complete. You can visit harbor now."
235
239
236
240
package_online : modify_composefile
237
241
@echo " packing online package ..."
238
242
@cp -r make $(HARBORPKG )
239
243
@if [ -n " $( REGISTRYSERVER) " ] ; then \
240
244
$(SEDCMD ) -i ' s/image\: vmware/image\: $(REGISTRYSERVER)\/$(REGISTRYPROJECTNAME)/' \
241
- $(HARBORPKG ) /docker-compose.$( VERSIONTAG ) . yml ; \
245
+ $(HARBORPKG ) /docker-compose.yml ; \
242
246
fi
243
247
@cp LICENSE $(HARBORPKG ) /LICENSE
244
248
@cp NOTICE $(HARBORPKG ) /NOTICE
245
249
@$(TARCMD ) -zcvf harbor-online-installer-$(VERSIONTAG ) .tgz \
246
- --exclude=$(HARBORPKG ) /common/db --exclude=$(HARBORPKG ) /ubuntu \
250
+ --exclude=$(HARBORPKG ) /common/db --exclude=$(HARBORPKG ) /common/config\
251
+ --exclude=$(HARBORPKG ) /common/log --exclude=$(HARBORPKG ) /ubuntu \
247
252
--exclude=$(HARBORPKG ) /photon --exclude=$(HARBORPKG ) /kubernetes \
248
253
--exclude=$(HARBORPKG ) /dev --exclude=$(DOCKERCOMPOSETPLFILENAME ) \
249
254
--exclude=$(HARBORPKG ) /checkenv.sh \
@@ -262,19 +267,20 @@ package_offline: compile build modify_composefile
262
267
@cp NOTICE $(HARBORPKG ) /NOTICE
263
268
264
269
@echo " pulling nginx and registry..."
265
- $(DOCKERPULL ) registry:2.5.0
266
- $(DOCKERPULL ) nginx:1.11.5
270
+ @ $(DOCKERPULL ) registry:2.5.0
271
+ @ $(DOCKERPULL ) nginx:1.11.5
267
272
268
273
@echo " saving harbor docker image"
269
- $(DOCKERSAVE ) -o $(HARBORPKG ) /$(DOCKERIMGFILE ) .$(VERSIONTAG ) .tgz \
274
+ @ $(DOCKERSAVE ) -o $(HARBORPKG ) /$(DOCKERIMGFILE ) .$(VERSIONTAG ) .tgz \
270
275
$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG ) \
271
276
$(DOCKERIMAGENAME_LOG ) :$(VERSIONTAG ) \
272
277
$(DOCKERIMAGENAME_DB ) :$(VERSIONTAG ) \
273
278
$(DOCKERIMAGENAME_JOBSERVICE ) :$(VERSIONTAG ) \
274
279
nginx:1.11.5 registry:2.5.0
275
280
276
281
@$(TARCMD) -zcvf harbor-offline-installer-$(VERSIONTAG).tgz \
277
- --exclude=$(HARBORPKG)/common/db --exclude=$(HARBORPKG)/ubuntu \
282
+ --exclude=$(HARBORPKG)/common/db --exclude=$(HARBORPKG)/common/config\
283
+ --exclude=$(HARBORPKG)/common/log --exclude=$(HARBORPKG)/ubuntu \
278
284
--exclude=$(HARBORPKG)/photon --exclude=$(HARBORPKG)/kubernetes \
279
285
--exclude=$(HARBORPKG)/dev --exclude=$(DOCKERCOMPOSETPLFILENAME) \
280
286
--exclude=$(HARBORPKG)/checkenv.sh \
@@ -287,10 +293,10 @@ package_offline: compile build modify_composefile
287
293
288
294
pushimage :
289
295
@echo " pushing harbor images ..."
290
- $(DOCKERTAG ) $(DOCKERIMAGENAME_UI ) :$(VERSIONTAG ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG )
291
- $(PUSHSCRIPTPATH ) /$(PUSHSCRIPTNAME ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG ) \
296
+ @ $(DOCKERTAG ) $(DOCKERIMAGENAME_UI ) :$(VERSIONTAG ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG )
297
+ @ $(PUSHSCRIPTPATH ) /$(PUSHSCRIPTNAME ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG ) \
292
298
$(REGISTRYUSER ) $(REGISTRYPASSWORD ) $(REGISTRYSERVER )
293
- $(DOCKERRMIMAGE ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG )
299
+ @ $(DOCKERRMIMAGE ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_UI ) :$(VERSIONTAG )
294
300
295
301
@$(DOCKERTAG ) $(DOCKERIMAGENAME_JOBSERVICE ) :$(VERSIONTAG ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_JOBSERVICE ) :$(VERSIONTAG )
296
302
@$(PUSHSCRIPTPATH ) /$(PUSHSCRIPTNAME ) $(REGISTRYSERVER )$(DOCKERIMAGENAME_JOBSERVICE ) :$(VERSIONTAG ) \
@@ -309,7 +315,7 @@ pushimage:
309
315
310
316
start :
311
317
@echo " loading harbor images..."
312
- @$(DOCKERCOMPOSECMD ) -f $(DOCKERCOMPOSEFILEPATH ) /docker-compose.$( VERSIONTAG ) . yml up -d
318
+ @$(DOCKERCOMPOSECMD ) -f $(DOCKERCOMPOSEFILEPATH ) /docker-compose.yml up -d
313
319
@echo " Start complete. You can visit harbor now."
314
320
315
321
down :
@@ -328,12 +334,12 @@ cleanimage:
328
334
- $(DOCKERRMIMAGE ) -f $(DOCKERIMAGENAME_DB ) :$(VERSIONTAG )
329
335
- $(DOCKERRMIMAGE ) -f $(DOCKERIMAGENAME_JOBSERVICE ) :$(VERSIONTAG )
330
336
- $(DOCKERRMIMAGE ) -f $(DOCKERIMAGENAME_LOG ) :$(VERSIONTAG )
331
- # - $(DOCKERRMIMAGE) -f registry:2.5.0
332
- # - $(DOCKERRMIMAGE) -f nginx:1.11.5
337
+ # - $(DOCKERRMIMAGE) -f registry:2.5.0
338
+ # - $(DOCKERRMIMAGE) -f nginx:1.11.5
333
339
334
340
cleandockercomposefile :
335
- @echo " cleaning $( DOCKERCOMPOSEFILEPATH) /docker-compose.$( VERSIONTAG ) . yml"
336
- @if [ -f $( DOCKERCOMPOSEFILEPATH) /docker-compose.$( VERSIONTAG ) . yml ] ; then rm $(DOCKERCOMPOSEFILEPATH ) /docker-compose. $( VERSIONTAG ) .yml ; fi
341
+ @echo " cleaning $( DOCKERCOMPOSEFILEPATH) /docker-compose.yml"
342
+ @if [ -f $( DOCKERCOMPOSEFILEPATH) /docker-compose.yml ] ; then rm $(DOCKERCOMPOSEFILEPATH ) /docker-compose.yml ; fi
337
343
338
344
cleanversiontag :
339
345
@echo " cleaning version TAG"
0 commit comments