blob: 3435fb01a9d08c89e397843a3d42aeb69db75bfc [file] [log] [blame]
ROOT_DIR:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
IMAGE_NAME ?= opencord/mavenrepo
DOCKER_REGISTRY ?= docker-registry:5000
DEPLOY_DOCKER_TAG ?= candidate
MAKE_CONFIG ?= config.mk
ifeq ($(realpath $(MAKE_CONFIG)),)
$(info Makefile configuration not found, defaults will be used.)
else
$(info Using makefile configuration "$(MAKE_CONFIG)")
include $(MAKE_CONFIG)
endif
.PHONY: all
all: build
.PHONY: build
build:
docker build -f Dockerfile.make -t $(IMAGE_NAME):$(DEPLOY_DOCKER_TAG) $(ROOT_DIR)
.PHONY: onos
onos:
docker build -t cord/onos:latest -f docker/Dockerfile.onos .
.PHONY: publish
publish:
docker tag $(IMAGE_NAME):$(DEPLOY_DOCKER_TAG) $(DOCKER_REGISTRY)/$(IMAGE_NAME):$(DEPLOY_DOCKER_TAG)
docker push $(DOCKER_REGISTRY)/$(IMAGE_NAME):$(DEPLOY_DOCKER_TAG)
.PHONY: clean
clean:
docker rmi $(IMAGE_NAME):$(DEPLOY_DOCKER_TAG) | true
docker rmi $(DOCKER_REGISTRY)/$(IMAGE_NAME):$(DEPLOY_DOCKER_TAG) | true
.PHONY: test
test:
@echo "No unit tests at present"
.PHONY: help
help:
@echo "Available targets:"
@echo " build: build the Docker image (Maven repo with the CORD ONOS apps)"
@echo " clean: remove the Docker image"
@echo " test: run unit tests"
@echo " help: print this help message"