github.com/rvaralda/deis@v1.4.1/cache/Makefile (about)

     1  include ../includes.mk
     2  
     3  # the filepath to this repository, relative to $GOPATH/src
     4  repo_path = github.com/deis/deis/cache
     5  
     6  GO_PACKAGES = . tests
     7  GO_PACKAGES_REPO_PATH = $(addprefix $(repo_path)/,$(GO_PACKAGES))
     8  
     9  COMPONENT = $(notdir $(repo_path))
    10  IMAGE = $(IMAGE_PREFIX)$(COMPONENT):$(BUILD_TAG)
    11  DEV_IMAGE = $(DEV_REGISTRY)/$(IMAGE)
    12  BUILD_IMAGE = $(COMPONENT)-build
    13  BINARY_DEST_DIR = image/bin
    14  
    15  build: check-docker
    16  	GOOS=linux GOARCH=amd64 CGO_ENABLED=0 godep go build -a -installsuffix cgo -v -ldflags '-s' -o $(BINARY_DEST_DIR)/boot main.go || exit 1
    17  	docker build -t $(BUILD_IMAGE) .
    18  	docker cp `docker run -d $(BUILD_IMAGE)`:/usr/local/bin/redis-server $(BINARY_DEST_DIR)/
    19  	docker build -t $(IMAGE) image
    20  
    21  clean: check-docker check-registry
    22  	rm -f $(BINARY_DEST_DIR)/boot
    23  	rm -f $(BINARY_DEST_DIR)/redis-server
    24  	docker rmi -f $(IMAGE)
    25  
    26  full-clean: check-docker check-registry
    27  	docker images -q $(IMAGE_PREFIX)$(COMPONENT) | xargs docker rmi -f
    28  
    29  install: check-deisctl
    30  	deisctl install $(COMPONENT)
    31  
    32  uninstall: check-deisctl
    33  	deisctl uninstall $(COMPONENT)
    34  
    35  start: check-deisctl
    36  	deisctl start $(COMPONENT)
    37  
    38  stop: check-deisctl
    39  	deisctl stop $(COMPONENT)
    40  
    41  restart: stop start
    42  
    43  run: install start
    44  
    45  dev-release: push set-image
    46  
    47  push: check-registry
    48  	docker tag -f $(IMAGE) $(DEV_IMAGE)
    49  	docker push $(DEV_IMAGE)
    50  
    51  set-image: check-deisctl
    52  	deisctl config $(COMPONENT) set image=$(DEV_IMAGE)
    53  
    54  release:
    55  	docker push $(IMAGE)
    56  
    57  deploy: build dev-release restart
    58  
    59  test: test-style test-unit test-functional
    60  
    61  test-unit:
    62  	@echo no unit tests
    63  
    64  test-style:
    65  # display output, then check
    66  	$(GOFMT) $(GO_PACKAGES)
    67  	@$(GOFMT) $(GO_PACKAGES) | read; if [ $$? == 0 ]; then echo "gofmt check failed."; exit 1; fi
    68  	$(GOVET) $(GO_PACKAGES_REPO_PATH)
    69  	$(GOLINT) ./...
    70  
    71  test-functional:
    72  	@docker history deis/test-etcd >/dev/null 2>&1 || docker pull deis/test-etcd:latest
    73  	GOPATH=`cd ../tests/ && godep path`:$(GOPATH) go test -v ./tests/...