mirror of
				https://github.com/zokradonh/kopano-docker
				synced 2025-10-30 18:07:46 +00:00 
			
		
		
		
	implement building and tagging through jenkins
* improve runtime by moving some variable assignments into the individual tag targets * add expect script to run setup.sh in travis * change language in travis * add secrets for kopano docker account
This commit is contained in:
		
							parent
							
								
									c5536c1059
								
							
						
					
					
						commit
						a0e045ff38
					
				
							
								
								
									
										33
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										33
									
								
								.travis.yml
									
									
									
									
									
								
							| @ -1,13 +1,26 @@ | |||||||
| sudo: required | sudo: required | ||||||
| language: c | language: bash | ||||||
| 
 | env: | ||||||
|  |   global: | ||||||
|  |   - GOSS_VERSION=0.3.6 | ||||||
|  |   - GOSS_PATH=/usr/local/bin/goss | ||||||
|  |   - secure: iSwQW1ytg9/ntqlF1nMzYcg0ouT3TifuAzauu//vWMiRfRthAi0bLuz3nBvlkQwtUk/iF3+smdOtwvjlmW7wWdwdf9tzpsyVKVYcS/+1MbxnGXE4OyNLkUJ7KASRk4otfsujMDNO95q/m04sOLJ721dsOWR6dv+5MNJ3LrushsbFfuStHmM1cNyUR6NuPy4g/x4oppv23rbSXU/qS7ULUsOTEUuTsmgvvKQRZiiOFaOgzeHCIEdrX6Dpsx6DPtYQ5az88q6CrkkTaw7GhP1qBXAGNX03NeHPd7YZvsgePoZJEJ/jTRsZVx9LxwkmnVTJDqthgqTGXTBJIvow3oICjKLf/DhURvkHaAJPu+Nxyvxo2xgYaa0Zbau5fmhEblyKU8Q9g+ZXsdjC5uy/vqJjg1rZD9BZjbKXRP9nb5VpxLdzcWE80XpEj7tHMfF4bN7LvIHZ81wINtZdZeFLVW53YzIO0NAoRCDk1SmR6N11T1uE8FrBzO80oETUMud2zYTx9U+J0m/qsNK+fOz2GtxwI3mlU0/bgVlcFE6865lOPuRwcTOhDwGqeWsLbBYsYXaJhqktn6XKiZ/BEeJLx6Z/CvyNXbzexn1i4wyVZAK7xxkhjxFPnWFU9WPan4ibkGLsS9sFsUTLVa4oBszkTO6q5NU7vIycdgJpfZlkdL2V0EA= | ||||||
|  |   - secure: kj/KcPck6RHSQdcN29+OoxSufHX8KgMXs/ekVUsgcXfWb8iwo0UbfGwyPf+oy1vvjO65e0xsdGHN6Vk++opJT1qaAMpIInfh3+otXmDrT4Uq0s+vBkyQ/EPNeTy6oWK28y5+IVrR3Nd4FMK8CQ4FKzqKAAOQDkusI1182tRL9wDPnCbUD92cNcTPh7aHccSflkBOzw0G6d0v3RFIseOdYMA4DN72YfUV6RHVgOz7PSPmZ9p9lza1Fdbd1fBYoqBapzm3tIWiaU20OkyYNorZzsT+afTTpfHIb5ku+emNCiKDORuX4XQHDiS+PtqDNJRL2WsOsudVf9ckd9wpTkDj5rFnVex7GtS4z47kLDahzNWMQs4gnpDVUi3jbGeU/62EXdiAmuWs0A2kUSPYZwAKVbfIDlp3tAy0dzGivnBfTdN/TYVRm0IDRJZZNp964Tu3rGLazbRCYpGTIYz4KlMRrIN4QJj8JMmvcaOidp/xQJL+MkZTNY653VFHYeu61XEUV3RkGkkhZL967w+VuhkULDppslKExsJzXXX6ITauLu6hqAj+fWrn0WDxn/Km+sx9aJaBNqg4egT8mX5+WeDdoV+3NyODjbYUaEPKSuUkW/Skm+VGlYeyc9apahTSDe1H/W2KUcramkMT17IdPqXTqvlo+HSR97IGoE37OWKdoVM= | ||||||
|  |   - secure: k5V2o5xIGGQ2vlWaCfWHAn68z7k/FSL8bXgow6/x0svxmsvDxJzRrpnM3xn681ogUEoQP1hQeHWeR0tg88RcDFmjzEObMjVd7Av289YIQ/W6hmFFb+SCa+TmAe49ybPLZA2UNygC/zqH5N6U5iMYsyPrChw4oUv9X9lfDJUz08crRVwffm/JwcEfV1tH722I2WUcEpxKYyqymK9CaO3e2UTXnPaASNOPuZ2v0T3D1lvla+XRNG+JJ6+BJjBRkzMMg584IaBIqGVf9tlImZkGfYmVWUVvBfpuHMSU9OC4CJXBRqy6K/nUlw5bDDsGFbLGA9Tg1qgLzAZsPCSMSCC2Gq0rLxuihudWEJ9e8dnRLIbt+Zxlqa2s7DQ2FTWyofQfR4GL6cD4uSoSh+k9ij6PeJMSEzplaO01Fyh87uRbcVBxwktIXeVuJsBG8uQ2wdWjQ41g4noDHzsV1duJ1nz9b6JRH7Vbp8bKXow3K+EtlFfa9GcD4I64oksbWH+hx+PBBf0qEdUzZnHmw2vEqJyjdlCoQ1k7pX6c9rxzNiKIb8Hsmhu1r7DCNYBYZIZ1pGhVBilxrr9QiU0hGpRsON0QOzTobz6TohW9w+LNgBMPMizLRFi3r14Nqel8GIWcQUP/RBTiXb8Lr+D9oq0oY1Up4QyfEq1SfkJ1yD4qzCOhb5I= | ||||||
| services: | services: | ||||||
| - docker | - docker | ||||||
| 
 | before_install: | ||||||
