Skip to content

Add error handling for package updates in workflow #8390

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

Merged
merged 1 commit into from
Apr 8, 2025

Conversation

joperezr
Copy link
Member

Description

Sometimes dotnet outdated tool can return an error exit code if one of the dependencies failed to be updated (could be for different reasons). This change makes it so that even if some dependencies are unable to be updated, the workflow will continue to run and update the rest of the dependencies.

cc: @eerhardt @radical

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • No
  • Did you add public API?
    • No
  • Does the change make any security assumptions or guarantees?
    • No
  • Does the change require an update in our Aspire docs?
    • No

@Copilot Copilot AI review requested due to automatic review settings March 28, 2025 22:50
Copy link
Contributor

@Copilot Copilot AI left a 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 dependency update workflow to handle errors gracefully when dotnet outdated fails to update one or more dependencies.

  • Adds "continue-on-error: true" to the "Update packages" step.
  • Adds a fallback echo message in case dotnet outdated fails.
Comments suppressed due to low confidence (1)

.github/workflows/update-dependencies.yml:34

  • Consider logging more detailed information about the failure rather than a generic message, as this may help with troubleshooting dependency update issues.
run: dotnet outdated --no-restore -u ./Aspire.sln || echo "Some dependencies could not be updated, but continuing workflow."

@github-actions github-actions bot added the area-codeflow for labeling automated codeflow. intentionally a different color! label Mar 28, 2025
@radical
Copy link
Member

radical commented Mar 28, 2025

Sometimes dotnet outdated tool can return an error exit code if one of the dependencies failed to be updated (could be for different reasons). This change makes it so that even if some dependencies are unable to be updated, the workflow will continue to run and update the rest of the dependencies.

What kind of failures can these be? Do they need to be looked at by somebody? Can we add details of this error on the PR as a comment?

@joperezr
Copy link
Member Author

What kind of failures can these be? Do they need to be looked at by somebody? Can we add details of this error on the PR as a comment?

Some projects dual-target for net8 and net9, and we have some special constraints forcing a specific major version for them, and dotnet outdated won't respect this and try to update anyway but that will result in a failure, causing it to roll back that upgrade for that project. We could also be subject in the future of issues where packages put dependency constraints and those would also result in a failure.

You do raise an interesting point which is that we do want to know when some updates fail, I'll see if I can add something to the PR description when this happens.

@joperezr joperezr merged commit d69ef36 into dotnet:main Apr 8, 2025
171 checks passed
Youssef1313 added a commit that referenced this pull request Apr 9, 2025
* Migrate from VSTest to Microsoft.Testing.Platform

* Address TODO

* Cleanup stuff around runsettings

* Add comment

* Progress

* Remove locale

* Always show live output

* Restore test session timeout

* Fix timeout

* Fix typo

* Fix duplicate commnand-line options

* Fix Linux

* Fix for Linux

* Fix

* Fix

* Filter failing

* Fix

* ignore exit code 8

* Fix extra dot

* Ignore exit code

* Fix duplicate --ignore-exit-code

* Fix playground tests on helix

* Move to RepoTesting.props

* Fix results dir

* Fix

* Progress

* Fix duplicate command-line option

* Missing report-trx

* Run executable

* Address review comments

* Revert "Run executable"

This reverts commit d10e168.

* dotnet dll

* Introduce version selector for Aspire templates (#8625)

* Introduce version selecto to aspire new

* Update src/Aspire.Cli/Commands/NewCommand.cs

Co-authored-by: Copilot <[email protected]>

* Update src/Aspire.Cli/Commands/NewCommand.cs

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: David Fowler <[email protected]>
Co-authored-by: Copilot <[email protected]>

* Error handling for GetCapabilitiesAsync connection issues (#8614)

* Error out when GetCapabiltiesAsync is missing or unexpected exception occurs.

* Update src/Aspire.Cli/DotNetCliRunner.cs

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: Copilot <[email protected]>

* Obsolete AddAzureContainerAppsInfrastructure (#8639)

* Obsolete AddAzureContainerAppsInfrastructure

This method is no longer meant to be used. Instead developers should be calling AddAzureContainerAppEnvironment.

Covert the tests using this API to the new API

* Fix volume output naming issue

We weren't discriminating between volumes and bindmounts, which caused a cache collision.

* Switch the prefix at the beginning

* Add error handling for package updates in workflow (#8390)

* Filter out tracing health endpoints in service defaults templates (#8643)

* Filter out tracing health endpoints

Fixes #8580

* Fix typo

* Show neutral icon for container exiting with status code 0 (#8477)

* Show neutral icon for container exiting with status code 0

* Show info/stop icons for all exited resources with status code 0

* Add finished test for custom resource, remove exit code expectation

* update tests

* [tests] Correctly mark Aspire.Dashboard.Tests.Integration.Playwright.AppBarTests with RequiresPlaywright (#8647)

* [tests] Skip generating Directory.Packages.Versions.props for Test (#8621)

.. Utility projects.

* Fix running playground tests on windows

---------

Co-authored-by: Ankit Jain <[email protected]>
Co-authored-by: Dan Moseley <[email protected]>
Co-authored-by: Mitch Denny <[email protected]>
Co-authored-by: David Fowler <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Eric Erhardt <[email protected]>
Co-authored-by: Jose Perez Rodriguez <[email protected]>
Co-authored-by: Damian Edwards <[email protected]>
Co-authored-by: Adam Ratzman <[email protected]>
@github-actions github-actions bot locked and limited conversation to collaborators May 9, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-codeflow for labeling automated codeflow. intentionally a different color!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants