38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
|   | IMAGE_NAME:=organic-clippy | ||
|  | # REMOTE_REPO:=harbor.fizz.buzz/private
 | ||
|  | 
 | ||
|  | .PHONY: all | ||
|  | all: build push | ||
|  | 
 | ||
|  | .PHONY: build | ||
|  | build: | ||
|  | 	docker build -t $(IMAGE_NAME) -f Dockerfile . | ||
|  | 
 | ||
|  | .PHONY: push | ||
|  | push: | ||
|  | ifdef REMOTE_REPO | ||
|  | 	docker tag $(IMAGE_NAME) $(REMOTE_REPO)/$(IMAGE_NAME) | ||
|  | 	docker push $(REMOTE_REPO)/$(IMAGE_NAME) | ||
|  | else | ||
|  | 	@echo "REMOTE_REPO not defined, not pushing to a remote repo." | ||
|  | endif | ||
|  | 
 | ||
|  | .PHONY: clean | ||
|  | clean: | ||
|  | 	docker rmi $(IMAGE_NAME) | ||
|  | ifdef REMOTE_REPO | ||
|  | 	docker rmi $(REMOTE_REPO)/$(IMAGE_NAME) | ||
|  | else | ||
|  | 	@echo "REMOTE_REPO not defined, not removing from remote repo." | ||
|  | endif | ||
|  | 	docker volume rm cargo-cache | ||
|  | 
 | ||
|  | # NOTE: This target will write to folders underneath the git-root
 | ||
|  | .PHONY: run | ||
|  | run: build | ||
|  | 	docker run --rm --init --read-only --mount type=tmpfs,destination=/tmp -v "$$(readlink -f ../../):/source" --workdir=/source --mount source=cargo-cache,target=/usr/local/cargo/registry $(IMAGE_NAME) | ||
|  | 
 | ||
|  | .PHONY: shell | ||
|  | shell: build | ||
|  | 	docker run --rm -i -t --entrypoint /bin/sh --mount type=tmpfs,destination=/tmp -v "$$(readlink -f ../../):/source" --workdir=/source --mount source=cargo-cache,target=/usr/local/cargo/registry $(IMAGE_NAME) |