| script: | - sudo curl -L https://github.com/aelsabbahy/goss/releases/download/v$GOSS_VERSION/goss-linux-amd64 | ||||||
| - make build-all |   -o /usr/local/bin/goss | ||||||
| 
 | - sudo curl -L https://github.com/aelsabbahy/goss/releases/download/v$GOSS_VERSION/dgoss | ||||||
| #deploy: |   -o /usr/local/bin/dgoss | ||||||
| #  script: make publish | - sudo chmod +rx /usr/local/bin/goss | ||||||
| #  on: | - sudo chmod +rx /usr/local/bin/dgoss | ||||||
| #    branch: master | - sudo apt update && sudo apt install -y expect | ||||||
|  | - "./test.exp" | ||||||
|  | install: make build-all | ||||||
|  | deploy: | ||||||
|  | - provider: script | ||||||
|  |   script: make publish | ||||||
|  |   on: | ||||||
|  |     branch: master | ||||||
|  | |||||||
							
								
								
									
										31
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								Makefile
									
									
									
									
									
								
							| @ -2,14 +2,9 @@ docker_repo := zokradonh | |||||||
| docker_login := `cat ~/.docker-account-user` | docker_login := `cat ~/.docker-account-user` | ||||||
| docker_pwd := `cat ~/.docker-account-pwd` | docker_pwd := `cat ~/.docker-account-pwd` | ||||||
| 
 | 
 | ||||||
