-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
TriggerAuthentication - spec.podIdentity.identityId as a pointer - breaking change in 2.12.0 #5109
Comments
Can you elaborate on how the trigger authentication resource was created please? Are you saying you are specifying |
Sure. In v2.11
This means that after upgrading KEDA to v2.12 it is necessary to re-create TriggerAuthentication. Otherwise you will get this error "IdentityID of PodIdentity should not be empty". |
Hm I was not aware of that and it is unfortunate. Here is what I think we should do:
That way, end-users will no longer face this issue when we ship 2.13.0 and this validation can still be used. If end-users face this issue with 2.13.0 they need to migrate to 2.12.1 first before going to 2.13.0. THoughts @zroubalik @JorTurFer @SpiritZhou? |
@tomkerkhove I am not sure if this helps, but I could be wrong. Once the identityId is set to "" (v2.11), it will never be nil again until the TriggerAuthentication object is recreated. |
@tomkerkhove @JorTurFer In 2.11, the triggerauth object will be updated with an "" value when setting Finalizer in |
What do you think @JorTurFer? |
I thought of a slightly different alternative (there would be no need for the operator to update the value to nil)
This should ensure that TAs created before version 2.12 will not be validated, but newer ones will. |
guys, here is fix for a related problem with identityId validation kedacore/charts#553 |
I think this is also a good solution. |
nice, could you please give an explanation for this change? |
If KEDA is deployed using helm, the configuration for the validation webhook is not created ( This fix adds the configuration that is needed for |
@radekfojtik cool, does it fully fix this issue then? |
Unfortunately no, it only solves the related problem that the webhook configuration (for validation of TriggerAuthentication/ClusterTriggerAuthentication) was not added to helmchart. This issue is about breaking change in v2.12 releated to this identityId validation. In short - if user has a TA defined where the provider is Two possible solutions are currently proposed |
I think that we should remove validations from operator. IMO, if we are validating the item on create/update, we don't need to validate it again as on operator. We have introduced admission webhooks, lets use them. I get the point that forcing users to use the admission is "ugly", but that's the goal of the admission webhooks, detecting issues during the admission. If users don't care about validations, they can remove the webhooks, but it also means that they do need to validate the things from their side, it's a trade off of their decision. |
@JorTurFer please take a look 63dca49 (based on the branch release/v2.12) |
It looks good to me |
But, please open the PR to main branch, to the the release/v2.12 branch, we will cherry pick it |
here is the PR #5142 please take a look also kedacore/charts#553 |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed due to inactivity. |
@JorTurFer what shall we do about this? |
Any updates here when this will be tackled ? |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions. |
Not stale |
We are still facing this issue in keda 2.14.3 and AKS 1.28 |
Guys @JorTurFer @zroubalik @tomkerkhove , why is this not merged yet? The fix has been prepared for a long time |
Report
After upgrading to version 2.12.0, you need to recreate the TriggerAuthentication resource (if you are using PodIdentityProviderAzure \ PodIdentityProviderAzureWorkload with an unspecified identityId). Because the identityId field is a pointer. Otherwise you will get this error "IdentityID of PodIdentity should not be empty".
Before version 2.12.0 - if you omit the identityId field, your resource will look like this
The identityId field is an empty string, although it has been omitted.
The solution is to recreate TriggerAuthentication. This is a breaking change that should at least be pointed out, or should be in version 3.*?
Expected Behavior
Only minor changes
Actual Behavior
Breaking change
Steps to Reproduce the Problem
Logs from KEDA operator
No response
KEDA Version
2.12.0
Kubernetes Version
1.26
Platform
Microsoft Azure
Scaler Details
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: