Skip to content

chore(deps): remove unix utils from release image#14741

Closed
janisz wants to merge 1 commit intomasterfrom
remove_kill
Closed

chore(deps): remove unix utils from release image#14741
janisz wants to merge 1 commit intomasterfrom
remove_kill

Conversation

@janisz
Copy link
Copy Markdown
Contributor

@janisz janisz commented Mar 25, 2025

Description

linux-utils was added when we moved to ubi-minimal as it was required by e2e tests that uses kill in main container.
This need was removed when test was rewritten in go. So we can remove linux-utils.


  • CHANGELOG update is not needed
  • Documentation is not needed

Testing

  • inspected CI results

Automated testing

  • modified existing tests
  • contributed no automated tests

How I validated my change

CI

@janisz janisz requested review from msugakov and porridge March 25, 2025 12:09
@janisz janisz added the ci-all-qa-tests Tells CI to run all API tests (not just BAT). label Mar 25, 2025
@janisz
Copy link
Copy Markdown
Contributor Author

janisz commented Mar 25, 2025

/test ?

@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Mar 25, 2025

@janisz: The following commands are available to trigger required jobs:

/test gke-nongroovy-e2e-tests
/test shell-unit-tests

The following commands are available to trigger optional jobs:

/test aks-qa-e2e-tests
/test aro-qa-e2e-tests
/test eks-qa-e2e-tests
/test gke-nongroovy-compatibility-tests
/test gke-operator-e2e-tests
/test gke-perf-scale-tests
/test gke-qa-e2e-tests
/test gke-race-condition-qa-e2e-tests
/test gke-scale-tests
/test gke-scanner-v4-install-tests
/test gke-sensor-integration-tests
/test gke-ui-e2e-tests
/test gke-upgrade-tests
/test gke-version-compatibility-tests
/test ibmcloudz-4-14-qa-e2e-tests
/test ibmcloudz-4-15-qa-e2e-tests
/test ibmcloudz-4-16-qa-e2e-tests
/test ibmcloudz-4-17-qa-e2e-tests
/test ocp-4-12-compliance-e2e-tests
/test ocp-4-12-ebpf-qa-e2e-tests
/test ocp-4-12-nongroovy-e2e-tests
/test ocp-4-12-operator-e2e-tests
/test ocp-4-12-qa-e2e-tests
/test ocp-4-12-scanner-v4-install-tests
/test ocp-4-12-sensor-integration-tests
/test ocp-4-12-ui-e2e-tests
/test ocp-4-17-compliance-e2e-tests
/test ocp-4-17-crun-qa-e2e-tests
/test ocp-4-17-ebpf-qa-e2e-tests
/test ocp-4-17-fips-qa-e2e-tests
/test ocp-4-17-nongroovy-e2e-tests
/test ocp-4-17-operator-e2e-tests
/test ocp-4-17-qa-e2e-tests
/test ocp-4-17-scanner-v4-install-tests
/test ocp-4-17-sensor-integration-tests
/test ocp-4-17-ui-e2e-tests
/test ocp-dev-preview-compliance-e2e-tests
/test ocp-dev-preview-ebpf-qa-e2e-tests
/test ocp-dev-preview-fips-qa-e2e-tests
/test ocp-dev-preview-nongroovy-e2e-tests
/test ocp-dev-preview-operator-e2e-tests
/test ocp-dev-preview-qa-e2e-tests
/test ocp-dev-preview-scanner-v4-install-tests
/test ocp-dev-preview-sensor-integration-tests
/test ocp-dev-preview-ui-e2e-tests
/test ocp-next-candidate-compliance-e2e-tests
/test ocp-next-candidate-ebpf-qa-e2e-tests
/test ocp-next-candidate-fips-qa-e2e-tests
/test ocp-next-candidate-nongroovy-e2e-tests
/test ocp-next-candidate-operator-e2e-tests
/test ocp-next-candidate-qa-e2e-tests
/test ocp-next-candidate-scanner-v4-install-tests
/test ocp-next-candidate-sensor-integration-tests
/test ocp-next-candidate-ui-e2e-tests
/test ocp-stable-scanner-v4-install-compliance-e2e-tests
/test ocp-stable-scanner-v4-install-ebpf-qa-e2e-tests
/test ocp-stable-scanner-v4-install-nongroovy-e2e-tests
/test ocp-stable-scanner-v4-install-operator-e2e-tests
/test ocp-stable-scanner-v4-install-perf-scale-tests
/test ocp-stable-scanner-v4-install-qa-e2e-tests
/test ocp-stable-scanner-v4-install-scanner-v4-install-tests
/test ocp-stable-scanner-v4-install-sensor-integration-tests
/test ocp-stable-scanner-v4-install-ui-e2e-tests
/test osd-aws-qa-e2e-tests
/test osd-gcp-qa-e2e-tests
/test powervs-4-14-qa-corebpf-e2e-tests
/test powervs-4-15-qa-corebpf-e2e-tests
/test powervs-4-16-qa-corebpf-e2e-tests
/test powervs-4-17-qa-corebpf-e2e-tests
/test rosa-hcp-qa-e2e-tests
/test rosa-qa-e2e-tests
/test ui-component-tests

Use /test all to run the following jobs that were automatically triggered:

