From 17b0102a53610190cdf03257f4cba90ac2277e6c Mon Sep 17 00:00:00 2001 From: Jeff Zhu Date: Sun, 13 Sep 2026 21:50:06 +0200 Subject: [PATCH] ci(deploy-test): bake min_clients into the test kits (default 2) The workflow built the productive jobs with min_clients = 5 and then ran them with two test clients, which aborts in 30 s with 'min_clients (5) exceeds the number of participating clients (2)'. buildDockerImageAndStartupKits.sh already has --min-clients for exactly this; pass it, with a dispatch input defaulting to the two-client conf. Found by the v1.8.0 release-triggered run (34778471496), which first failed on the runner conf still naming the test sites RUMC_1/MHA_1 after #573; the runner-local confs on dl0 and dl2 are corrected alongside (TEST_A_1/TEST_B_1, institutions, real data paths, 2-site project). Co-Authored-By: Claude Fable 5.1 --- .github/workflows/odelia-deploy-test.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/odelia-deploy-test.yml b/.github/workflows/odelia-deploy-test.yml index e4eea925..baa4049f 100644 --- a/.github/workflows/odelia-deploy-test.yml +++ b/.github/workflows/odelia-deploy-test.yml @@ -8,6 +8,10 @@ on: required: false default: "application/provision/project_deploy_test_4site.yml" type: string + min_clients: + description: "min_clients / configure_min_clients to bake into generated jobs (= number of test clients in the conf)" + required: false + default: "2" num_rounds: description: "Number of FL rounds to bake into generated jobs" required: false @@ -87,6 +91,7 @@ jobs: EVENT_NAME: ${{ github.event_name }} INPUT_PROJECT_FILE: ${{ inputs.project_file }} INPUT_NUM_ROUNDS: ${{ inputs.num_rounds }} + INPUT_MIN_CLIENTS: ${{ inputs.min_clients }} INPUT_CONF_SOURCE: ${{ inputs.conf_source }} INPUT_RUN_ALL: ${{ inputs.run_all }} INPUT_MODEL: ${{ inputs.model }} @@ -98,6 +103,7 @@ jobs: project_file="${INPUT_PROJECT_FILE:-application/provision/project_deploy_test_4site.yml}" num_rounds="${INPUT_NUM_ROUNDS:-1}" + min_clients="${INPUT_MIN_CLIENTS:-2}" conf_source="${INPUT_CONF_SOURCE:-$HOME/mediswarm_deploy_conf/deploy_sites_odelia_ci_2node.conf}" run_all="${INPUT_RUN_ALL:-false}" model="${INPUT_MODEL:-1DivideAndConquer}" @@ -131,6 +137,7 @@ jobs: { echo "DEPLOY_PROJECT_FILE=$project_file" echo "DEPLOY_NUM_ROUNDS=$num_rounds" + echo "DEPLOY_MIN_CLIENTS=$min_clients" echo "DEPLOY_CONF_FILE=$conf_file" echo "DEPLOY_RUN_ALL=$run_all" echo "DEPLOY_MODEL=$model" @@ -149,10 +156,14 @@ jobs: - name: Build Docker image + startup kits run: | + # --min-clients: the productive jobs carry min_clients tuned for the full + # consortium (5); with two test clients the run aborts in 30 s with + # "min_clients (5) exceeds the number of participating clients (2)". ./scripts/build/buildDockerImageAndStartupKits.sh \ -p "$DEPLOY_PROJECT_FILE" \ --use-docker-cache \ - --num-rounds "$DEPLOY_NUM_ROUNDS" + --num-rounds "$DEPLOY_NUM_ROUNDS" \ + --min-clients "$DEPLOY_MIN_CLIENTS" - name: Push Docker image to Docker Hub env: