diff --git a/hook/Dockerfile.amzn b/hook/Dockerfile.amzn index 2c31a94f676ff53ee5828a68b06bb65ebe916a9d..6d483825dbf2d4c1c2cec788dfe2a6cbc9943976 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 1ad3217f458ea6fbbcc10873284374721bcaf0c0..3f468e12a9e98011b8ea3348cfa07f53f4b4293f 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 2823c47b68bdb26ebabc1152781ec94025f1f725..5b070fbe69075a9cd6b92766fd665de7c3413e2f 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 831543059d8e3df4b36ccefdccf2df67b98e634a..1c0445e463d2c6dbe3e0faf2e42ef878b3fa2537 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 484efe36f79079761a02b6a1dfcd88ba1d693506..2cb26df6c016125b66eb40004d08cba869f9f42b 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 b56a4dcb8a5fd97c3d3beb41bec46df3ebef7151..f09d774d9e36ddc76c64d9d56fc92440c76b290e 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 e092f21cb99fb87aa720ad260d89e4868cf5ff67..cac5a7bd74b7eba115e00b2f75ff5faa7f6bf1bd 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 929eff1e75205c49243fd35b0c29d539aaf9fab5..6d0c8bf42cc4d8db3cf2b29bd0cbf5e8e00b67ad 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 bd6744f5f3119ca50e64e71db9703b7af817c3ba..551a8bea62f63ae6df44a5c4531e63f25faed5b7 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 3842e0825c3e57c84276cdf707c13e7acb99cde3..098816d313569fcd9c45de7cfb6eb19de58e4891 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