Skip to content

nanoFramework.IoT.Device dependency update process #1565

Open
@networkfusion

Description

@networkfusion

Description

All repos that use a multi project solution for nugets (such as M5Stack) candidates and especially
nanoFramework.IoT.Device currently runs nuget dependency updates using GitHub workflows in 5 stages.
In each stage, the projects are stepped through and update sequentially (with optional exclusions).
This takes a very long time (especially stage 4)!

Once all affected projects are updated, this is re-ran by azure-pipelines before PR merge
and again after merge to main/develop.

We need to:

  • work out how we can make this process as parallel as possible.
  • remove duplicated builds.

Potential fixes:

  • Should this be done in the repo (e.g. a single workflow yaml for each solution/project)?
  • Should nanodu be able to parallelize the builds?
  • Should dependency updates via GH workflow require the azure-pipeline check?
  • Should we run the update checks on a Monday and Wednesday, rather than a Wednesday and Friday (when more core members are available)?

Note that there could/should be a catch all workflow to collect and process ones missing.

Which leads to (aims):

  • Reduce build time (and associated costs).
  • Update quicker (daily).
  • Ensures users are not blocked by out of date nugets.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions