Fix quarantine/outerloop workflow failures from empty timeout arguments#15921
Fix quarantine/outerloop workflow failures from empty timeout arguments#15921radical merged 3 commits intomicrosoft:mainfrom
Conversation
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 15921Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 15921" |
There was a problem hiding this comment.
Pull request overview
Fixes specialized (quarantine/outerloop) workflow failures caused by empty-string timeout inputs bypassing workflow_call defaults, and restores PR-trigger validation for those workflows with narrowly scoped paths: filters.
Changes:
- Make
--timeoutand--hangdump-timeoutresilient to emptyworkflow_callinputs by adding expression fallbacks at each usage site inrun-tests.yml. - Re-enable
pull_requesttriggers for quarantine/outerloop workflows with narrowpaths:filters. - Document in
AGENTS.mdthat workflow-file changes will auto-trigger quarantine/outerloop validation runs.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| AGENTS.md | Adds guidance that changes to specific workflow files will trigger quarantine/outerloop validation on PRs. |
| .github/workflows/tests-quarantine.yml | Re-enables PR trigger with a narrow paths: filter for quarantine workflow-related files. |
| .github/workflows/tests-outerloop.yml | Re-enables PR trigger with a narrow paths: filter for outerloop workflow-related files. |
| .github/workflows/run-tests.yml | Aligns timeout input defaults and adds ` |
…rloop tests PR microsoft#15917 added testSessionTimeout/testHangTimeout pass-through from specialized-test-runner.yml to run-tests.yml. When runsheet entries don't define these values, GitHub Actions passes empty strings to workflow_call inputs — bypassing the callee's default: values. This caused --hangdump-timeout and --timeout to receive empty arguments, making the MTP test runner print its help text and exit without running any tests. Fix: - Resolve effective timeout values once in job-level env vars with || 'default' fallbacks - Correct input defaults from 15m/7m to 20m/10m to match the canonical values in eng/Testing.props Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… change Re-enable pull_request triggers on tests-quarantine.yml and tests-outerloop.yml with narrow paths: filters scoped to the key orchestration workflow files (self + specialized-test-runner.yml + run-tests.yml). Previously disabled in microsoft#12143 due to overly broad paths filter causing disk space issues. The new narrow filter prevents regressions in the quarantine/outerloop pipelines from going undetected. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
cc95ec1 to
97640b1
Compare
|
Re-running the failed jobs in the CI workflow for this pull request because 1 job was identified as retry-safe transient failures in the CI run attempt.
|
Description
PR #15917 added
testSessionTimeoutandtestHangTimeoutpass-through fromspecialized-test-runner.ymltorun-tests.yml. When runsheet entries don't define these values, GitHub Actions passes empty strings to theworkflow_callinputs — which bypasses the callee'sdefault:values. This caused--hangdump-timeoutand--timeoutto receive empty arguments, making the MTP test runner print its help text and exit without running any tests.All 6 test jobs in the quarantine workflow failed: https://github.com/microsoft/aspire/actions/runs/24064788789
Changes
1. Fix empty timeout arguments in
run-tests.yml(600339ab)|| 'default'fallbacks at all 8 usage sites (4 test runner steps × 2 timeout args each)eng/Testing.props2. Auto-trigger quarantine/outerloop workflows on PR (
e0f21436)pull_requesttriggers ontests-quarantine.ymlandtests-outerloop.ymlwith narrowpaths:filters scoped to just the workflow files that affect themrun-tests.yml,specialized-test-runner.yml,tests-quarantine.yml, ortests-outerloop.ymlwill automatically trigger these workflows, preventing regressions like this one from going undetected3. AGENTS.md guidance (
cc95ec1e)Checklist