From 99a604c5e5546edf57fc8ea75d82918b0527439e Mon Sep 17 00:00:00 2001 From: MaBing Date: Fri, 6 Mar 2026 18:00:43 +0800 Subject: [PATCH 1/2] add conda cli --- data-loader.Dockerfile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/data-loader.Dockerfile b/data-loader.Dockerfile index a42d925..c8f9dd8 100644 --- a/data-loader.Dockerfile +++ b/data-loader.Dockerfile @@ -25,6 +25,8 @@ RUN CGO_ENABLED=0 GOOS=${TARGETOS:-linux} GOARCH=${TARGETARCH} go build -ldflags FROM python:3.13 ARG JAVA_HOME=/opt/java ARG HADOOP_HOME=/opt/hadoop +ENV CONDA_DIR=/opt/conda +ENV PATH=$CONDA_DIR/bin:$PATH ENV JAVA_HOME=${JAVA_HOME} \ HADOOP_HOME=${HADOOP_HOME} \ PATH=${PATH}:${HADOOP_HOME}/bin:${JAVA_HOME}/bin @@ -43,7 +45,11 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update -yq && \ wget https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.30%2B7/OpenJDK11U-jre_${jre_arch}_linux_hotspot_11.0.30_7.tar.gz -O jre.tar.gz && \ tar -zxf jre.tar.gz -C /opt && \ mv /opt/jdk-11* /opt/java && \ - rm jre.tar.gz + rm jre.tar.gz && \ + wget -q https://github.com/conda-forge/miniforge/releases/download/26.1.0-0/Miniforge3-26.1.0-0-Linux-$(uname -m).sh -O /tmp/miniforge.sh \ + && bash /tmp/miniforge.sh -b -p $CONDA_DIR \ + && rm /tmp/miniforge.sh \ + && conda clean -afy COPY --from=builder /workspace/data-loader /usr/local/bin/ From 17c468f7ca5143b744ed056e4b5a7cd86852a09e Mon Sep 17 00:00:00 2001 From: MaBing Date: Mon, 9 Mar 2026 10:34:08 +0800 Subject: [PATCH 2/2] fix goalngci-lint QF1012 --- data-loader.Dockerfile | 2 +- internal/pkg/datasources/datasource_conda.go | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/data-loader.Dockerfile b/data-loader.Dockerfile index c8f9dd8..64ba293 100644 --- a/data-loader.Dockerfile +++ b/data-loader.Dockerfile @@ -70,5 +70,5 @@ RUN echo "export JAVA_HOME=${JAVA_HOME}" >> ${HADOOP_HOME}/etc/hadoop/hadoop-env && find share/hadoop/common/lib/ \ \( -name "jetty-*" -o -name "jersey-*" -o -name "netty-*" \) \ -exec rm -rf {} + - +WORKDIR /workspace ENTRYPOINT ["/usr/local/bin/data-loader"] diff --git a/internal/pkg/datasources/datasource_conda.go b/internal/pkg/datasources/datasource_conda.go index dad2f82..a731802 100644 --- a/internal/pkg/datasources/datasource_conda.go +++ b/internal/pkg/datasources/datasource_conda.go @@ -373,7 +373,7 @@ func renderPipConfig(pipIndexURL string, pipExtraIndexURLs []string) (string, er return "", err } - sb.WriteString(fmt.Sprintf("index-url = %s\n", pipIndexURL)) + fmt.Fprintf(&sb, "index-url = %s\n", pipIndexURL) trustedHosts = append(trustedHosts, parsedPipIndexURL.Host) } if len(pipExtraIndexURLs) > 0 { @@ -383,7 +383,7 @@ func renderPipConfig(pipIndexURL string, pipExtraIndexURLs []string) (string, er return "", err } - sb.WriteString(fmt.Sprintf("extra-index-url = %s\n", pipExtraIndexURLs[0])) + fmt.Fprintf(&sb, "extra-index-url = %s\n", pipExtraIndexURLs[0]) trustedHosts = append(trustedHosts, parsedExtraIndexURL.Host) } else { extraIndexURLs := make([]string, 0, len(pipExtraIndexURLs)) @@ -397,14 +397,18 @@ func renderPipConfig(pipIndexURL string, pipExtraIndexURLs []string) (string, er trustedHosts = append(trustedHosts, parsedExtraIndexURL.Host) } - sb.WriteString(fmt.Sprintf("extra-index-url =\n %s\n", strings.Join(extraIndexURLs, "\n "))) + fmt.Fprintf( + &sb, + "extra-index-url =\n %s\n", + strings.Join(extraIndexURLs, "\n "), + ) } } if len(trustedHosts) > 0 { if len(trustedHosts) == 1 { - sb.WriteString(fmt.Sprintf("trusted-host = %s\n", trustedHosts[0])) + fmt.Fprintf(&sb, "trusted-host = %s\n", trustedHosts[0]) } else { - sb.WriteString(fmt.Sprintf("trusted-host =\n %s\n", strings.Join(trustedHosts, "\n "))) + fmt.Fprintf(&sb, "trusted-host =\n %s\n", strings.Join(trustedHosts, "\n ")) } }