Skip to content

images: add ubuntu/26.04#1798

Merged
debarshiray merged 2 commits into
containers:mainfrom
Ferenc-:ubuntu-26.04
Jun 2, 2026
Merged

images: add ubuntu/26.04#1798
debarshiray merged 2 commits into
containers:mainfrom
Ferenc-:ubuntu-26.04

Conversation

@Ferenc-
Copy link
Copy Markdown
Contributor

@Ferenc- Ferenc- commented May 28, 2026

Add Ubuntu 26.04 image.

@Ferenc- Ferenc- requested a review from Jmennius as a code owner May 28, 2026 11:28
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 new Containerfile and an extra-packages list to build an Ubuntu 26.04 base image for Toolbox containers. The review feedback highlights several opportunities to improve build robustness, such as correcting a typo in the metadata labels, using the -f flag with rm to prevent build failures if targeted files are missing, and safely deleting the ubuntu user only if it exists.

Comment thread images/ubuntu/26.04/Containerfile

# 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 these configuration files are missing or renamed in future versions of the base image. Using rm -f ensures the build is more robust.

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


# 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 upstream update), userdel will fail with a non-zero exit code, causing the image build to fail. It is safer to check if the user exists before attempting to delete it, or ignore the failure.

RUN id -u ubuntu &>/dev/null && 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 will cause the build to fail if the ESM hook file is not present. Using rm -f is safer and more robust against changes in the base image.

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

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 a lot for adding the image definition for Ubuntu 26.04! I took a quick look at it, and it seems sane to me. I will wait a bit to hear from @Jmennius because he is our Ubuntu maintainer before merging it.

Meanwhile, I left some comments below; and could you please add the URL of this pull request to the commit message, and tweak it to something like this to match the format we use elsewhere:

.github/workflows, images/ubuntu: Add image definition for Ubuntu 26.04

Comment thread .github/workflows/ubuntu-images.yaml Outdated
Comment thread .github/workflows/ubuntu-images.yaml Outdated
Ferenc- added a commit to Ferenc-/toolbox that referenced this pull request May 29, 2026
@Ferenc-
Copy link
Copy Markdown
Contributor Author

Ferenc- commented May 29, 2026

Thanks a lot for adding the image definition for Ubuntu 26.04! I took a quick look at it, and it seems sane to me. I will wait a bit to hear from @Jmennius because he is our Ubuntu maintainer before merging it.

Meanwhile, I left some comments below; and could you please add the URL of this pull request to the commit message, and tweak it to something like this to match the format we use elsewhere:

.github/workflows, images/ubuntu: Add image definition for Ubuntu 26.04

Thanks for the feedback, I have done the changes. PTAL.

@debarshiray
Copy link
Copy Markdown
Member

recheck

debarshiray pushed a commit to Ferenc-/toolbox that referenced this pull request Jun 1, 2026
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 a lot for updating the pull request, @Ferenc- ! Everything looks great.

Normally, I would wait for @Jmennius to merge, but you look like an enthusiastic first-time contributor and we have been missing the image since Ubuntu 26.04 was released on the 23rd of April, so I will make an exception and merge once the CI finishes running. :)

@debarshiray
Copy link
Copy Markdown
Member

We are missing an image for Ubuntu 25.10. @Ferenc- would you be interested in submitting a separate pull request to add it?

@debarshiray
Copy link
Copy Markdown
Member

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

system-test-fedora-rawhide-commands-options TIMED_OUT in 2h 00m 32s

This is odd:

fedora-rawhide | 1..239
fedora-rawhide | # test suite: Set up
RUN END RESULT_TIMED_OUT: [untrusted : github.com/containers/toolbox/playbooks/system-test-commands-options.yaml@main]
POST-RUN START: [trusted : softwarefactory-project.io/config/playbooks/base/post.yaml@master]

@centosinfra-prod-github-app
Copy link
Copy Markdown

@debarshiray
Copy link
Copy Markdown
Member

