63 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| PROJ=dex
 | |
| ORG_PATH=github.com/coreos
 | |
| REPO_PATH=$(ORG_PATH)/$(PROJ)
 | |
| export PATH := $(PWD)/bin:$(PATH)
 | |
| 
 | |
| VERSION=$(shell ./scripts/git-version)
 | |
| 
 | |
| DOCKER_REPO=quay.io/ericchiang/dex
 | |
| DOCKER_IMAGE=$(DOCKER_REPO):$(VERSION)
 | |
| 
 | |
| export GOBIN=$(PWD)/bin
 | |
| export GO15VENDOREXPERIMENT=1
 | |
| export CGO_ENABLED:=0
 | |
| 
 | |
| LD_FLAGS="-w -X $(REPO_PATH)/version.Version=$(VERSION)"
 | |
| 
 | |
| GOOS=$(shell go env GOOS)
 | |
| GOARCH=$(shell go env GOARCH)
 | |
| 
 | |
| build: bin/dex bin/example-app
 | |
| 
 | |
| bin/dex: FORCE
 | |
| 	@go install -ldflags $(LD_FLAGS) $(REPO_PATH)/cmd/dex
 | |
| 
 | |
| bin/example-app: FORCE
 | |
| 	@go install -ldflags $(LD_FLAGS) $(REPO_PATH)/cmd/example-app
 | |
| 
 | |
| test:
 | |
| 	@go test $(shell go list ./... | grep -v '/vendor/')
 | |
| 
 | |
| testrace:
 | |
| 	@CGO_ENABLED=1 go test --race $(shell go list ./... | grep -v '/vendor/')
 | |
| 
 | |
| vet:
 | |
| 	@go vet $(shell go list ./... | grep -v '/vendor/')
 | |
| 
 | |
| fmt:
 | |
| 	@go fmt $(shell go list ./... | grep -v '/vendor/')
 | |
| 
 | |
| lint:
 | |
| 	@for package in $(shell go list ./... | grep -v '/vendor/' | grep -v 'api/apipb'); do \
 | |
|       golint $$package; \
 | |
| 	done
 | |
| 
 | |
| .PHONY: docker-build
 | |
| docker-build: bin/dex
 | |
| 	@docker build -t $(DOCKER_IMAGE) .
 | |
| 
 | |
| .PHONY: docker-push
 | |
| docker-push: docker-build
 | |
| 	@docker tag $(DOCKER_IMAGE) $(DOCKER_REPO):latest
 | |
| 	@docker push $(DOCKER_IMAGE)
 | |
| 	@docker push $(DOCKER_REPO):latest
 | |
| 
 | |
| clean:
 | |
| 	@rm bin/*
 | |
| 
 | |
| testall: testrace vet fmt lint
 | |
| 
 | |
| FORCE:
 | |
| 
 | |
| .PHONY: test testrace vet fmt lint testall
 |