fix(ui): allow links
to metadata with dots. Fixes #11741
#13752
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #11741
Motivation
You cannot create UI links to our own annotations or labels.
Argo Workflows uses the format
workflows.argoproj.io/something
for annotations and labels. These annotations and labels have dots (.
) in them.The links documentation says you can access all workflow fields, using a dot to go down into the child entry.
These two conflict making it impossible to access our own labels and annotations, so fix it for annotations and labels.
This was discovered whilst adding an annotation to the workflows that was useful to link from in a separate feature.
Modifications
When splitting the variable name up use a specialised splitting function that understands that things under
workflow.metadata.labels
andworkflow.metadata.annotations
are always names and not to split further. It is crudeVerification
Added a unit test for the hit the special code case. There are already unit tests which test the other case.
Manually tested my new link works.