mirror of https://github.com/dapr/samples.git
52 lines
1.5 KiB
Makefile
52 lines
1.5 KiB
Makefile
DOCKER_IMAGE_PREFIX ?=middleware-
|
|
APPS ?=msgraphapp
|
|
|
|
SAMPLE_REGISTRY ?=docker.io/dapriosamples
|
|
REL_VERSION ?=edge
|
|
|
|
# Add latest tag if LATEST_RELEASE is true
|
|
LATEST_RELEASE ?=
|
|
|
|
# Docker image build and push setting
|
|
DOCKER:=docker
|
|
DOCKERFILE:=Dockerfile
|
|
|
|
.PHONY: build
|
|
|
|
SAMPLE_APPS:=$(foreach ITEM,$(APPS),$(DOCKER_IMAGE_PREFIX)$(ITEM))
|
|
build: $(SAMPLE_APPS)
|
|
|
|
# Generate docker image build targets
|
|
# Params:
|
|
# $(1): app name
|
|
# $(2): tag name
|
|
define genDockerImageBuild
|
|
.PHONY: $(DOCKER_IMAGE_PREFIX)$(1)
|
|
$(DOCKER_IMAGE_PREFIX)$(1):
|
|
$(DOCKER) build -f $(1)/$(DOCKERFILE) $(1)/. -t $(SAMPLE_REGISTRY)/$(DOCKER_IMAGE_PREFIX)$(1):$(2)
|
|
endef
|
|
|
|
# Generate docker image build targets
|
|
$(foreach ITEM,$(APPS),$(eval $(call genDockerImageBuild,$(ITEM),$(REL_VERSION))))
|
|
|
|
# push docker image to the registry
|
|
.PHONY: push
|
|
PUSH_SAMPLE_APPS:=$(foreach ITEM,$(APPS),push-$(DOCKER_IMAGE_PREFIX)$(ITEM))
|
|
push: $(PUSH_SAMPLE_APPS)
|
|
|
|
# Generate docker image push targets
|
|
# Params:
|
|
# $(1): app name
|
|
# $(2): tag name
|
|
define genDockerImagePush
|
|
.PHONY: push-$(DOCKER_IMAGE_PREFIX)$(1)
|
|
push-$(DOCKER_IMAGE_PREFIX)$(1):
|
|
$(DOCKER) push $(SAMPLE_REGISTRY)/$(DOCKER_IMAGE_PREFIX)$(1):$(2)
|
|
ifeq ($(LATEST_RELEASE),true)
|
|
$(DOCKER) tag $(SAMPLE_REGISTRY)/$(DOCKER_IMAGE_PREFIX)$(1):$(2) $(SAMPLE_REGISTRY)/$(DOCKER_IMAGE_PREFIX)$(1):latest
|
|
$(DOCKER) push $(SAMPLE_REGISTRY)/$(DOCKER_IMAGE_PREFIX)$(1):latest
|
|
endif
|
|
endef
|
|
|
|
# Generate docker image push targets
|
|
$(foreach ITEM,$(APPS),$(eval $(call genDockerImagePush,$(ITEM),$(REL_VERSION)))) |