Skip to content

Github Actions Workflows should be updated to use Node.js 20 #2039

Open

Description

@ni-jfitzger

Description of issue

Our nimibot runner summaries are showing annotations:

system_test (niscope)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

We should update our configuration to use Node.js 20, before support for Node.js 16 is dropped entirely.

The configuration for this can be found in .github\workflows\github_actions_aws_*.yml (the * is a wildcard not part of a filename).
The steps look like:

    steps:
      - name: checkout repository
        uses: actions/checkout@v3
      - name: upload coverage
        uses: codecov/codecov-action@v3
  • For codecov-action, the issue was addressed in the v4 release
    • Arguments to the action have changes, so see the README
    • There's some mixed messaging that suggests we could go back to Tokenless uploading (PRs made from forks to the upstream public repos will support tokenless), but based on my reading of things, I don't think that's the case. It'll give us intermittent upload failures, again
  • For checkout, the issue was addressed in the v4 release

Activity

  1. added this to the nimi-python 1.4.8 milestone on Feb 9, 2024
  2. bkeryan commented on Feb 9, 2024

    @bkeryan
    Contributor

    @ni-jfitzger Consider using the Mend Renovate app to keep your GitHub actions and Poetry lock files up-to-date. Here is the config we've been using in measurementlink-python: https://github.com/ni/measurementlink-python/blob/main/.github/renovate.json

    It automatically posts PRs for dependency updates and you can configure scheduling and auto-merging if you want. It also creates a "Dependency Dashboard" issue that you can use to see its status and control it: https://www.github.com/ni/measurementlink-python/issues/475

  3. ni-jfitzger commented on Feb 9, 2024

    @ni-jfitzger
    CollaboratorAuthor

    @bkeryan That sounds very useful. I'll create an issue under our Streamlined Processes milestone.

  4. ni-jfitzger commented on Aug 25, 2026

    @ni-jfitzger
    CollaboratorAuthor

    Now, it's probably Node.js 24.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions