diff --git a/Dockerfile b/Dockerfile index d9981db1..bb5d8a4c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,15 +7,7 @@ RUN ./build_linux.sh && \ cd /usr/src/plugins/bin WORKDIR / -FROM registry.ci.openshift.org/ocp/builder:rhel-8-golang-1.24-openshift-4.21 AS rhel8 -ADD . /usr/src/plugins -WORKDIR /usr/src/plugins -ENV CGO_ENABLED=0 -RUN ./build_linux.sh && \ - cd /usr/src/plugins/bin -WORKDIR / - -FROM registry.ci.openshift.org/ocp/builder:rhel-8-golang-1.24-openshift-4.21 AS windows +FROM registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.24-openshift-4.21 AS windows ADD . /usr/src/plugins WORKDIR /usr/src/plugins ENV CGO_ENABLED=0 @@ -25,13 +17,13 @@ WORKDIR / FROM registry.ci.openshift.org/ocp/4.21:base-rhel9 RUN mkdir -p /usr/src/plugins/bin && \ - mkdir -p /usr/src/plugins/rhel8/bin && \ mkdir -p /usr/src/plugins/rhel9/bin && \ + mkdir -p /usr/src/plugins/rhel10/bin && \ mkdir -p /usr/src/plugins/windows/bin -COPY --from=rhel8 /usr/src/plugins/bin/* /usr/src/plugins/rhel8/bin/ -# pod container image is RHEL8 based, so use rhel8 -COPY --from=rhel8 /usr/src/plugins/bin/* /usr/src/plugins/bin/ -COPY --from=rhel9 /usr/src/plugins/bin/* /usr/src/plugins/rhel9/bin/ +COPY --from=rhel9 /usr/src/plugins/bin/* /usr/src/plugins/bin/ +RUN ln /usr/src/plugins/bin/* /usr/src/plugins/rhel9/bin/ +# For now assume rhel9 binaries are compatible with rhel10 +RUN ln /usr/src/plugins/bin/* /usr/src/plugins/rhel10/bin/ COPY --from=windows /usr/src/plugins/bin/* /usr/src/plugins/windows/bin/ LABEL io.k8s.display-name="Container Networking Plugins" \ diff --git a/build_linux.sh b/build_linux.sh index b6d054e7..ad39faf6 100755 --- a/build_linux.sh +++ b/build_linux.sh @@ -17,7 +17,7 @@ for d in $PLUGINS; do plugin="$(basename "$d")" if [ "${plugin}" != "windows" ]; then echo " $plugin" - ${GO:-go} build -o "${PWD}/bin/$plugin" "$@" ./"$d" + ${GO:-go} build -o "${PWD}/bin/$plugin" -ldflags "-s -w" "$@" ./"$d" fi fi done