| base_version = $(shell docker run --rm $(docker_repo)/kopano_base cat /kopano/buildversion) |  | ||||||
| base_download_version := $(shell ./version.sh core) | base_download_version := $(shell ./version.sh core) | ||||||
| core_version = $(shell docker run --rm $(docker_repo)/kopano_core cat /kopano/buildversion | cut -d- -f2) |  | ||||||
| utils_version = $(shell docker run --rm $(docker_repo)/kopano_utils cat /kopano/buildversion | cut -d- -f2) |  | ||||||
| core_download_version := $(shell ./version.sh core) | core_download_version := $(shell ./version.sh core) | ||||||
| webapp_version = $(shell docker run --rm $(docker_repo)/kopano_webapp cat /kopano/buildversion | grep webapp | cut -d- -f2 | cut -d+ -f1) |  | ||||||
| webapp_download_version := $(shell ./version.sh webapp) | webapp_download_version := $(shell ./version.sh webapp) | ||||||
| zpush_version = $(shell docker run --rm $(docker_repo)/kopano_zpush cat /kopano/buildversion | tail -n 1 | grep -o -P '(?<=-).*(?=\+)') |  | ||||||
| zpush_download_version := $(shell ./version.sh zpush) | zpush_download_version := $(shell ./version.sh zpush) | ||||||
| 
 | 
 | ||||||
| KOPANO_CORE_REPOSITORY_URL := file:/kopano/repo/core | KOPANO_CORE_REPOSITORY_URL := file:/kopano/repo/core | ||||||
| @ -71,8 +66,8 @@ build-kweb: | |||||||
| build-ldap-demo: | build-ldap-demo: | ||||||
| 	docker build -t $(docker_repo)/kopano_ldap_demo ldap-demo/ | 	docker build -t $(docker_repo)/kopano_ldap_demo ldap-demo/ | ||||||
| 
 | 
 | ||||||
| tag: component ?= base | tag-container: component ?= base | ||||||
| tag: | tag-container: | ||||||
| 	@echo 'create tag $($(component)_version)' | 	@echo 'create tag $($(component)_version)' | ||||||
| 	docker tag $(docker_repo)/kopano_$(component) $(docker_repo)/kopano_$(component):${$(component)_version} | 	docker tag $(docker_repo)/kopano_$(component) $(docker_repo)/kopano_$(component):${$(component)_version} | ||||||
| 	@echo 'create tag latest' | 	@echo 'create tag latest' | ||||||
| @ -81,23 +76,33 @@ tag: | |||||||
| 	git tag $(component)/${$(component)_version} || true | 	git tag $(component)/${$(component)_version} || true | ||||||
| 
 | 
 | ||||||
| tag-base: | tag-base: | ||||||
| 	component=base make tag | 	$(eval base_version := \
 | ||||||
|  | 	$(shell docker run --rm $(docker_repo)/kopano_base cat /kopano/buildversion)) | ||||||
|  | 	component=base make tag-container | ||||||
| 
 | 
 | ||||||
| tag-core: | tag-core: | ||||||
| 	component=core make tag | 	$(eval core_version := \
 | ||||||
|  | 	$(shell docker run --rm $(docker_repo)/kopano_core cat /kopano/buildversion | cut -d- -f2)) | ||||||
|  | 	component=core make tag-container | ||||||
| 
 | 
 | ||||||
| tag-utils: | tag-utils: | ||||||
| 	component=utils make tag | 	$(eval utils_version := \
 | ||||||
|  | 	$(shell docker run --rm $(docker_repo)/kopano_utils cat /kopano/buildversion | cut -d- -f2)) | ||||||
|  | 	component=utils make tag-container | ||||||
| 
 | 
 | ||||||
| tag-webapp: | tag-webapp: | ||||||
| 	component=webapp make tag | 	$(eval webapp_version := \
 | ||||||
|  | 	$(shell docker run --rm $(docker_repo)/kopano_webapp cat /kopano/buildversion | grep webapp | cut -d- -f2 | cut -d+ -f1)) | ||||||
|  | 	component=webapp make tag-container | ||||||
| 
 | 
 | ||||||
| tag-zpush: | tag-zpush: | ||||||
| 	component=zpush make tag | 	$(eval zpush_version := \
 | ||||||
|  | 	$(shell docker run --rm $(docker_repo)/kopano_zpush cat /kopano/buildversion | tail -n 1 | grep -o -P '(?<=-).*(?=\+)')) | ||||||
|  | 	component=zpush make tag-container | ||||||
| 
 | 
 | ||||||
