From b8126e50f78e40dfd108c7bf32162c751d4a87dd Mon Sep 17 00:00:00 2001 From: cxymds Date: Sun, 11 Oct 2026 11:21:35 +0800 Subject: [PATCH] test(ci): expose manager regressions through tools-only dispatch --- .github/workflows/rustfs-functional-chain.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rustfs-functional-chain.yml b/.github/workflows/rustfs-functional-chain.yml index 4d7db4c68..e56745ac4 100644 --- a/.github/workflows/rustfs-functional-chain.yml +++ b/.github/workflows/rustfs-functional-chain.yml @@ -52,6 +52,11 @@ on: type: boolean required: false default: false + validation_manager_tools: + description: Include exact checkpoint/MRF/incarnation regressions in a tools-only build + type: boolean + required: false + default: false validation_cleanup_run_id: description: Failed validation run whose supported retained environment needs evidence-based finalization type: string @@ -81,7 +86,7 @@ concurrency: jobs: prepare: - if: ${{ (github.event_name == 'workflow_dispatch' && inputs.validation_case == '' && !inputs.validation_tools_only && !inputs.validation_native_tools && !inputs.validation_shared_tools && inputs.validation_cleanup_run_id == '') || github.event.workflow_run.event == 'schedule' }} + if: ${{ (github.event_name == 'workflow_dispatch' && inputs.validation_case == '' && !inputs.validation_tools_only && !inputs.validation_native_tools && !inputs.validation_shared_tools && !inputs.validation_manager_tools && inputs.validation_cleanup_run_id == '') || github.event.workflow_run.event == 'schedule' }} runs-on: smoke-testing timeout-minutes: 10 outputs: @@ -130,7 +135,7 @@ jobs: fi validation: - if: ${{ github.event_name == 'workflow_dispatch' && (inputs.validation_case != '' || inputs.validation_tools_only || inputs.validation_native_tools || inputs.validation_shared_tools || inputs.validation_cleanup_run_id != '') }} + if: ${{ github.event_name == 'workflow_dispatch' && (inputs.validation_case != '' || inputs.validation_tools_only || inputs.validation_native_tools || inputs.validation_shared_tools || inputs.validation_manager_tools || inputs.validation_cleanup_run_id != '') }} runs-on: ${{ inputs.validation_tools_only && 'ubuntu-latest' || 'smoke-testing' }} timeout-minutes: 90 outputs: @@ -170,6 +175,7 @@ jobs: TOOLS_ONLY: ${{ inputs.validation_tools_only }} NATIVE_TOOLS: ${{ inputs.validation_native_tools }} SHARED_TOOLS: ${{ inputs.validation_shared_tools }} + MANAGER_TOOLS: ${{ inputs.validation_manager_tools }} run: | set -euo pipefail python3 - <<'PY' @@ -187,6 +193,8 @@ jobs: raise ValueError("native regressions require tools-only execution, without a fleet case or cleanup") if os.environ["SHARED_TOOLS"] == "true" and (os.environ["TOOLS_ONLY"] != "true" or cleanup or os.environ["SELECTED_CASE"]): raise ValueError("shared fixture builds require tools-only execution, without a fleet case or cleanup") + if os.environ["MANAGER_TOOLS"] == "true" and (os.environ["TOOLS_ONLY"] != "true" or cleanup or os.environ["SELECTED_CASE"]): + raise ValueError("manager regressions require tools-only execution, without a fleet case or cleanup") if cleanup and (not cleanup.isdigit() or int(cleanup) <= 0 or os.environ["SELECTED_CASE"] or os.environ["TOOLS_ONLY"] == "true"): raise ValueError("cleanup requires one exact failed run and is exclusive with case/tool execution") if re.fullmatch(r"[0-9a-f]{40}", revision) is None: @@ -377,6 +385,7 @@ jobs: auto_testing_sha: ${{ inputs.auto_testing_sha }} build_native_heal: ${{ inputs.validation_native_tools }} build_shared_heal: ${{ inputs.validation_shared_tools }} + build_manager_native: ${{ inputs.validation_manager_tools }} secrets: inherit upgrade: