test.mk 882 Bytes
Newer Older
1 2 3 4

yml_files:=$(shell find . -name "*.yml")
json_files:=$(shell find . -name "*.json")
jinja_files:=$(shell find . -name "*.j2")
5
images = $(shell git diff --name-only $(TRAVIS_COMMIT_RANGE) | python util/parsefiles.py)
6 7 8

test: test.syntax test.edx_east_roles

9
test.syntax: test.syntax.yml test.syntax.json test.syntax.jinja test.syntax.dockerfiles
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

test.syntax.yml: $(patsubst %,test.syntax.yml/%,$(yml_files))

test.syntax.yml/%:
	python -c "import sys,yaml; yaml.load(open(sys.argv[1]))" $* >/dev/null

test.syntax.json: $(patsubst %,test.syntax.json/%,$(json_files))

test.syntax.json/%:
	jsonlint -v $*

test.syntax.jinja: $(patsubst %,test.syntax.jinja/%,$(jinja_files))

test.syntax.jinja/%:
	cd playbooks && python ../tests/jinja_check.py ../$*

26 27 28
test.syntax.dockerfiles:
	python util/check_dockerfile_coverage.py "$(images)"
	
29 30
test.edx_east_roles:
	tests/test_edx_east_roles.sh