| # Docker publish
 | # Docker publish
 | ||||||
| repo-login: | repo-login: | ||||||
| 	docker login -u $(docker_login) -p $(docker_pwd) | 	@docker login -u $(docker_login) -p $(docker_pwd) | ||||||
| 
 | 
 | ||||||
| publish: repo-login publish-ssl publish-base publish-core publish-utils publish-webapp publish-zpush publish-ssl publish-kweb | publish: repo-login publish-ssl publish-base publish-core publish-utils publish-webapp publish-zpush publish-ssl publish-kweb | ||||||
| 	git push | 	git push | ||||||
|  | |||||||
| @ -167,7 +167,7 @@ services: | |||||||
|       - KCCONF_LDAP_LDAP_SEARCH_BASE=${LDAP_SEARCH_BASE} |       - KCCONF_LDAP_LDAP_SEARCH_BASE=${LDAP_SEARCH_BASE} | ||||||
|       - KCUNCOMMENT_LDAP_1=${KCUNCOMMENT_LDAP_1} |       - KCUNCOMMENT_LDAP_1=${KCUNCOMMENT_LDAP_1} | ||||||
|       - KCCOMMENT_LDAP_1=${KCCOMMENT_LDAP_1} |       - KCCOMMENT_LDAP_1=${KCCOMMENT_LDAP_1} | ||||||
|       #- ADDITIONAL_KOPANO_PACKAGES=kopano-migration-imap |       - ADDITIONAL_KOPANO_PACKAGES=${ADDITIONAL_KOPANO_PACKAGES} | ||||||
|     networks: |     networks: | ||||||
|       - kopanonet |       - kopanonet | ||||||
|     volumes: |     volumes: | ||||||
|  | |||||||
							
								
								
									
										8
									
								
								setup.sh
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								setup.sh
									
									
									
									
									
								
							| @ -233,9 +233,7 @@ HTTPS=443 | |||||||
| # Docker Repository to push to | # Docker Repository to push to | ||||||
| docker_repo=zokradonh | docker_repo=zokradonh | ||||||
| 
 | 
 | ||||||
| ADDITIONAL_KOPANO_WEBAPP_PLUGINS=$ADDITIONAL_KOPANO_WEBAPP_PLUGINS | # Modify below to build a different version, than the kopano nightly release | ||||||
| 
 |  | ||||||
| # modify below to build a different version, than the kopano nightly release |  | ||||||
| #KOPANO_CORE_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/core:/final/Debian_9.0/ | #KOPANO_CORE_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/core:/final/Debian_9.0/ | ||||||
| #KOPANO_WEBAPP_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/webapp:/final/Debian_9.0/ | #KOPANO_WEBAPP_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/webapp:/final/Debian_9.0/ | ||||||
| #KOPANO_WEBAPP_FILES_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/files:/final/Debian_9.0/ | #KOPANO_WEBAPP_FILES_REPOSITORY_URL=https://serial:REPLACE-ME@download.kopano.io/supported/files:/final/Debian_9.0/ | ||||||
| @ -245,6 +243,10 @@ ADDITIONAL_KOPANO_WEBAPP_PLUGINS=$ADDITIONAL_KOPANO_WEBAPP_PLUGINS | |||||||
| #RELEASE_KEY_DOWNLOAD=1 | #RELEASE_KEY_DOWNLOAD=1 | ||||||
| #DOWNLOAD_COMMUNITY_PACKAGES=0 | #DOWNLOAD_COMMUNITY_PACKAGES=0 | ||||||
| 
 | 
 | ||||||
|  | # Additional packages to install | ||||||
|  | ADDITIONAL_KOPANO_PACKAGES= | ||||||
|  | ADDITIONAL_KOPANO_WEBAPP_PLUGINS=$ADDITIONAL_KOPANO_WEBAPP_PLUGINS | ||||||
|  | 
 | ||||||
| EOF | EOF | ||||||
| else | else | ||||||
| 	echo "config already exists, doing nothing" | 	echo "config already exists, doing nothing" | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user