-
Notifications
You must be signed in to change notification settings - Fork 746
Update results job to check skip_workflow on all declared dependencies #13353
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: captainsafia <[email protected]>
Co-authored-by: captainsafia <[email protected]>
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 13353Or
iex "& { $(irm https://raw.githubusercontent.com/dotnet/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 13353" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR updates the results job in the CI workflow to check the skip_workflow output on all declared dependencies (prepare_for_ci, tests, and build_cli_archives), not just prepare_for_ci. This makes the workflow more maintainable for future changes where additional dependencies might define skip_workflow outputs.
Key Changes
- Added
skip_workflowchecks forneeds.tests.outputs.skip_workflowandneeds.build_cli_archives.outputs.skip_workflow - Added explanatory comment about how workflows without
skip_workflowoutputs are handled - Maintains existing behavior since the new checks evaluate to true (empty != 'true') for workflows that don't define
skip_workflowoutputs
| # Check skip_workflow on all declared dependencies. Workflows without | ||
| # skip_workflow outputs (e.g., tests, build_cli_archives) evaluate to | ||
| # empty string, so the check still works ('!= true' is true for empty). |
Copilot
AI
Dec 5, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment claims that tests and build_cli_archives workflows don't have skip_workflow outputs, which is correct. However, the comment then suggests these checks "still work" because empty strings evaluate to != 'true'.
This is misleading because if these workflows don't have skip_workflow outputs, then checking needs.tests.outputs.skip_workflow != 'true' and needs.build_cli_archives.outputs.skip_workflow != 'true' is redundant and serves no functional purpose. These checks will always evaluate to true (since the outputs don't exist and will be empty/null), making them no-ops.
The comment should either:
- Clarify that these checks are added proactively for future maintainability (in case these workflows add
skip_workflowoutputs later), or - Acknowledge that these specific checks are currently redundant but included for consistency
The current wording implies these checks are actively doing something useful, when they're effectively no-ops given the current workflow definitions.
| # Check skip_workflow on all declared dependencies. Workflows without | |
| # skip_workflow outputs (e.g., tests, build_cli_archives) evaluate to | |
| # empty string, so the check still works ('!= true' is true for empty). | |
| # Check skip_workflow on all declared dependencies. Note: tests and build_cli_archives | |
| # do not currently produce skip_workflow outputs, so these checks are redundant and always true. | |
| # They are included for consistency and future maintainability, in case these jobs add such outputs later. |
|
@radical can you please TAL? |
| if: >- | ||
| ${{ always() && | ||
| needs.prepare_for_ci.outputs.skip_workflow != 'true' && | ||
| needs.tests.outputs.skip_workflow != 'true' && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you help me understand what use case this would be helpful for?
Description
Updates the
resultsjob inci.ymlto checkskip_workflowoutput on all declared dependencies, not justprepare_for_ci.Changes:
needs.tests.outputs.skip_workflowandneeds.build_cli_archives.outputs.skip_workflowalongside existingprepare_for_cicheckskip_workflowoutputs evaluate to empty string, so the check still works ('' != 'true'is true)This makes the workflow more maintainable for when additional dependencies may also define
skip_workflowoutputs.Checklist
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.