2323
2424jobs :
2525 packages :
26- runs-on : ubuntu-latest
2726 strategy :
2827 matrix :
2928 target :
30- - centos7-aarch64
31- - centos7-x86_64
29+ - runner : ubuntu-24.04
30+ arch : amd64
31+ - runner : ubuntu-24.04-arm
32+ arch : arm64
33+ runs-on : ${{ matrix.target.runner }}
3234 steps :
3335 - uses : actions/checkout@v4
3436 name : Check out code
3537 with :
3638 submodules : recursive
37- - name : Set up QEMU
38- uses : docker/setup-qemu-action@v3
3939 - name : Set up Docker Buildx
4040 uses : docker/setup-buildx-action@v3
41- - name : build ${{ matrix.target }} packages
41+ - name : libnvidia-container
42+ run : |
43+ REVISION=$(git -C third_party/libnvidia-container rev-parse HEAD)
44+ BUILDX_TAG=nvidia/libnvidia-container/ubuntu20.04-${{ matrix.target.arch }}
45+ DIST=./dist/ubuntu20.04/${{ matrix.target.arch }}
46+ mkdir -p $DIST
47+ docker buildx build \
48+ --platform=linux/${{ matrix.target.arch }} \
49+ --progress=plain \
50+ --build-arg BASEIMAGE="ubuntu:20.04" \
51+ --build-arg OS_VERSION="20.04" \
52+ --build-arg OS_ARCH="${{ matrix.target.arch }}" \
53+ --build-arg GOLANG_VERSION="1.17.1" \
54+ --build-arg WITH_NVCGO="yes" \
55+ --build-arg WITH_LIBELF="no" \
56+ --build-arg WITH_TIRPC="no" \
57+ --build-arg WITH_SECCOMP="yes" \
58+ --build-arg CFLAGS="" \
59+ --build-arg LDLIBS="" \
60+ --build-arg REVISION="$REVISION" \
61+ --build-arg LIB_VERSION="1.17.4" \
62+ --build-arg LIB_TAG="" \
63+ --build-arg LIB_BUILD="" \
64+ --load \
65+ --tag $BUILDX_TAG \
66+ --file third_party/libnvidia-container/mk/Dockerfile.ubuntu third_party/libnvidia-container/
67+ docker run --rm --platform linux/${{ matrix.target.arch }} -v $DIST:/dist $BUILDX_TAG:latest
68+ - name : toolkit
4269 run : |
43- sudo apt-get install -y coreutils build-essential sed git bash make
44- echo "Building packages"
45- ./scripts/build-packages.sh ${{ matrix.target }}
70+ BUILDX_TAG=nvidia/nvidia-container-toolkit/ubuntu20.04-${{ matrix.target.arch }}
71+ DIST=./dist/ubuntu20.04/${{ matrix.target.arch }}
72+ mkdir -p $DIST
73+ docker build \
74+ --platform=linux/${{ matrix.target.arch }} \
75+ --progress=plain \
76+ --build-arg BASEIMAGE="ubuntu:20.04" \
77+ --build-arg GOLANG_VERSION="1.23.4" \
78+ --build-arg PKG_NAME="nvidia-container-toolkit" \
79+ --build-arg PKG_VERS="1.17.4" \
80+ --build-arg PKG_REV="1" \
81+ --build-arg LIBNVIDIA_CONTAINER_TOOLS_VERSION="1.17.4-1" \
82+ --build-arg GIT_COMMIT="${{ github.sha }}" \
83+ --tag $BUILDX_TAG \
84+ --file docker/Dockerfile.ubuntu .
85+ docker run --rm --platform linux/${{ matrix.target.arch }} -v $DIST:/dist $BUILDX_TAG:latest
4686 - name : ' Upload Artifacts'
4787 uses : actions/upload-artifact@v4
4888 with :
89+ name : nvidia-container-toolkit-ubuntu20.04-${{ matrix.target.arch }}-${{ github.run_id }}
90+ path : dist/*
4991 compression-level : 0
50- name : toolkit-container-${{ matrix.target }}-${{ github.run_id }}
51- path : ${{ github.workspace }}/dist/*
5292
5393 image :
54- runs-on : ubuntu-latest
55- strategy :
56- matrix :
57- dist :
58- - ubi8
94+ runs-on : ubuntu-24.04
5995 needs : packages
6096 steps :
6197 - uses : actions/checkout@v4
@@ -64,11 +100,11 @@ jobs:
64100 uses : docker/setup-qemu-action@v3
65101 - name : Set up Docker Buildx
66102 uses : docker/setup-buildx-action@v3
67- - name : Get built packages
103+ - name : Download packages
68104 uses : actions/download-artifact@v4
69105 with :
70- path : ${{ github.workspace }}/ dist/
71- pattern : toolkit -container-*-${{ github.run_id }}
106+ path : dist/
107+ pattern : nvidia -container-toolkit-ubuntu20.04 -*-${{ github.run_id }}
72108 merge-multiple : true
73109 - name : Login to GitHub Container Registry
74110 uses : docker/login-action@v3
77113 username : ${{ github.actor }}
78114 password : ${{ secrets.GITHUB_TOKEN }}
79115 - name : Build image
80- env :
81- IMAGE_NAME : ghcr.io/${{ github.actor }}/container-toolkit
82116 run : |
83- make -f deployments/container/Makefile build-${{ matrix.dist }} PUSH_ON_BUILD="true" BUILD_MULTI_ARCH_IMAGES="true"
117+ make -f deployments/container/Makefile build-ubuntu20.04 \
118+ PUSH_ON_BUILD="true" \
119+ BUILD_MULTI_ARCH_IMAGES="true" \
120+ IMAGE_NAME=ghcr.io/${{ github.actor }}/container-toolkit
0 commit comments