diff --git a/Dockerfile.ubi8 b/Dockerfile.ubi8 index 0028c87..7caf7bf 100644 --- a/Dockerfile.ubi8 +++ b/Dockerfile.ubi8 @@ -14,20 +14,36 @@ ARG BASE_DIST=ubi8 ARG CUDA_VERSION -ARG GOLANG_VERSION +ARG GOLANG_VERSION=x.x.x ARG VERSION="N/A" -FROM golang:${GOLANG_VERSION} as builder +FROM nvcr.io/nvidia/cuda:${CUDA_VERSION}-base-${BASE_DIST} as build + +RUN yum install -y wget make git gcc + +ARG GOLANG_VERSION=0.0.0 +RUN set -eux; \ + \ + arch="$(uname -m)"; \ + case "${arch##*-}" in \ + x86_64 | amd64) ARCH='amd64' ;; \ + ppc64el | ppc64le) ARCH='ppc64le' ;; \ + aarch64) ARCH='arm64' ;; \ + *) echo "unsupported architecture" ; exit 1 ;; \ + esac; \ + wget -nv -O - https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-${ARCH}.tar.gz \ + | tar -C /usr/local -xz + +ENV GOPATH /go +ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH WORKDIR /build -# Copy the go source COPY . . -# Build -RUN make cmds GO_BUILD_ENV='CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH}' +RUN GOOS=linux make cmd-k8s-kata-manager FROM nvcr.io/nvidia/cuda:${CUDA_VERSION}-base-${BASE_DIST} -COPY --from=builder /build/bin/k8s-kata-manager /usr/local/bin/k8s-kata-manager -COPY --from=builder /build/bin/kata-manager /usr/local/bin/kata-manager + +COPY --from=build /build/bin/k8s-kata-manager /usr/local/bin/k8s-kata-manager RUN dnf install -y kmod diff --git a/Makefile b/Makefile index 6a122f1..74d500c 100644 --- a/Makefile +++ b/Makefile @@ -23,8 +23,6 @@ GO_CMD ?= go GO_FMT ?= gofmt GO_TEST_FLAGS ?= -race LDFLAGS = -ldflags "-s -w -X github.com/NVIDIA/k8s-kata-manager/internal/version.version=$(GIT_COMMIT)" -# Use go.mod go version as a single source of truth of GO version. -GOLANG_VERSION := $(shell awk '/^go /{print $$2}' go.mod|head -n1) ##### General make targets ##### CMDS := $(patsubst ./cmd/%/,%,$(sort $(dir $(wildcard ./cmd/*/)))) diff --git a/versions.mk b/versions.mk index 9af94ee..1d0994a 100644 --- a/versions.mk +++ b/versions.mk @@ -17,3 +17,5 @@ VERSION ?= v0.1.0 vVERSION := v$(VERSION:v%=%) CUDA_VERSION := 12.2.0 + +GOLANG_VERSION := 1.20.4