From d838dae30b6615b47da4fe9a0a4c1bbe67e6f029 Mon Sep 17 00:00:00 2001 From: Renaud Gaubert Date: Sun, 10 Feb 2019 17:07:43 -0800 Subject: [PATCH] Update Makefile for CI --- hook/Dockerfile.amzn | 2 +- hook/Dockerfile.centos | 2 +- hook/Dockerfile.debian | 2 +- hook/Dockerfile.ubuntu | 2 +- hook/Makefile | 24 +++++++++++++++---- runtime/Dockerfile.amzn | 2 +- runtime/Dockerfile.centos | 2 +- runtime/Dockerfile.debian | 2 +- runtime/Dockerfile.ubuntu | 2 +- runtime/Makefile | 49 ++++++++++++++++++++++++++++++++------- 10 files changed, 69 insertions(+), 20 deletions(-) diff --git a/hook/Dockerfile.amzn b/hook/Dockerfile.amzn index 2c31a94..6d48382 100644 --- a/hook/Dockerfile.amzn +++ b/hook/Dockerfile.amzn @@ -28,7 +28,7 @@ COPY oci-nvidia-hook $DIST_DIR/oci-nvidia-hook # Hook for libpod/CRI-O: https://github.com/containers/libpod/blob/v0.8.5/pkg/hooks/docs/oci-hooks.5.md COPY oci-nvidia-hook.json $DIST_DIR/oci-nvidia-hook.json -WORKDIR $DIST_DIR/.. +WORKDIR $DIST_DIR/.. /dist COPY rpm . CMD arch=$(uname -m) && \ diff --git a/hook/Dockerfile.centos b/hook/Dockerfile.centos index 1ad3217..3f468e1 100644 --- a/hook/Dockerfile.centos +++ b/hook/Dockerfile.centos @@ -10,7 +10,7 @@ ENV RELEASE $PKG_REV # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-hook-$PKG_VERS/SOURCES -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist # nvidia-container-runtime-hook COPY nvidia-container-runtime-hook/ $GOPATH/src/nvidia-container-runtime-hook diff --git a/hook/Dockerfile.debian b/hook/Dockerfile.debian index 2823c47..5b070fb 100644 --- a/hook/Dockerfile.debian +++ b/hook/Dockerfile.debian @@ -12,7 +12,7 @@ ENV SECTION "" # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-hook-$PKG_VERS -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist # nvidia-container-runtime-hook COPY nvidia-container-runtime-hook/ $GOPATH/src/nvidia-container-runtime-hook diff --git a/hook/Dockerfile.ubuntu b/hook/Dockerfile.ubuntu index 8315430..1c0445e 100644 --- a/hook/Dockerfile.ubuntu +++ b/hook/Dockerfile.ubuntu @@ -12,7 +12,7 @@ ENV SECTION "" # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-hook-$PKG_VERS -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist # nvidia-container-runtime-hook COPY nvidia-container-runtime-hook/ $GOPATH/src/nvidia-container-runtime-hook diff --git a/hook/Makefile b/hook/Makefile index 484efe3..2cb26df 100644 --- a/hook/Makefile +++ b/hook/Makefile @@ -11,30 +11,46 @@ DIST_DIR := $(CURDIR)/../dist all: ubuntu18.04 ubuntu16.04 ubuntu14.04 debian9 debian8 centos7 amzn2 amzn1 +ubuntu%: ARCH := amd64 ubuntu%: $(CURDIR)/Dockerfile.ubuntu $(DOCKER) build --build-arg VERSION_ID="$*" \ --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="1" \ -t "nvidia/hook/ubuntu:$*" -f Dockerfile.ubuntu . - $(DOCKER) run --rm -v $(DIST_DIR)/$@:/dist:Z "nvidia/hook/ubuntu:$*" + $(MKDIR) -p $(DIST_DIR)/$@/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/hook/ubuntu:$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/$@/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +debian%: ARCH := amd64 debian%: $(CURDIR)/Dockerfile.debian $(DOCKER) build --build-arg VERSION_ID="$*" \ --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="1" \ -t "nvidia/hook/debian:$*" -f Dockerfile.debian . - $(DOCKER) run --rm -v $(DIST_DIR)/$@:/dist:Z "nvidia/hook/debian:$*" + $(MKDIR) -p $(DIST_DIR)/$@/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/hook/debian:$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/$@/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +centos%: ARCH := x86_64 centos%: $(CURDIR)/Dockerfile.centos $(DOCKER) build --build-arg VERSION_ID="$*" \ --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="2" \ -t "nvidia/hook/centos:$*" -f Dockerfile.centos . - $(DOCKER) run --rm -v $(DIST_DIR)/$@:/dist:Z "nvidia/hook/centos:$*" + $(MKDIR) -p $(DIST_DIR)/$@/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/hook/centos:$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/$@/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +amzn%: ARCH := x86_64 amzn%: $(CURDIR)/Dockerfile.amzn $(DOCKER) build --build-arg VERSION_ID="$*" \ --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="2.amzn$*" \ -t "nvidia/hook/amzn:$*" -f Dockerfile.amzn . - $(DOCKER) run --rm -v $(DIST_DIR)/$@:/dist:Z "nvidia/hook/amzn:$*" + $(MKDIR) -p $(DIST_DIR)/$@/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/hook/amzn:$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/$@/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid diff --git a/runtime/Dockerfile.amzn b/runtime/Dockerfile.amzn index b56a4dc..f09d774 100644 --- a/runtime/Dockerfile.amzn +++ b/runtime/Dockerfile.amzn @@ -26,7 +26,7 @@ ENV RELEASE $PKG_REV # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-$PKG_VERS/SOURCES -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist ARG RUNC_COMMIT COPY runc/$RUNC_COMMIT/ /tmp/patches/runc diff --git a/runtime/Dockerfile.centos b/runtime/Dockerfile.centos index e092f21..cac5a7b 100644 --- a/runtime/Dockerfile.centos +++ b/runtime/Dockerfile.centos @@ -45,7 +45,7 @@ ENV RELEASE $PKG_REV # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-$PKG_VERS/SOURCES -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist ARG RUNC_COMMIT COPY runc/$RUNC_COMMIT/ /tmp/patches/runc diff --git a/runtime/Dockerfile.debian b/runtime/Dockerfile.debian index 929eff1..6d0c8bf 100644 --- a/runtime/Dockerfile.debian +++ b/runtime/Dockerfile.debian @@ -30,7 +30,7 @@ ENV SECTION "" # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-$PKG_VERS -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist ARG RUNC_COMMIT COPY runc/$RUNC_COMMIT/ /tmp/patches/runc diff --git a/runtime/Dockerfile.ubuntu b/runtime/Dockerfile.ubuntu index bd6744f..551a8be 100644 --- a/runtime/Dockerfile.ubuntu +++ b/runtime/Dockerfile.ubuntu @@ -33,7 +33,7 @@ ENV SECTION "" # output directory ENV DIST_DIR=/tmp/nvidia-container-runtime-$PKG_VERS -RUN mkdir -p $DIST_DIR +RUN mkdir -p $DIST_DIR /dist ARG RUNC_COMMIT COPY runc/$RUNC_COMMIT/ /tmp/patches/runc diff --git a/runtime/Makefile b/runtime/Makefile index 3842e08..098816d 100644 --- a/runtime/Makefile +++ b/runtime/Makefile @@ -1,6 +1,7 @@ # Copyright (c) 2017-2018, NVIDIA CORPORATION. All rights reserved. DOCKER ?= docker +MKDIR ?= mkdir VERSION := 2.0.0 PKG_REV := 1 @@ -67,6 +68,7 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) 1.12.6-%-runc: echo "50a19c6ff828c58e5dab13830bd3dacde268afe5" +%-ubuntu18.04: ARCH := amd64 %-ubuntu18.04: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="18.04" \ @@ -74,8 +76,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)+docker$*" \ --build-arg PKG_REV="$(PKG_REV)" \ -t "nvidia/runtime/ubuntu:18.04-docker$*" -f Dockerfile.ubuntu . - $(DOCKER) run --rm -v $(DIST_DIR)/ubuntu18.04:/dist:Z "nvidia/runtime/ubuntu:18.04-docker$*" + $(MKDIR) -p $(DIST_DIR)/ubuntu18.04/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/ubuntu:18.04-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/ubuntu18.04/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-ubuntu16.04: ARCH := amd64 %-ubuntu16.04: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="16.04" \ @@ -83,8 +89,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)+docker$*" \ --build-arg PKG_REV="$(PKG_REV)" \ -t "nvidia/runtime/ubuntu:16.04-docker$*" -f Dockerfile.ubuntu . - $(DOCKER) run --rm -v $(DIST_DIR)/ubuntu16.04:/dist:Z "nvidia/runtime/ubuntu:16.04-docker$*" + $(MKDIR) -p $(DIST_DIR)/ubuntu16.04/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/ubuntu:16.04-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/ubuntu16.04/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-ubuntu14.04: ARCH := amd64 %-ubuntu14.04: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="14.04" \ @@ -92,8 +102,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)+docker$*" \ --build-arg PKG_REV="$(PKG_REV)" \ -t "nvidia/runtime/ubuntu:14.04-docker$*" -f Dockerfile.ubuntu . - $(DOCKER) run --rm -v $(DIST_DIR)/ubuntu14.04:/dist:Z "nvidia/runtime/ubuntu:14.04-docker$*" + $(MKDIR) -p $(DIST_DIR)/ubuntu14.04/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/ubuntu:14.04-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/ubuntu14.04/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-debian9: ARCH := amd64 %-debian9: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="9" \ @@ -101,8 +115,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)+docker$*" \ --build-arg PKG_REV="$(PKG_REV)" \ -t "nvidia/runtime/debian:9-docker$*" -f Dockerfile.debian . - $(DOCKER) run --rm -v $(DIST_DIR)/debian9:/dist:Z "nvidia/runtime/debian:9-docker$*" + $(MKDIR) -p $(DIST_DIR)/debian9/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/debian:9-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/debian9/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-debian8: ARCH := amd64 %-debian8: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="8" \ @@ -110,8 +128,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)+docker$*" \ --build-arg PKG_REV="$(PKG_REV)" \ -t "nvidia/runtime/debian:8-docker$*" -f Dockerfile.debian . - $(DOCKER) run --rm -v $(DIST_DIR)/debian8:/dist:Z "nvidia/runtime/debian:8-docker$*" + $(MKDIR) -p $(DIST_DIR)/debian8/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/debian:8-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/debian8/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-centos7: ARCH := x86_64 %-centos7: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="7" \ @@ -119,8 +141,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="$(PKG_REV).docker$*" \ -t "nvidia/runtime/centos:7-docker$*" -f Dockerfile.centos . - $(DOCKER) run --rm -v $(DIST_DIR)/centos7:/dist:Z "nvidia/runtime/centos:7-docker$*" + $(MKDIR) -p $(DIST_DIR)/centos7/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/centos:7-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/centos7/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-amzn2: ARCH := x86_64 %-amzn2: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="2" \ @@ -128,8 +154,12 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="$(PKG_REV).docker$*.amzn2" \ -t "nvidia/runtime/amzn:2-docker$*" -f Dockerfile.amzn . - $(DOCKER) run --rm -v $(DIST_DIR)/amzn2:/dist:Z "nvidia/runtime/amzn:2-docker$*" + $(MKDIR) -p $(DIST_DIR)/amzn2/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/amzn:2-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/amzn2/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid +%-amzn1: ARCH := x86_64 %-amzn1: runc="$(shell $(MAKE) -s $@-runc)" && \ $(DOCKER) build --build-arg VERSION_ID="1" \ @@ -137,4 +167,7 @@ amzn1: $(addsuffix -amzn1, 18.06.1 18.03.1 17.12.1 17.09.1 17.06.2 17.03.2) --build-arg PKG_VERS="$(VERSION)" \ --build-arg PKG_REV="$(PKG_REV).docker$*.amzn1" \ -t "nvidia/runtime/amzn:1-docker$*" -f Dockerfile.amzn . - $(DOCKER) run --rm -v $(DIST_DIR)/amzn1:/dist:Z "nvidia/runtime/amzn:1-docker$*" + $(MKDIR) -p $(DIST_DIR)/amzn1/$(ARCH) + $(DOCKER) run --cidfile $@.cid "nvidia/runtime/amzn:1-docker$*" + $(DOCKER) cp $$(cat $@.cid):/dist/. $(DIST_DIR)/amzn1/$(ARCH)/ + $(DOCKER) rm $$(cat $@.cid) && rm $@.cid -- GitLab