github.com/whamcloud/lemur@v0.0.0-20190827193804-4655df8a52af/packaging/docker/native-lustre-client/Makefile (about) 1 2 REPO ?= $(notdir $(CURDIR)) 3 4 BUILDER_URL ?= https://build.hpdd.intel.com 5 LUSTRE_JOB ?= lustre-master 6 LUSTRE_BUILD ?= lastSuccessfulBuild 7 CLIENT_PACKAGE ?= lustre-client-dkms 8 9 PACKAGE_URL = $(BUILDER_URL)/job/$(LUSTRE_JOB)/arch=x86_64,build_type=client,distro=el7,ib_stack=inkernel/$(LUSTRE_BUILD) 10 CLIENT_VERSION = $(shell curl -sf $(PACKAGE_URL)/api/json | python -c 'import sys, json, re; pkg=[a for a in json.load(sys.stdin)["artifacts"] if "$(CLIENT_PACKAGE)" in a["fileName"]][0]["fileName"]; print re.sub(r"$(CLIENT_PACKAGE)-(.*)\.noarch\.rpm",r"\1",pkg)') 11 IMAGE = $(shell latest=$$(docker images | awk "/$(REPO).*$(CLIENT_VERSION)/ {print \$$2}"); if [ "$$latest" == $(CLIENT_VERSION) ]; then true; else echo $(REPO)/$(CLIENT_VERSION); fi) 12 13 $(CLIENT_VERSION): $(IMAGE) 14 15 $(IMAGE): Dockerfile 16 @echo "Building $(IMAGE) for $(CLIENT_VERSION)" 17 docker build -t $(subst /,:,$(IMAGE)) -t $(REPO):latest --build-arg=package_url=$(PACKAGE_URL)/artifact/artifacts/ $(BUILD_VARS) . 18 19 clean: 20 docker rmi $(subst /,:,$(IMAGE)) $(REPO):latest lustre-client:latest 21 22 .PHONY: $(CLIENT_VERSION) $(IMAGE)