This is an automated email from the ASF dual-hosted git repository.

ndimiduk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/yetus.git


The following commit(s) were added to refs/heads/main by this push:
     new c665b153 YETUS-1267. Download pre-built revive binaries instead of 
compiling from source (#367)
c665b153 is described below

commit c665b1532ed3a9b873e48da60979ef823499b7a1
Author: Nick Dimiduk <[email protected]>
AuthorDate: Mon Mar 23 11:08:38 2026 +0100

    YETUS-1267. Download pre-built revive binaries instead of compiling from 
source (#367)
    
    The go install github.com/mgechev/revive@latest command segfaults on 
linux/arm64 under QEMU
    emulation during the multi-arch Docker image build. Download pre-built 
release binaries per
    architecture instead, matching the pattern already used by golangci-lint.
---
 precommit/src/main/shell/test-patch-docker/Dockerfile | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/precommit/src/main/shell/test-patch-docker/Dockerfile 
b/precommit/src/main/shell/test-patch-docker/Dockerfile
index 97d87df0..a658158d 100644
--- a/precommit/src/main/shell/test-patch-docker/Dockerfile
+++ b/precommit/src/main/shell/test-patch-docker/Dockerfile
@@ -188,8 +188,13 @@ RUN git clone --branch v$BATS_VERSION \
 # revive (golint on steroids)
 ####
 FROM yetusbase AS yetusrevive
+ARG REVIVE_VERSION=1.15.0
 SHELL ["/bin/bash", "-o", "pipefail", "-c"]
-RUN go install github.com/mgechev/revive@latest
+RUN curl -sSL \
+      
https://github.com/mgechev/revive/releases/download/v$REVIVE_VERSION/revive_"$(go
 env GOOS)"_"$(go env GOARCH)".tar.gz \
+      -o revive.tar.gz \
+    && tar -xzf revive.tar.gz -C /usr/local/bin revive \
+    && rm revive.tar.gz
 
 
 ####
@@ -423,7 +428,7 @@ COPY --from=yetusbuf /usr/local/bin/buf /usr/local/bin/buf
 COPY --from=yetusbats /opt/bats /opt/bats
 RUN ln -s /opt/bats/bin/bats /usr/local/bin/bats
 
-COPY --from=yetusrevive /root/go/bin/* /usr/local/bin
+COPY --from=yetusrevive /usr/local/bin/revive /usr/local/bin
 COPY --from=yetuscheckmake /tmp/checkmake/checkmake /usr/local/bin
 COPY --from=yetusgolangci /usr/local/bin/golangci-lint /usr/local/bin
 

Reply via email to