containers / toolbox

Tool for interactive command line environments on Linux
https://containertoolbx.org/
Apache License 2.0
2.39k stars 208 forks source link

images/fedora: Ensure that documentation and translations are present #1396

Closed debarshiray closed 8 months ago

debarshiray commented 8 months ago

This should finally ensure that the fedora-toolbox image doesn't have any package that had its content, such as documentation or translations, stripped out by the fedora base image.

Until now, missing-docs had a hand-maintained list of packages that had their content stripped out by the fedora base image. These packages are reinstalled when building the fedora-toolbox image to restore the lost content. Unfortunately, this list was incomplete because it was only updated when someone noticed that something is missing.

Now, the list is generated with:

  $ rpm --all --query --state --queryformat "PACKAGE: %{NAME}\n"

... to ensure that it's always complete.

The existing built-in test to ensure that the desired files are actually present in the final image was extended to cover some of those that were absent. A new built-in test, based on the above rpm(1) command, was added as a fallback to ensure that the final image doesn't have any package with missing content.

Only the images for currently maintained Fedoras (ie., 37, 38 and 39) were updated.

As suggested by Brian Campbell.

https://github.com/containers/toolbox/issues/603

softwarefactory-project-zuul[bot] commented 8 months ago

Build failed. https://softwarefactory-project.io/zuul/t/local/buildset/2ecef445397e4f629199314403e25e48

:heavy_check_mark: unit-test SUCCESS in 9m 08s :heavy_check_mark: unit-test-migration-path-for-coreos-toolbox SUCCESS in 3m 18s :heavy_check_mark: unit-test-restricted SUCCESS in 7m 48s :x: system-test-fedora-rawhide FAILURE in 29m 01s :x: system-test-fedora-39 FAILURE in 28m 31s :heavy_check_mark: system-test-fedora-38 SUCCESS in 27m 24s :heavy_check_mark: system-test-fedora-37 SUCCESS in 27m 38s

debarshiray commented 8 months ago

These failures are because of some changes in GNU roff 1.23:

fedora-rawhide | not ok 3 help: Command 'help' in 222ms
fedora-rawhide | # (from function `assert_line' in file test/system/libs/bats-assert/src/assert.bash, line 479,
fedora-rawhide | #  in test file test/system/002-help.bats, line 50)
fedora-rawhide | #   `assert_line --index 3 --partial "toolbox - Tool for containerized command line environments on Linux"' failed
fedora-rawhide | # /usr/bin/man
fedora-rawhide | #
fedora-rawhide | # -- line does not contain substring --
fedora-rawhide | # index     : 3
fedora-rawhide | # substring : toolbox - Tool for containerized command line environments on Linux
fedora-rawhide | # line      :        toolbox ‐ Tool for containerized command line environments on Linux
fedora-rawhide | # --
fedora-rawhide | #