pull-ci-stackrox-stackrox-master-gke-nongroovy-e2e-tests
pull-ci-stackrox-stackrox-master-gke-operator-e2e-tests
pull-ci-stackrox-stackrox-master-gke-qa-e2e-tests
pull-ci-stackrox-stackrox-master-gke-scanner-v4-install-tests
pull-ci-stackrox-stackrox-master-gke-sensor-integration-tests
pull-ci-stackrox-stackrox-master-gke-upgrade-tests
pull-ci-stackrox-stackrox-master-ocp-4-12-nongroovy-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-12-operator-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-12-qa-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-12-scanner-v4-install-tests
pull-ci-stackrox-stackrox-master-ocp-4-17-nongroovy-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-17-operator-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-17-qa-e2e-tests
pull-ci-stackrox-stackrox-master-ocp-4-17-scanner-v4-install-tests
Details

In response to this:

/test ?

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@janisz
Copy link
Copy Markdown
Contributor Author

janisz commented Mar 25, 2025

/test all

@janisz
Copy link
Copy Markdown
Contributor Author

janisz commented Mar 25, 2025

/test gke-nongroovy-compatibility-tests

@rhacs-bot
Copy link
Copy Markdown
Contributor

Images are ready for the commit at 98c5d9e.

To use with deploy scripts, first export MAIN_IMAGE_TAG=4.8.x-319-g98c5d9e6e7.

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 25, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 49.20%. Comparing base (8e68c6a) to head (98c5d9e).
Report is 26 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master   #14741   +/-   ##
=======================================
  Coverage   49.20%   49.20%           
=======================================
  Files        2533     2533           
  Lines      185529   185529           
=======================================
+ Hits        91287    91291    +4     
+ Misses      87005    87003    -2     
+ Partials     7237     7235    -2     
Flag Coverage Δ
go-unit-tests 49.20% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Contributor

@porridge porridge left a comment

Choose a reason for hiding this comment

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

Actually what @msugakov wrote in the previous incarnation of this PR about the apparent inability to use debug containers on OpenShift makes me wonder about the benefit/cost ratio of this change 🤔

What are the downsides of keeping util-linux @janisz ?

@janisz
Copy link
Copy Markdown
Contributor Author

janisz commented Mar 26, 2025

What are the downsides of keeping util-linux @janisz ?

It's another package that we do not need to work but need to maintain e.g. if CVE if there we need to do a release. Eventually we would like to move from ubi-minimal to ubi-micro and drastically reduce number of installed packages. This is the first step.

@porridge
Copy link
Copy Markdown
Contributor

What are the downsides of keeping util-linux @janisz ?

It's another package that we do not need to work but need to maintain e.g. if CVE if there we need to do a release. Eventually we would like to move from ubi-minimal to ubi-micro and drastically reduce number of installed packages. This is the first step.

This is a noble goal, but I think we need to balance it against the inability to debug production issues. Unfortunately I don't know the frequency of high priority util-linux CVEs nor the frequency of cases where we need to kubectl exec into the container. Perhaps @msugakov can comment on the latter since he raised it.

@msugakov
Copy link
Copy Markdown
Contributor

We don't have linux-utils in downstream and Konflux images. I.e. what is/was possible with GHA images wasn't possible with the officially released ones. It makes sense to me to remove it from our GHA images at least for consistency.

@msugakov
Copy link
Copy Markdown
Contributor

msugakov commented Mar 26, 2025

To add to that, I do need certain tools in containers when I use them in some non-standard way or debug them.
My current short list is: bash, find, less, xargs, cp, mv, ls, grep, sed, vi, ps.
If whatever is absent in ubi-micro (or even ubi-minimal), it would be valuable to add it to that base system.
When we discussed this with Tomek, he agreed that we should gather a list of suggestions and implement that. It's now a matter of defining who is "we" and "when" to do that.

@porridge
Copy link
Copy Markdown
Contributor

We don't have linux-utils in downstream and Konflux images. I.e. what is/was possible with GHA images wasn't possible with the officially released ones.

TIL! So we're already covered in terms of fixing CVEs and debugging production, since we don't make any promises about upstream images TTBOMK, and it's already not possible to use the tools in production setups.

It makes sense to me to remove it from our GHA images at least for consistency.

With the new knowledge, I think it makes more sense to leave these around, since they can be useful during development. We "just" need to make sure we don't start depending on these.

@janisz
Copy link
Copy Markdown
Contributor Author

janisz commented Mar 31, 2025

since they can be useful during development

How about having a different image for release and development? I'm not a fan of this approach but I'd like to have minimal release image to reduce CVE surface.

@porridge
Copy link
Copy Markdown
Contributor

since they can be useful during development

How about having a different image for release and development? I'm not a fan of this approach but I'd like to have minimal release image to reduce CVE surface.

Maybe an uncomment me to have tools section in the Dockerfile would be sufficient? 🤷🏻

@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented May 22, 2025

@janisz: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/gke-qa-e2e-tests 98c5d9e link false /test gke-qa-e2e-tests
ci/prow/gke-nongroovy-compatibility-tests 98c5d9e link false /test gke-nongroovy-compatibility-tests
ci/prow/ocp-4-17-scanner-v4-install-tests 98c5d9e link false /test ocp-4-17-scanner-v4-install-tests
ci/prow/ocp-4-12-scanner-v4-install-tests 98c5d9e link false /test ocp-4-12-scanner-v4-install-tests
ci/prow/gke-ui-e2e-tests 98c5d9e link true /test gke-ui-e2e-tests

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@janisz janisz closed this Sep 16, 2025
@janisz janisz deleted the remove_kill branch September 16, 2025 09:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/helm ci-all-qa-tests Tells CI to run all API tests (not just BAT).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants