-
Notifications
You must be signed in to change notification settings - Fork 809
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
fix(manifest): fixes deploy manifest SpEL evaluation toggle #4128
fix(manifest): fixes deploy manifest SpEL evaluation toggle #4128
Conversation
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
Thank you! LGTM |
This looks great to me too. Is it worth noting that it doesn't do everything that spinnaker/spinnaker#5910 mentions? The base64-encoding and removing the manifest from pipeline context still remain, yes? I don't remember all the various pieces, but is there some potential followup work either in deck or in the deploy manifest stage (to remove the skip SpEL evaluation checkbox)? Or maybe that's fine and this PR only affects deploy manifest stages? EDIT: I mean, the PR title does say "deploy manifest" so maybe I'm supposed to figure that last part out on my own... |
Hi @dbyron-sf, thanks for the feedback. This PR fixes the SpEL expression toggle in Deck, which doesn't work but did work at some point. There are legitimate cases where you can want SpEL expressions to be evaluated and cases where you don't want them to be evaluated. If we were to start over and re-do this feature it might have been better to use a different SpEL-start character (i.e., not As far as I know, there aren't any updates to Deck. I actually don't have a ton of context around Maggie's last bullet point regarding Helm overrides. We can keep the bug open if you'd like for that bullet point. In terms of base64 encoding - that seems to just have been a suggested implementation rather than a requirement. The SpEL v4 changes that Maggie mentions are now in place and are what I'm using to implement this. It's also true that Maggie mentions spinnaker/spinnaker#5909. I think we should just close spinnaker/spinnaker#5910 and fix 5909 separately. It's true that the manifest is dumped in the stage context a few different times (I think 4 total times) and that in some cases pipeline expressions in those manifests will still be evaluated, but the key fix here is that the manifest that's sent to Clouddriver isn't evaluated if the |
Just to be brutally clear, you're talking about the toggle specific to the deploy manifest stage, right? I'm torn, but leaning towards keeping spinnaker/spinnaker#5910 open because of the helm overrides issue. I don't remember the details of v3 vs v4 expression evaluation, so maybe ignore me and do what you think is right...Maybe the bas64-encoding idea is something that more applies to spinnaker/spinnaker#5909 anyway? |
Yes, the "Expression Evaluation" toggle in the Deploy Manifest stage below: I've updated the top PR description to reflect that this change doesn't fix all of the issues mentioned in spinnaker/spinnaker#5910. |
@Mergifyio backport release-1.24.x release-1.25.x release-1.26.x |
* fix(manifest): fixes deploy manifest SpEL evaluation toggle * add more tests (cherry picked from commit a2acb5c)
* fix(manifest): fixes deploy manifest SpEL evaluation toggle * add more tests (cherry picked from commit a2acb5c)
* fix(manifest): fixes deploy manifest SpEL evaluation toggle * add more tests (cherry picked from commit a2acb5c)
Command
|
Thank you! |
…4128) (#4129) * fix(manifest): fixes deploy manifest SpEL evaluation toggle (#4128) * fix(manifest): fixes deploy manifest SpEL evaluation toggle * add more tests (cherry picked from commit a2acb5c) * chore(deps): update kork to 7.107.0, use new maven coordinates (#4108) * fix tests Co-authored-by: Daniel Peach <daniel.peach@armory.io>
…4128) (#4130) * fix(manifest): fixes deploy manifest SpEL evaluation toggle (#4128) * fix(manifest): fixes deploy manifest SpEL evaluation toggle * add more tests (cherry picked from commit a2acb5c) * bump kork version to get mysql fix * chore(deps): update kork to 7.107.0, use new maven coordinates (#4108) Co-authored-by: Daniel Peach <daniel.peach@armory.io>
Addresses parts of spinnaker/spinnaker#5910