Skip to content
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

CI: Upgrade or replace all deprecated GH Actions #983

Merged
merged 3 commits into from
Apr 19, 2024

Conversation

DeeDeeG
Copy link
Member

@DeeDeeG DeeDeeG commented Apr 18, 2024

Summary of changes

  • Upgraded a bunch of deprecated versions of GitHub Actions we rely on to their latest major versions.
  • Replaced setup-xvfb action with a direct xvfb-run command (short inline bash script).
  • Replaced git-auto-commit-action with a short inline bash script.

Motivation and Context

Context: Node 16 actions are deprecated. See: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/

Most of these were old versions of actions which were running on Node 16. Upgraded them to newer versions which run on Node 20 instead.

Also tried to replace setup-xvfb action with a direct xvfb-run command, as the setup-xvfb action hasn't been updated in a while, its author isn't responding to an issue asking for it to update from Node 16 to Node 20, and GitHub Actions Ubuntu runners include xvfb out of the box now, something that may not have been true (???) when the action was first created. I dunno. Worth a try. UPDATE: Working.

UPDATE: Also replaced git-auto-commit-action with a short inline script, avoiding another external dependency. (Bash scripts generally don't expire or bitrot very quickly, so this one should last us for a while!) (This one had an update to run on Node 20 instead of 16, but I'm good with git, and from that vantage point, this seemed like a good thing to take in-house and cut out the external dependency.)

Side note: For both of these actions that I made into inline scripts in the workflow .yml files, I studied what the action itself did, and replicated as closely as I thought would be relevant to our use of it. They pass in CI, meaning they are doing what they are supposed to. It just works ™️. So far, at least.

Verification Process

Going to let CI run on this PR! Let's hope this works. Update: CI is passing!

Also tested the Documentation workflow on my fork. Worked.

FWIW, I reviewed the changelogs of all updated Actions. Didn't see anything too crazy or out-of-place.

Screenshots

Before (lots of deprecation warnings) (click to expand):

Pulsar's CI summary page showing an Annotations box with numerous two warnings about numerous deprecated packages --  Node js 16 actions are deprecated  Please update the following actions to use Node js 20

After (no deprecation warnings) (click to expand):

Pulsar's CI summary page, with no Annotations box, no deprecation warnings

Most of these were old versions of actions
which were running on Node 16. Upgraded them to newer versions
which run on Node 20 instead.

Also tried to replace setup-xvfb action with a direct xvfb-run command.
Let's hope this works.
@DeeDeeG
Copy link
Member Author

DeeDeeG commented Apr 19, 2024

By the way: With this PR, the only external GitHub Actions we use is a pinned exact commit of nick-fields/retry. I like fewer external dependencies!

@DeeDeeG
Copy link
Member Author

DeeDeeG commented Apr 19, 2024

See these changelogs if you want to know what changed in the various GitHub Actions:

Copy link
Member

@confused-Techie confused-Techie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With CI still seeming to pass, and the lack of any breaking changes that would seem to effect us at all on this bump, plus considering I know bumping the NodeJS version of our actions is required, this seems like a fine change by me.

Do love moving off some dependencies to just using local scripts, that's always a good move.

So this seems great to me with lots of research to back it, lets merge!

@DeeDeeG
Copy link
Member Author

DeeDeeG commented Apr 19, 2024

Thank you for the review, hopefully I can review some other open PR's myself soon, working on various backlog things, etc.

But for now, merging this one!

@DeeDeeG DeeDeeG merged commit 99b6297 into master Apr 19, 2024
103 checks passed
@DeeDeeG DeeDeeG deleted the update-deprecated-GH-Actions branch April 19, 2024 16:50
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.

2 participants