recheck

@Ferenc-
Copy link
Copy Markdown
Contributor Author

Ferenc- commented Jun 2, 2026

We are missing an image for Ubuntu 25.10. @Ferenc- would you be interested in submitting a separate pull request to add it?

Yes, I could do that too.

@Ferenc-
Copy link
Copy Markdown
Contributor Author

Ferenc- commented Jun 2, 2026

And I suppose the 24.10 should be removed at the same time, since that is EOL,
the repos are not even available and that is also the reason why the 24.10 build fails in the CI here.

@centosinfra-prod-github-app
Copy link
Copy Markdown

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

✔️ unit-test SUCCESS in 2m 22s
unit-test-migration-path-for-coreos-toolbox NODE_FAILURE Node(set) request 200-0000109188 failed in 0s
unit-test-restricted NODE_FAILURE Node(set) request 200-0000109189 failed in 0s
system-test-fedora-rawhide-commands-options TIMED_OUT in 2h 00m 32s
✔️ system-test-fedora-rawhide-runtime-environment-arch-fedora SUCCESS in 27m 50s
✔️ system-test-fedora-rawhide-runtime-environment-ubuntu SUCCESS in 7m 25s
✔️ system-test-fedora-44-commands-options SUCCESS in 31m 54s
system-test-fedora-44-runtime-environment-arch-fedora NODE_FAILURE Node(set) request 200-0000109211 failed in 0s
✔️ system-test-fedora-44-runtime-environment-ubuntu SUCCESS in 6m 24s
✔️ system-test-fedora-43-commands-options SUCCESS in 32m 57s
✔️ system-test-fedora-43-runtime-environment-arch-fedora SUCCESS in 23m 59s
system-test-fedora-43-runtime-environment-ubuntu NODE_FAILURE Node(set) request 200-0000109198 failed in 0s
system-test-fedora-42-commands-options NODE_FAILURE Node(set) request 200-0000109219 failed in 0s
system-test-fedora-42-runtime-environment-arch-fedora NODE_FAILURE Node(set) request 200-0000109200 failed in 0s
system-test-fedora-42-runtime-environment-ubuntu NODE_FAILURE Node(set) request 200-0000109218 failed in 0s

@debarshiray
Copy link
Copy Markdown
Member

debarshiray commented Jun 2, 2026

And I suppose the 24.10 should be removed at the same time, since that is EOL, the repos are not even available and that is also the reason why the 24.10 build fails in the CI here.

Yes, indeed, Ubuntu 24.10 reached End of Life on the 10th of July 2025. Let me insert a commit before yours to see if it helps with the CI.

@debarshiray debarshiray marked this pull request as draft June 2, 2026 11:35
@debarshiray debarshiray marked this pull request as ready for review June 2, 2026 18:26
@debarshiray
Copy link
Copy Markdown
Member

Build failed. https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/local/buildset/875f23f237194f62ba38e2bb14f95662
system-test-fedora-rawhide-commands-options TIMED_OUT in 2h 00m 32s

This is odd:

fedora-rawhide | 1..239
fedora-rawhide | # test suite: Set up
RUN END RESULT_TIMED_OUT: [untrusted : github.com/containers/toolbox/playbooks/system-test-commands-options.yaml@main]
POST-RUN START: [trusted : softwarefactory-project.io/config/playbooks/base/post.yaml@master]

I am going to take a leap of faith and ignore this failure on the assumption that it's something to do with Fedora Rawhide or the Software Factory infrastructure, because everything was fine 5 days ago and nothing relevant to these tests changed since then.

@debarshiray debarshiray merged commit 77d693b into containers:main Jun 2, 2026
8 of 9 checks passed
@debarshiray
Copy link
Copy Markdown
Member

Thank you for playing with Toolbx, @Ferenc- ; and congratulations on your first contribution! :)

I am looking forward to your pull request for the Ubuntu 25.10 image.

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