-
Notifications
You must be signed in to change notification settings - Fork 6.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
removing build time dependencies from the runtime #22501
Conversation
LGTM. I don't think these pom changes will break anything prod-wise, and I confirmed that they remove the excess jars from the produced zip |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks.
@shawkins Can you please backport this as well?
OLM tests seem to fail. Let's see if it's just some instability... |
Unfortunately since nothing else was already marked as optional, this probably means that quarkus-operator-sdk-bundle-generator is currently required at runtime as well - @metacosm can you confirm this? |
<dependency> | ||
<groupId>io.fabric8</groupId> | ||
<artifactId>crd-generator-api</artifactId> | ||
</dependency> | ||
<dependency> | ||
<groupId>io.fabric8</groupId> | ||
<artifactId>crd-generator-apt</artifactId> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you need this dependency, actually?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At the very least it's still transitively bringing in the sundrio dependencies. I'm not sure historically why crd-generator-apt was needed.
It looks like instead of the apt dependency we could separtely use:
generator-annotations (for the Required annotation)
crd-generator-api (for the SchemaSwap annotation - it's confusing why this is not in generator-annotations)
builder-annotations (but there's no managed version of this provided by the poms we're currently importing)
Since it looks like this can be at the provided scope, I'd be in favor of leaving it as is unless you think it could be introducing other problems.
Any thoughts on quarkus-operator-sdk-bundle-generator?
Head branch was pushed to by a user without write access
Separating off the quarkus-operator-sdk-bundle-generator change. It will likely need to be handled under https://issues.redhat.com/browse/QUARKUS-2279 |
@vmuzikar let's move ahead with this one without dealing with quarkus-operator-sdk-bundle-generator |
The bundle dependency shouldn't be needed at runtime. Do you have a pointer on what is failing if the dependency isn't there? |
The prior test runs with the dependency marked as optional and filtered from the quarkus lib. The only the local tests passed, the tests running the image failed. |
Do you have a link, please? Not sure where to look in all the tests that you run… |
Hmm, looking at the code, the module might actually be needed if you use the CSV metadata annotations to control how the CSV files are generated. |
Yes that's our case. Here's a failed run - https://github.com/keycloak/keycloak/actions/runs/5888994162/job/15971593804 unfortunately there's not much to see in that log because we have additional logging/logic that's looking for failed keycloaks, but not for a failing operator. |
Hmm, that said, the annotations should only be needed at build time but there is a |
Running this locally gave me the following stacktrace from the operator pod:
|
I had been wondering about this, actually, since the config class is marked as build/run time fixed, though I'm not sure why it's also made available at runtime. I need to track this down. Created quarkiverse/quarkus-operator-sdk#689 for this. |
@shawkins Can you please create a backport? |
Created a follow-up: #22573 |
@vmuzikar all of the other dependencies are transitive from these.
Closes #22496