51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
.PHONY: test shellcheck docopt kcov codecov release-installer
 | 
						|
 | 
						|
test:
 | 
						|
	@sudo DOCKER_CONTEXT=default docker run \
 | 
						|
		-v $$(pwd):/workdir \
 | 
						|
		--privileged \
 | 
						|
		-d \
 | 
						|
		--name=abra-test-dind \
 | 
						|
		-e DOCKER_TLS_CERTDIR="" \
 | 
						|
		decentral1se/docker-dind-bats-kcov
 | 
						|
	@DOCKER_CONTEXT=default docker exec \
 | 
						|
		-it \
 | 
						|
		abra-test-dind \
 | 
						|
		sh -c "cd /workdir && bats /workdir/tests"
 | 
						|
	@DOCKER_CONTEXT=default docker stop abra-test-dind
 | 
						|
	@DOCKER_CONTEXT=default docker rm abra-test-dind
 | 
						|
 | 
						|
shellcheck:
 | 
						|
	@docker run \
 | 
						|
		-it \
 | 
						|
		--rm \
 | 
						|
		-v $$(pwd):/workdir \
 | 
						|
		koalaman/shellcheck-alpine \
 | 
						|
		shellcheck /workdir/abra
 | 
						|
 | 
						|
docopt:
 | 
						|
	@if [ ! -d ".venv" ]; then \
 | 
						|
		python3 -m venv .venv && \
 | 
						|
		.venv/bin/pip install -U pip setuptools wheel && \
 | 
						|
		.venv/bin/pip install docopt-sh; \
 | 
						|
	fi
 | 
						|
	.venv/bin/docopt.sh abra
 | 
						|
 | 
						|
kcov:
 | 
						|
	@docker run \
 | 
						|
		-it \
 | 
						|
		--rm \
 | 
						|
		-v $$(pwd):/workdir \
 | 
						|
		kcov/kcov:latest \
 | 
						|
		sh -c "kcov /workdir/coverage /workdir/abra || true"
 | 
						|
 | 
						|
codecov: SHELL:=/bin/bash
 | 
						|
codecov:
 | 
						|
	@bash <(curl -s https://codecov.io/bash) \
 | 
						|
		-s coverage -t $$(pass show hosts/swarm.autonomic.zone/drone/codecov/token)
 | 
						|
 | 
						|
release-installer:
 | 
						|
	@docker stack rm abra-installer-script && \
 | 
						|
		cd installer && \
 | 
						|
		docker stack deploy -c compose.yml abra-installer-script
 |