chore(merge): release-2.14 branch to master#5022
Merged
Merged
Conversation
…ls (#4981) This PR is unfortunately a little larger than I would like, but I'm half putting the finishing touches to the KRI label links whilst half rolling it out elsewhere. ### Finishing touches - Replicate font `regular:bold` style of the exiting tag component - Allow linking by old style `kuma.io/service` to support the old tags - Replicate coloring of old tags (blue kuma links, grey non-kuma links) - Regex helper (`r`, like `t`) so we don't need to use `<template>` for Regexp precompiling. ### Rolling out - Attempts to find and rollout the new pattern to all detail pages we have either labels or tags, using the same pattern for both. - I mainly searched for `TagList` and replaced this component with the new pattern apart from couple of areas which are almost "dead areas" which we barely touch. Therefore I mostly removed TagList in all detail and summary routes. I think I have one more PR to make here as I noticed a lot of places where there are no labels in summary panels and there probably should be. I plan on one last follow up PR adding missing labels to summary panels (and if I spot anymore in detail views I will add those in the follow up also) Lastly, a lot of this has been explained in a sync but I welcome any extra questions here, I can also add some inlines here if more explanation is needed. --------- Signed-off-by: John Cowen <john.cowen@konghq.com>
Unfortunately quite a large PR adding labels to both data layer and summary panels. - Adds `Labels` `tr` to almost all remaining summary panels, pretty much copy/pasta - Adds datalayer labels where necessary, again pretty much copy/pasta - I moved MeshGateway to use OpenAPI types - Made ZoneIngress/ZoneEgress YAML displays show labels (similar to what we do in Dataplanes/DataplaneOverview) ~There is currently a unit test failing just because I have to update it to use labels, will sort that shortly.~ I removed two tests that were failing because I added new properties to zoneIngress/zoneEgress. The style of these two were "snapshot" type tests which we want to try to avoid --------- Signed-off-by: John Cowen <john.cowen@konghq.com>
In `Resources` and `Policies` we have nested views that are being layed out via `XLayout` and `x-stack`. That caused that the nested views only take the space that it needed. On wide screens that meant some white space. ~I've changed the `size` attribute on these `XLayout`s to `max` and for that case let children grow. So far we've only used `size=max` in summary views for `variant=separated`, which will not conflict.~ **Before** <img width="3011" height="1332" alt="Screenshot 2026-06-09 at 12 09 50" src="https://github.com/user-attachments/assets/26b65c0b-de7b-48c5-bf51-7ef2b67a1b83" /> <img width="2996" height="1335" alt="Screenshot 2026-06-09 at 12 09 56" src="https://github.com/user-attachments/assets/fb37cc0c-ce57-4132-ba1d-359d9aaebbfb" /> **After** <img width="3012" height="1334" alt="Screenshot 2026-06-09 at 12 08 23" src="https://github.com/user-attachments/assets/aa91c3ae-9d23-4323-a7c2-8981c497b6df" /> <img width="2998" height="1335" alt="Screenshot 2026-06-09 at 12 08 07" src="https://github.com/user-attachments/assets/da03b87e-a2c9-4b79-ab07-a72ab978b13c" /> --------- Signed-off-by: schogges <moritz.fleck@konghq.com>
Ensures consistent casing for `ZoneIngress`, `ZoneEgress` and changes `Zone-proxy` title to `Zone proxy`. Closes #4999 Signed-off-by: schogges <moritz.fleck@konghq.com>
…tls warning (#4957) We only checked for `mesh.mtlsBackend` when deciding to show the warning about missing mtls. This PR changes it to use `mesh-insight/:name` in the decision making and check wether there is a `mTLS.issuedBackends` entry present. Closes #4801 --------- Signed-off-by: schogges <moritz.fleck@konghq.com>
Adds a zone column to the mesh-trusts listing in the overview of a mesh. Closes #5000 --------- Signed-off-by: schogges <moritz.fleck@konghq.com>
Merges `inbounds` and `listeners` of `DataplaneOverview.dataplane.networking` and `DataplaneLayout` by aligning the shape in the data-layer such that we can treat them both exactly the same in the views. Closes #4889 --------- Signed-off-by: schogges <moritz.fleck@konghq.com>
Adds/ensures KRIs are carried through to the summary YAML views. There is also a bit of copy/pasting for consistency reasons between Dataplanes/ZoneProxies. There are reasons for formatting decisions in the code here and I commented it up quite a bit to explain why rather than just depend on the formatting to be self-explanatory (that alone it not explanatory enough I don't think) I renamed the Dataplane tests and added back the ZoneProxy tests but renamed them all to make it clearer what they are testing. Usually we avoid mocking/setting up full data objects to test against, but in this case its the most straight-forwards way to assert that we have neither too many fields or not enough fields. If I think of a different way thats just as straight-forwards but also clearer I might tweak this in the future. Note: We are now expected KRIs to be added to the top-level DataplaneOverviews via the backend. Depending on when this PR gets merged we can either consider this in this PR or a follow up PR once the backend PR is complete. --------- Signed-off-by: John Cowen <john.cowen@konghq.com>
Extracts (mostly) generated tests and mocks from #4946 --------- Signed-off-by: schogges <moritz.fleck@konghq.com>
### Improvement The default "group" for `ResourceTypeDescriptor` if its not set is `others` (it can also be `policy` and `mesh` and `global`, plus anything else that could be added via the backend in the future): https://github.com/kumahq/kuma-gui/blob/5a21d2dbb1372ee97ccac094d57f52d855a9beed/packages/kuma-gui/src/app/resources/data/ResourceTypeDescriptor.ts#L53 We then use this `type.group` key to discover several i18n keys including a documentation paragraph and `href` Thing is `others` doesn't have a `description` nor `href` key. We sometimes used a `default` fallback which in some places would solve the issue of "future groups" coming from the backend, but not if its not set. I guess it highly unlikely that we end up with a `type.group=others` but we've coded for it so we should support it. I removed the `default` section and used `others` for a default (like we do in the datalayer) ### Fix I also found a place where we were defaulting to `t('common.product.docs')` which is a bit of a legacy i18n key, which we only really use to set the `KUMA_DOCS_URL` i18n env var: https://github.com/kumahq/kuma-gui/blob/5a21d2dbb1372ee97ccac094d57f52d855a9beed/packages/kuma-gui/src/app/application/services/i18n/I18n.ts#L45-L48 We also mock out this key only at dev time because we could never get the docs redirects implemented to avoid us having mock this value out. The mocked key/value didn't make use of the same variables as the non-mocked key, which meant _during dev_ you wouldn't see an i18n error if you did not pass the required variables to the call for `t`. The issue would then fail in CI only, causing a bit of confusion #4997 (comment) The fix involves: - Changing the `common.product.docs` key to something else, I used the "fallback" `others` key. - I also thought of how we can prevent this weirdness happening in the future and decided to add the same variabels to the debug URL. Whilst these are "noops" they force you to pass the same variables through. I also added comments to "ensure" that if we add any new vars here (unlikely) we are prompted to sync the variables. A better fix would be to remove or somehow prevent the `common.product.docs` from being used outside of setting `KUMA_DOCS_URL`. Whilst I would prefer this, its needs better thought/less haste. --- This desc is a little rough, so let me know if there are any further questions. Lastly, I think it would be a good idea to have a closer look over the new `resources` section with the above in mind to triple check there are no similar issues. I had a relatively "ok" look myself but I'd rather have a second pair of eyes. --------- Signed-off-by: John Cowen <john.cowen@konghq.com>
✅ Deploy Preview for kuma-gui ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
johncowen
approved these changes
Jun 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Do not squash commits!