Use ubi10-micro as a base image - #13056
Conversation
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #13056 +/- ##
============================================
- Coverage 80.88% 80.85% -0.03%
- Complexity 6737 6739 +2
============================================
Files 355 356 +1
Lines 23072 23089 +17
Branches 3148 3148
============================================
+ Hits 18662 18669 +7
- Misses 3183 3191 +8
- Partials 1227 1229 +2
🚀 New features to boost your workflow:
|
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.30.13@sha256:397209b3d947d154f6641f2d0ce8d473732bd91c87d9575ade99049aa33cd648 |
|
Also IPv6/Dual stack would be worth check? |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.31.14@sha256:6f86cf509dbb42767b6e79debc3f2c32e4ee01386f0489b3b2be24b0a55aac2b |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.32.11@sha256:5fc52d52a7b9574015299724bd68f183702956aa4a2116ae75a63cb574b35af8 |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.33.12@sha256:3f5c8443c620245e4d355cfe09e96a91ead32ceaa569d3f1ca9edf0cb2fe2ff4 |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.34.8@sha256:02722c2dedddcfc00febf5d27fbeb9b7b2c14294c82109ff4a85d89ac9ba3256 |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.35.5@sha256:ce977ae6d65918d0b58a5f8b5e940429c2ce42fa3a5619ec2bbc60b949c0ac95 |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.36.1@sha256:3489c7674813ba5d8b1a9977baea8a6e553784dab7b84759d1014dbd78f7ebd5 |
| ##### | ||
| # Get Tini | ||
| ##### | ||
| ENV TINI_VERSION=v0.19.0 |
There was a problem hiding this comment.
Would it make sense to download tini directly to /mnt/rootfs and then copy it with it?
| java-${JAVA_VERSION}-openjdk-headless \ | ||
| openssl \ | ||
| bash \ | ||
| tzdata \ |
There was a problem hiding this comment.
Here and in the other dockerfiles ... can you keep the comments what is needed why?
There was a problem hiding this comment.
It seems they are not, I removed them.
scholzj
left a comment
There was a problem hiding this comment.
FYI: CHANGELOG.md record would be nice for this 😉
I plan to add it within the followup commit when I fill incorporate your suggestions from review. |
|
We had a discussion on community call about this PR. Currently there is a problem on FIPS environments where users uses PEM certificates on RHEL10. Kafka initialize KeyFactory for
With @scholzj we think that What other @strimzi/maintainers think? In case you will have some another idea I will be happy to give it a try. Implementation within this PR currently works fine on OCP with FIPS. Note that the PR is not ready for review, but current state could be used as a starting point for our decision. Before I will move it to |
Sorry for stupid question, but in order to understand what will be better, the fix in Kafka will be that they remove it from the init list? If so, I would go with the first option - the |
I don't think this would be the fix. DSA would be anyway still supported on RHEL9 (even with FIPS enabled as it works today) or other distributions. Also it would work if FIPS is not enabled. I think Kafka should catch the error and doing a no-op just like the I am fine with the agent but we should also think how to make it working within the bridge which will be affected by the same problem and it runs on bare metal not just in containers where we can set up whatever we want. |
I am not sure how exactly Kafka will resolve it, but I guess they will add handling of missing algorithms in similar way how |
We discuss that on community call. One of the options is - create our implementation of |
|
There is a fix on Kafka side - apache/kafka#23361 , but most likely it won't be propagated to 4.4 and older versions. Unless there won't be no objections by the end of tomorrow, I will move the PR to ready for review (after workin comments from Jakub) and start with testing. |
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.36.1@sha256:3489c7674813ba5d8b1a9977baea8a6e553784dab7b84759d1014dbd78f7ebd5 |
|
⏳ System test verification started: link The following 10 job(s) will be executed:
Tests will start after successful build completion. |
|
❌ System test verification failed: link |
Signed-off-by: Jakub Stejskal <xstejs24@gmail.com>
Signed-off-by: Jakub Stejskal <xstejs24@gmail.com>
Signed-off-by: Jakub Stejskal <xstejs24@gmail.com>
Signed-off-by: Jakub Stejskal <xstejs24@gmail.com>
Signed-off-by: Jakub Stejskal <xstejs24@gmail.com>
|
/gha run pipeline=regression,upgrade kubeVersion=kindest/node:v1.36.1@sha256:3489c7674813ba5d8b1a9977baea8a6e553784dab7b84759d1014dbd78f7ebd5 |
|
⏳ System test verification started: link The following 10 job(s) will be executed:
Tests will start after successful build completion. |
|
🎉 System test verification passed: link |
| * @param agentArgs The agent arguments (unused) | ||
| */ | ||
| public static void premain(String agentArgs) { | ||
| applyDsaWorkaround(); |
There was a problem hiding this comment.
I am not comfortable with using the "workaround" term ... would it be better applyNoOpDsaProvider?
| try { | ||
| KeyFactory.getInstance("DSA"); | ||
| } catch (NoSuchAlgorithmException e) { | ||
| LOGGER.warn("DSA KeyFactory not available (FIPS mode detected). Registering no-op DSA provider to work around Kafka PemStore initialization bug."); |
There was a problem hiding this comment.
"FIPS mode detected" .. is it possible it's not available not because of FIPS mode? Maybe on some other Linux distribution where people run Strimzi? I would just remove this text from the warning log.
This let me think that maybe the overall FipsAgent name is wrong. If this can happen even on systems where FIPS is not enabled but DSA is disabled, I was wondering if we should change the overall agent name.
Type of change
Description
This PR implements https://github.com/strimzi/proposals/blob/main/152-use-ubi10-as-base-image.md for current repo.
The following table shows testing results (✅/❌/❔):
Checklist
TODO - change the checklist once testing is done