mirror of
				https://github.com/zokradonh/kopano-docker
				synced 2025-10-31 02:17:47 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| docker_repo := kopano
 | |
| docker_login := `cat ~/.docker-account-user`
 | |
| docker_pwd := `cat ~/.docker-account-pwd`
 | |
| 
 | |
| base_version = $(shell docker run --rm $(docker_repo)/kopano_base cat /kopano/buildversion)
 | |
| core_version = $(shell docker run --rm $(docker_repo)/kopano_core cat /kopano/buildversion | grep -o -P '(?<=-).*(?=_)')
 | |
| webapp_version = $(shell docker run --rm $(docker_repo)/kopano_webapp cat /kopano/buildversion | tail -n 1 | grep -o -P '(?<=-).*(?=\+)')
 | |
| 
 | |
| build-all: build-base build-core build-webapp
 | |
| 
 | |
| build: component ?= base
 | |
| build:
 | |
| 	docker build -t $(docker_repo)/kopano_$(component) $(component)/
 | |
| 
 | |
| build-base:
 | |
| 	component=base make build
 | |
| 
 | |
| build-core:
 | |
| 	component=core make build
 | |
| 
 | |
| build-webapp:
 | |
| 	component=webapp make build
 | |
| 
 | |
| tag: component ?= base
 | |
| tag:
 | |
| 	@echo 'create tag $($(component)_version)'
 | |
| 	docker tag $(docker_repo)/kopano_$(component) $(docker_repo)/kopano_$(component):${$(component)_version}
 | |
| 	@echo 'create tag latest'
 | |
| 	docker tag $(docker_repo)/kopano_$(component) $(docker_repo)/kopano_$(component):latest
 | |
| 	git tag $(component)/${$(component)_version} || true
 | |
| 
 | |
| tag-base:
 | |
| 	component=base make tag
 | |
| 
 | |
| tag-core:
 | |
| 	component=core make tag
 | |
| 
 | |
| tag-webapp:
 | |
| 	component=webapp make tag
 | |
| 
 | |
| git-commit:
 | |
| 	git add -A && git commit -m "ci: commit changes before tagging"
 | |
| 
 | |
| # Docker publish
 | |
| repo-login:
 | |
| 	docker login -u $(docker_login) -p $(docker_pwd)
 | |
| 
 | |
| publish: git-commit repo-login publish-base publish-core publish-webapp
 | |
| 	git push
 | |
| 	git push origin --tags
 | |
| 
 | |
| publish-container: component ?= base
 | |
| publish-container:
 | |
| 	@echo 'publish latest to $(docker_repo)/kopano_$(component)'
 | |
| 	docker push $(docker_repo)/kopano_$(component):$($(component)_version}
 | |
| 	docker push $(docker_repo)/kopano_$(component):latest
 | |
| 
 | |
| publish-base: build-base tag-base
 | |
| 	component=base make publish-container
 | |
| 
 | |
| publish-core: build-core tag-core
 | |
| 	component=core make publish-container
 | |
| 
 | |
| publish-webapp: build-webapp tag-webapp
 | |
| 	component=webapp make publish-container
 |