Skip to content

.github/workflows, images/ubuntu: Add image definition for Ubuntu 25.10#1801

Open
Ferenc- wants to merge 1 commit into
containers:mainfrom
Ferenc-:ubuntu-25.10
Open

.github/workflows, images/ubuntu: Add image definition for Ubuntu 25.10#1801
Ferenc- wants to merge 1 commit into
containers:mainfrom
Ferenc-:ubuntu-25.10

Conversation

@Ferenc-
Copy link
Copy Markdown
Contributor

@Ferenc- Ferenc- commented Jun 3, 2026

Add Ubuntu 25.10 image.

@Ferenc- Ferenc- requested a review from Jmennius as a code owner June 3, 2026 07:25
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a Containerfile and an extra-packages list to build a toolbox container image for Ubuntu 25.10. The review feedback focuses on improving the robustness of the build process, specifically recommending the use of rm -f instead of rm to avoid failures if files are missing, using the standard rm -rf for cleaning up apt lists, and appending || true to the userdel command to handle cases where the user does not exist.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.


# Remove apt configuration optimized for containers
# Remove docker-gzip-indexes to help with "command-not-found"
RUN rm /etc/apt/apt.conf.d/docker-gzip-indexes /etc/apt/apt.conf.d/docker-no-languages
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using rm without the -f (force) flag can cause the build to fail if the target files do not exist (e.g., if they are removed or renamed in a future revision of the base image). It is safer and more robust to use rm -f.

RUN rm -f /etc/apt/apt.conf.d/docker-gzip-indexes /etc/apt/apt.conf.d/docker-no-languages

Comment on lines +18 to +27
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get -y install unminimize && \
sed -Ei '/apt-get (update|upgrade)/s/^/#/' /usr/bin/unminimize && \
yes | /usr/bin/unminimize && \
DEBIAN_FRONTEND=noninteractive apt-get -y install \
ubuntu-minimal ubuntu-standard \
libnss-myhostname \
flatpak-xdg-utils \
$(cat extra-packages | xargs) && \
rm -rd /var/lib/apt/lists/*
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using rm -rd is non-standard for cleaning up /var/lib/apt/lists/*. Using rm -rf is the standard, robust, and idiomatic way to clean up apt lists in Dockerfiles.

RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get -y install unminimize && \
    sed -Ei '/apt-get (update|upgrade)/s/^/#/' /usr/bin/unminimize && \
    yes | /usr/bin/unminimize && \
    DEBIAN_FRONTEND=noninteractive apt-get -y install \
        ubuntu-minimal ubuntu-standard \
        libnss-myhostname \
        flatpak-xdg-utils \
        $(cat extra-packages | xargs) && \
    rm -rf /var/lib/apt/lists/*

flatpak-xdg-utils \
$(cat extra-packages | xargs) && \
rm -rd /var/lib/apt/lists/*
RUN rm /extra-packages
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using rm without the -f flag can cause the build to fail if the file is missing. It is safer to use rm -f.

RUN rm -f /extra-packages


# Having anything in /home prevents toolbox from symlinking /var/home there,
# and 'ubuntu' user with UID 1000 will most likely conflict with host user as well
RUN userdel --remove ubuntu
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

If the ubuntu user does not exist in the base image (or is removed in a future revision), userdel will fail with an exit code, causing the build to fail. Appending || true or checking for user existence first makes the build more robust.

RUN userdel --remove ubuntu || true

RUN userdel --remove ubuntu

# Disable APT ESM hook which tries to enable some systemd services on each apt invocation
RUN rm /etc/apt/apt.conf.d/20apt-esm-hook.conf
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Using rm without the -f flag can cause the build to fail if the file is missing. It is safer to use rm -f.

RUN rm -f /etc/apt/apt.conf.d/20apt-esm-hook.conf

Ferenc- added a commit to Ferenc-/toolbox that referenced this pull request Jun 3, 2026
@centosinfra-prod-github-app
Copy link
Copy Markdown

Build failed.
https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/local/buildset/96f0369643224169b23758ea6b45938a

✔️ unit-test SUCCESS in 2m 25s
unit-test-migration-path-for-coreos-toolbox NODE_FAILURE Node(set) request 200-0000110087 failed in 0s
unit-test-restricted NODE_FAILURE Node(set) request 200-0000110088 failed in 0s
system-test-fedora-rawhide-commands-options TIMED_OUT in 2h 00m 30s
✔️ system-test-fedora-rawhide-runtime-environment-arch-fedora SUCCESS in 27m 59s
system-test-fedora-rawhide-runtime-environment-ubuntu NODE_FAILURE Node(set) request 200-0000110091 failed in 0s
system-test-fedora-44-commands-options NODE_FAILURE Node(set) request 200-0000110092 failed in 0s
system-test-fedora-44-runtime-environment-arch-fedora NODE_FAILURE Node(set) request 200-0000110093 failed in 0s
system-test-fedora-44-runtime-environment-ubuntu NODE_FAILURE Node(set) request 200-0000110110 failed in 0s
system-test-fedora-43-commands-options NODE_FAILURE Node(set) request 200-0000110095 failed in 0s
✔️ system-test-fedora-43-runtime-environment-arch-fedora SUCCESS in 23m 05s
✔️ system-test-fedora-43-runtime-environment-ubuntu SUCCESS in 6m 36s
system-test-fedora-42-commands-options NODE_FAILURE Node(set) request 200-0000110106 failed in 0s
✔️ system-test-fedora-42-runtime-environment-arch-fedora SUCCESS in 23m 04s
✔️ system-test-fedora-42-runtime-environment-ubuntu SUCCESS in 6m 19s

@debarshiray
Copy link
Copy Markdown
Member

recheck

Copy link
Copy Markdown
Member

@debarshiray debarshiray left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for quickly spinning up this pull request, @Ferenc- ! The code changes look good to me. Let's see if we can convince the CI to turn green, and if @Jmennius has anything to add.

@debarshiray
Copy link
Copy Markdown
Member

recheck

@debarshiray
Copy link
Copy Markdown
Member

Rebased against main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants