Merge "Adding persistent volume to POL"
[osm/devops.git] / docker / mk / Makefile.include
1 TOPDIR=$(shell readlink -f .|sed -e 's/\/docker\/.*//')
2 MKINCLUDE=$(TOPDIR)/docker/mk
3 MKBUILD=$(TOPDIR)/docker/build
4
5 all: build
6
7 TAG ?= latest
8
9 REPOSITORY_BASE ?= http://osm-download.etsi.org/repository/osm/debian
10 RELEASE         ?= ReleaseFOUR-daily
11 REPOSITORY_KEY  ?= OSM%20ETSI%20Release%20Key.gpg
12 REPOSITORY      ?= testing
13 NO_CACHE        ?= --no-cache
14
15 LOWER_MDG = $(shell echo $(MDG) | tr '[:upper:]' '[:lower:]')
16
17 CONTAINER_NAME ?= $(LOWER_MDG)
18
19 CMD_DOCKER_ARGS ?= -q
20 DOCKER_ARGS     = $(CMD_DOCKER_ARGS)
21
22 DEPS := MON IM LCM RO common osmclient devops NBI policy-module Keystone N2VC
23
24 DEPS_TARGETS = $(addprefix $(MKBUILD)/.dep_, $(DEPS))
25
26 Q=@
27
28 $(MKBUILD):
29         $Qmkdir -p $(MKBUILD)
30
31 $(MKBUILD)/.dep_policy-module:
32         $Q$(MKINCLUDE)/get_version.sh -r $(REPOSITORY) -R $(RELEASE) -k $(REPOSITORY_KEY) -u $(REPOSITORY_BASE) -m POL -p policy-module > $@
33
34 $(MKBUILD)/.dep_%:
35         $Q$(MKINCLUDE)/get_version.sh -r $(REPOSITORY) -R $(RELEASE) -k $(REPOSITORY_KEY) -u $(REPOSITORY_BASE) -m $* > $@
36
37 build: $(MKBUILD) $(DEPS_TARGETS)
38         $Qdocker build -t osm/$(LOWER_MDG):$(TAG) \
39                    --build-arg RELEASE=$(RELEASE) \
40                    --build-arg REPOSITORY=$(REPOSITORY) \
41                    --build-arg REPOSITORY_KEY=$(REPOSITORY_KEY) \
42                    --build-arg REPOSITORY_BASE=$(REPOSITORY_BASE) \
43                    --build-arg MON_VERSION==$(shell cat $(MKBUILD)/.dep_MON) \
44                    --build-arg IM_VERSION==$(shell cat $(MKBUILD)/.dep_IM) \
45                    --build-arg RO_VERSION==$(shell cat $(MKBUILD)/.dep_RO) \
46                    --build-arg LCM_VERSION==$(shell cat $(MKBUILD)/.dep_LCM) \
47                    --build-arg COMMON_VERSION==$(shell cat $(MKBUILD)/.dep_common) \
48                    --build-arg OSMCLIENT_VERSION==$(shell cat $(MKBUILD)/.dep_osmclient) \
49                    --build-arg NBI_VERSION==$(shell cat $(MKBUILD)/.dep_NBI) \
50                    --build-arg POL_VERSION==$(shell cat $(MKBUILD)/.dep_policy-module) \
51                    --build-arg DEVOPS_VERSION==$(shell cat $(MKBUILD)/.dep_devops) \
52                    --build-arg N2VC_VERSION==$(shell cat $(MKBUILD)/.dep_N2VC) \
53                    --build-arg LWUI_VERSION==$(shell date +%s) \
54                    $(DOCKER_ARGS) .
55
56 clean:
57         rm -f $(MKBUILD)/.dep*
58
59 tag:
60         docker tag osm/$(CONTAINER_NAME):$(INPUT_TAG) opensourcemano/$(LOWER_MDG):$(TAG)
61
62 push: tag
63         docker push opensourcemano/$(LOWER_MDG):$(TAG)