Skip to content

build.yml: Updated the workflow to use version v4 of the actions/upload-artifact and actions/download-artifact.#12746

Merged
xiaoxiang781216 merged 1 commit intoapache:masterfrom
simbit18:simbit18-v4
Jul 22, 2024
Merged

build.yml: Updated the workflow to use version v4 of the actions/upload-artifact and actions/download-artifact.#12746
xiaoxiang781216 merged 1 commit intoapache:masterfrom
simbit18:simbit18-v4

Conversation

@simbit18
Copy link
Copy Markdown
Contributor

@simbit18 simbit18 commented Jul 22, 2024

Summary

Starting November 30, 2024, GitHub Actions customers will no longer be able to use v3 of actions/upload-artifact or actions/download-artifact.

https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/

Breaking change using V4

Due to how Artifacts are created in this new version, it is no longer possible to upload to the same named Artifact multiple times.

https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes

Currently in our workflow each type of runner processing work (Linux, Mac and Windows) in the artifacts generates a single file with all jobs.

Solution present in this PR

modified
https://github.com/apache/nuttx/blob/17aec1328a6c993d4cb8009fb2ac1893103ba936/.github/workflows/build.yml#L171C18-L171C27

name: linux-builds -> name: linux-${{matrix.boards}}-builds

So, in the artifacts produced at runtime, instead of having one linux-builds file, we will have x files as many as jobs.
linux example:

linux-arm-01-builds

linux-arm-02-builds

etc.

Of course, the same is true for mac and msys2.

This PR removes the following warning annotations:

The following actions uses Node.js version which is deprecated and will be forced to run on node20: actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
The following actions uses Node.js version which is deprecated and will be forced to run on node20: actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/

Impact

Improvements
Uploads are significantly faster, upwards of 90% improvement in worst case scenarios.
https://github.com/actions/upload-artifact?tab=readme-ov-file#improvements

Testing

CI

@simbit18 simbit18 changed the title buildyml: Updated the workflow to use version v4 of the actions/upload-artifact and actions/download-artifact. build.yml: Updated the workflow to use version v4 of the actions/upload-artifact and actions/download-artifact. Jul 22, 2024
@xiaoxiang781216 xiaoxiang781216 merged commit 5f75c0a into apache:master Jul 22, 2024
@simbit18 simbit18 deleted the simbit18-v4 branch July 23, 2024 08:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants