Skip to content

ci: migrate off Node 20 actions (actions-rs/*, mobiledevops/secret-to-file-action) #4002

@jqnatividad

Description

@jqnatividad

Background

The publish workflows surface a GitHub Actions deprecation warning:

Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions-rs/cargo@v1, mobiledevops/secret-to-file-action@v1. Actions will be forced to run with Node.js 24 by default starting June 16, 2026. Node.js 20 will be removed from the runner on September 16, 2026.

actions-rs/* is also unmaintained (archived), so it won't get a Node 24 update.

Work

  • Replace actions-rs/cargo@v1 with direct cargo invocations (run: steps) — the repo already uses dtolnay/rust-toolchain for toolchain setup, so actions-rs/toolchain is gone; actions-rs/cargo is the remaining holdout.
  • Replace mobiledevops/secret-to-file-action@v1 (used to write the zipsign private key) with a maintained Node 24 action or an inline run: step that writes the secret to a file.
  • Audit all .github/workflows/*.yml for any other Node 20 actions.

Acceptance

No Node 20 deprecation warnings in publish (and other) workflow runs; all actions on Node 24.

Surfaced during the 21.1.0 release publish.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions