Skip to content

feat(Kiali): Kiali multicluster evals - #1312

Open
josunect wants to merge 6 commits into
containers:mainfrom
josunect:kiali_multicluster_evals
Open

feat(Kiali): Kiali multicluster evals#1312
josunect wants to merge 6 commits into
containers:mainfrom
josunect:kiali_multicluster_evals

Conversation

@josunect

@josunect josunect commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds multicluster Kiali mcpchecker evals against a primary-remote Kind setup (east home cluster, west remote cluster).

  • Evals: 6 tasks under evals/tasks/kiali/multicluster/ covering mesh status, listing mesh clusters, remote metrics/workloads/topology, and traces (agent must identify the remote cluster; judge checks for west).
  • Makefile (build/kiali.mk): setup-kiali-multicluster, run-evals-multicluster, redeploy-kiali-multicluster-dev, kind-delete-multicluster. Uses Kiali dev/master (KIALI_MC_VERSION=dev) for list_clusters. CI fix: SHELL := /bin/bash for pipefail recipes.
  • CI: New run-evaluation-multicluster job when suite is kiali: spins up east/west Kind, starts MCP with multicluster config, runs the 6 tasks.
  • Docs: docs/KIALI.md updated with setup/run instructions and troubleshooting.

** Requires the changes in #1224 to work

@github-actions

Copy link
Copy Markdown
Contributor

👋 Heads up — this pull request changes files owned by @aljesusg.

You are listed as an owner of one or more of the changed areas in .github/CODEOWNERS. GitHub cannot auto-request review from owners without write access, so this comment is the notification instead. A review when you have a moment would be appreciated 🙏

@josunect
josunect force-pushed the kiali_multicluster_evals branch 2 times, most recently from 257ef81 to 8fb31ab Compare July 21, 2026 07:02

@cajieh cajieh left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a few comments, but I still need to do another pass.
Als, should these 6 commits be squashed, or is keeping them separate intentional?

Comment thread .github/workflows/mcpchecker.yaml Outdated
needs: check-trigger
if: |
needs.check-trigger.outputs.should-run == 'true' &&
needs.check-trigger.outputs.label-selector == 'suite=kiali'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curious about this gate — does check-trigger currently expose a label-selector output? On main I’m only seeing should-run, matrix, pr-number, pr-sha, and is-pr. If label-selector isn’t set, would this job always be skipped?
Also for weekly schedule runs, suite selection looks like a matrix (schedule-matrix) rather than a single suite=kiali — how is multicluster supposed to be triggered in that case?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. That was written against the pre-matrix workflow. After rebasing onto main, check-trigger no longer exposes label-selector.

Updated to a run-multicluster output set when the selected suite is kiali, all, or schedule-matrix (weekly runs). The multicluster job now gates on run-multicluster == 'true', so it still runs on weekly schedules and on /run-mcpchecker kiali.

Comment thread .github/workflows/mcpchecker.yaml Outdated
always() &&
github.event_name == 'schedule' &&
needs.check-trigger.outputs.label-selector == 'suite=kiali' &&
needs.run-evaluation-multicluster.result == 'success'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question as on run-evaluation-multicluster: if label-selector isn’t an output of check-trigger, would this scheduled commit job ever run?

Comment thread .github/workflows/mcpchecker.yaml Outdated
COMMIT_SHA: ${{ needs.check-trigger.outputs.pr-sha }}
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
BRANCH="chore/update-eval-results"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it intentional to reuse chore/update-eval-results here? The existing results committer uses the same branch with git push -f — could weekly kiali + multicluster race and overwrite each other? Would a separate branch name be safer?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed on the race risk with two jobs force-pushing the same branch.

To avoid that, multicluster results are now copied inside the existing commit-results job (single branch / single force-push) instead of a second commit-multicluster-results job.

@josunect
josunect force-pushed the kiali_multicluster_evals branch 2 times, most recently from b1eb77f to a99b27a Compare August 5, 2026 16:15
@josunect

josunect commented Aug 5, 2026

Copy link
Copy Markdown
Contributor Author

@cajieh thanks for the review! Related the commits, I'll squash on merge as usual.

@josunect

josunect commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

@josunect
josunect requested a review from cajieh August 6, 2026 07:50
josunect and others added 6 commits August 6, 2026 13:00
Signed-off-by: josunect <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
Make invokes /bin/sh by default; dash does not support pipefail used
by setup-kiali-multicluster and related targets.

Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: josunect <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
-kv dev pushes a local image but Kiali only builds it when
KIALI_BUILD_DEV_IMAGE=true. Export that for dev setups and add
Node 24 + corepack to the multicluster workflow job.

Also fix check-trigger suite output wiring so the multicluster job
runs when suite is kiali.

Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: josunect <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
Signed-off-by: josunect <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
Signed-off-by: Josune Cordoba <jcordoba@redhat.com>
@josunect
josunect force-pushed the kiali_multicluster_evals branch from d987902 to ca7cf67 Compare August 6, 2026 12:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants