Laszlo Gaal has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/22583 )

Change subject: IMPALA-13825: Extend Docker container build to custom base 
images
......................................................................


Patch Set 1:

(9 comments)

http://gerrit.cloudera.org:8080/#/c/22583/1//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/22583/1//COMMIT_MSG@33
PS1, Line 33: - USE_HARDENED_IMPALA_BASE_IMAGE:
            :   If set to 'true', triggers the use of  the custom image.
            :   When set to 'false' or left unspecified, the Docker base image 
is
            :   selected by the existing logic of matching the build platform's
            :   operating system.
            : - IMPALA_HARDENED_DOCKER_BASE: specifies the URI of the base image
> I didn't see these env vars in the patch - maybe these are from a different
Thanks for spotting; these were the original names of the environment 
variables, which were then renamed to more neutral terms.
I'll update the commit message.


http://gerrit.cloudera.org:8080/#/c/22583/1/bin/impala-config.sh
File bin/impala-config.sh:

http://gerrit.cloudera.org:8080/#/c/22583/1/bin/impala-config.sh@302
PS1, Line 302: # The following environment variables allow a specific base 
image to be specified directly,
> line too long (91 > 90)
Ack


http://gerrit.cloudera.org:8080/#/c/22583/1/bin/impala-config.sh@306
PS1, Line 306: export 
IMPALA_CUSTOM_DOCKER_BASE=${IMPALA_CUSTOM_DOCKER_BASE:-"cgr.dev/chainguard/wolfi-base:latest"}
> line too long (101 > 90)
Ack


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/daemon_entrypoint.sh
File docker/daemon_entrypoint.sh:

http://gerrit.cloudera.org:8080/#/c/22583/1/docker/daemon_entrypoint.sh@176
PS1, Line 176:   else
             :     echo "ERROR: en_US.utf8 locale is not present."
> I don't think this extra indentation makes sense.
Ack


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/daemon_entrypoint.sh@194
PS1, Line 194: export LC_ALL=C.UTF-8
> Is this intentional? It overrides the setting from previous block.
Hmmm..... great catch; might be an earlier copy-paste (or maybe rebase/merge) 
error. I'll double-check, but you're probably right.


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/impala_base/Dockerfile
File docker/impala_base/Dockerfile:

http://gerrit.cloudera.org:8080/#/c/22583/1/docker/impala_base/Dockerfile@33
PS1, Line 33: # RUN 
--mount=type=bind,source=helper/install_os_packages.sh,target=/root/os_packages.sh
 \
            : #     /root/os_packages.sh ${INSTALL_OS_PACKAGES_ARGS}
> is this left here by mistake?
Ack


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/impala_profile_tool/Dockerfile
File docker/impala_profile_tool/Dockerfile:

http://gerrit.cloudera.org:8080/#/c/22583/1/docker/impala_profile_tool/Dockerfile@34
PS1, Line 34: # RUN 
--mount=type=bind,source=helper/install_os_packages.sh,target=/root/os_packages.sh
 \
            : #     /root/os_packages.sh ${INSTALL_OS_PACKAGES_ARGS}
> ?
Ack,

the same remnant of an earlier attempt.


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/install_bash_if_needed.sh
File docker/install_bash_if_needed.sh:

http://gerrit.cloudera.org:8080/#/c/22583/1/docker/install_bash_if_needed.sh@55
PS1, Line 55:   echo "Only ChainGuard/Wolfi, Ubuntu, or Redhat (or derivative) 
base images are supported."
> line too long (92 > 90)
Ack


http://gerrit.cloudera.org:8080/#/c/22583/1/docker/install_os_packages.sh
File docker/install_os_packages.sh:

http://gerrit.cloudera.org:8080/#/c/22583/1/docker/install_os_packages.sh@128
PS1, Line 128: elif [[ -f /sbin/apk && -x /sbin/apk ]]; then
             :     echo "Indentified Wolfi-based system."
> Why does this indicate Chainguard? Is it the only system with apk? The log
It was essentially a compromise.
The other option was using two different qualifiers, one for Chainguard/Wolfi, 
the other for generic APK-based systems. This would have required a longer 
check for $DISTRIBUTION in the form of
    if [[ $DISTRIBUTION == Chainguard || $DISTRIBUTION == ApkBased ]]; then ....
which is a bit longer to read and a bit easier to mess up.
Also, I didn't want to imply that Impala supports APK-based distros in general, 
as these would mostly be based on Alpine, where you can easily have `musl` as 
the LIBC implementation instead of `glibc`, and `musl` has known problems in 
several areas critical to Impala.

I'll ponder this, but I'm not sure that I can come up with a good phrase for 
this; suggestions are welcome :)



--
To view, visit http://gerrit.cloudera.org:8080/22583
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ia5e39f399664fe66f3774caa316ed5d4df24befc
Gerrit-Change-Number: 22583
Gerrit-PatchSet: 1
Gerrit-Owner: Laszlo Gaal <laszlo.g...@cloudera.com>
Gerrit-Reviewer: Csaba Ringhofer <csringho...@cloudera.com>
Gerrit-Reviewer: Daniel Vanko <dva...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Laszlo Gaal <laszlo.g...@cloudera.com>
Gerrit-Comment-Date: Thu, 06 Mar 2025 15:51:04 +0000
Gerrit-HasComments: Yes

Reply via email to