This repository has been archived by the owner on Mar 7, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMakefile
45 lines (34 loc) · 1.44 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
.PHONY: build run debug test doc
TYPE='AUTHORITATIVE'
DISTRO = fedora-26-x86_64
VERSION = 9
DG = /usr/bin/dg
DG_EXEC = ${DG} --distro ${DISTRO}.yaml --spec specs/configuration.yml --multispec specs/multispec.yml --multispec-selector version=${VERSION}
DISTRO_ID = $(shell ${DG_EXEC} --template "{{ config.os.id }}")
IMAGE_NAME = modularitycontainers/bind
IMAGE_OPTIONS = \
-p 127.0.0.1:53:53 \
-p 127.0.0.1:53:53/udp \
-e SERVER_TYPE=$(TYPE)
run: build
docker run $(IMAGE_OPTIONS) $(IMAGE_NAME)
debug: build
docker run -t -i $(IMAGE_OPTIONS) $(IMAGE_NAME) bash
build: doc dg
docker build --tag=$(IMAGE_NAME) -f Dockerfile.rendered .
test: build
cd tests && VERSION=${VERSION} DISTRO=${DISTRO} DOCKERFILE="../Dockerfile.rendered" MODULE=docker URL="docker=$(IMAGE_NAME)" make all
cd tests/authoritative/ && VERSION=${VERSION} DISTRO=${DISTRO} DOCKERFILE="../Dockerfile.rendered" MODULE=docker URL="docker=$(IMAGE_NAME)" make all
cd tests/caching/ && VERSION=${VERSION} DISTRO=${DISTRO} DOCKERFILE="../Dockerfile.rendered" MODULE=docker URL="docker=$(IMAGE_NAME)" make all
doc: dg
mkdir -p ./root/
go-md2man -in=help/help.md.rendered -out=./root/help.1
dg:
${DG_EXEC} --template Dockerfile --output Dockerfile.rendered
${DG_EXEC} --template help/help.md --output help/help.md.rendered
${DG_EXEC} --template files/named.conf --output files/named.conf.rendered
clean:
rm -f Dockerfile.*
rm -f help/help.md.*
rm -rf root
rm -rf files/named.conf.*