test(evals): add hotplug eval tasks and multi-worker kind config - #1309
test(evals): add hotplug eval tasks and multi-worker kind config#1309lyarwood wants to merge 1 commit into
Conversation
@lyarwood mind opening an issue on https://github.com/mcpchecker/kubernetes-extension/issues for this so that we can fix it? |
ACK apologies for not doing this at the time, I'll reproduce today and get something documented. |
1b4e803 to
7a34cc6
Compare
|
👋 Heads up — this pull request changes files owned by @ksimon1. You are listed as an owner of one or more of the changed areas in |
7a34cc6 to
f92ee6e
Compare
Add 5 mcpchecker v1alpha2 eval tasks covering hotplug use cases: - volume add (PVC with hotpluggable: true) - interface add (Multus secondary NIC) - CPU socket increase (within maxSockets) - memory increase (within maxGuest) - instancetype live-update These tasks validate whether the LLM can perform hotplug operations using existing core resource tools (declarative VM spec edits) before deciding if dedicated hotplug tools are needed. Also includes: - Multi-node Kind cluster configuration in dev/config/kind/cluster-kubevirt-multinode.yaml - LiveUpdate rollout and LiveMigrate update strategy in build/kubevirt.mk - Updates to mcpchecker workflow for multi-node eval support - Helper verification functions in evals/tasks/kubevirt/helpers/verify-vm.sh Assisted-By: Claude <noreply@anthropic.com> Signed-off-by: Lee Yarwood <lyarwood@redhat.com>
f92ee6e to
96518b5
Compare
|
@lyarwood can you please rebase this PR? |
Summary
Add mcpchecker eval tasks for KubeVirt hotplug use cases, a multi-worker Kind cluster configuration to support live migration, and CI workflow support for running them via
/run-mcpchecker kubevirt-multinodeor/run-mcpchecker all.Eval Tasks
5 eval tasks covering hotplug operations using existing core resource tools (declarative VM spec edits):
hotplug-cpu-sockets— increase CPU sockets withinmaxSockets(requires live update)hotplug-memory— increase guest memory withinmaxGuest(requires live update)hotplug-instancetype— change instancetype on a running VM (requires live update)hotplug-volume-add— attach a PVC withhotpluggable: truehotplug-interface-add— add a Multus secondary network interfaceAll tasks use
suite: kubevirt-multinodeandrequires: kubevirt-multinodelabels, and follow the standardevals/tasks/kubevirt/<task-name>/task.yamldirectory layout.Test Results
Tested against a live OpenShift 4.22 cluster with OpenShift Virtualization 4.22.6 using
claude-sonnet-4-6via Vertex AI:Infrastructure & Configuration
dev/config/kind/cluster-kubevirt-multinode.yamlwith 2 worker nodes for live migrationKIND_CLUSTER_CONFIGconfigurable inbuild/kind.mkLiveUpdatevmRolloutStrategy andLiveMigrateworkloadUpdateStrategy inbuild/kubevirt.mkCI Changes
.github/workflows/mcpchecker.yamlmatrix generation to support multi-node Kind cluster configs/run-mcpchecker kubevirt-multinodeand/run-mcpchecker allautomatically configure the multi-node Kind clusterkubevirt-multinodematches beforekubevirtRelated