djphazer / O_C-Phazerville

The kitchen sink of O_C firmware - do all the things!
http://firmware.phazerville.com/
243 stars 37 forks source link

Update custom build github action to avoid breaking as GitHub end-of-lifes Node.js 16 support #59

Closed adamjmurray closed 8 months ago

adamjmurray commented 8 months ago

I did a custom build recently and I noticed a warning:

1 warning Build Custom Firmware Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/cache@v3, actions/setup-python@v3, actions/upload-artifact@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

From the github blog linked there:

Node 16 has reached its end of life, prompting us to initiate its deprecation process for GitHub Actions. Our plan is to transition all actions to run on Node 20 by Spring 2024.

So it sounds like the Phazerville custom build workflow is going to break in the coming months if we don't upgrade some GitHub Actions.

This PR upgrades said Actions to keep everything running smoothly. Note that this simply updates some GitHub/Microsoft-maintained automation scripts for the github.com platform, and doesn't affect the python version or anything with potential impact. Everything should be fully backward compatible, and it's not like we have a choice: This is a forced upgrade.

I tested it here: https://github.com/adamjmurray/O_C-Phazerville/discussions/1

I had done the same build over in the main repository here and the resulting build artifact was the same size before and after these changes. I'm about to go install the final build on my O_C hardware. I'll give a shout if anything seems wrong.

Note: The same changes will need to be applied to .github/workflows/firmware.yml. I am not setup to test that workflow right now, so I didn't include its fix in this PR.

djphazer commented 8 months ago

Great minds think alike, as I was just testing this the other day - https://github.com/djphazer/O_C-Phazerville/commit/94aa899983a628541d2d3f7893969c4dcdf055cd

It will get merged soon ;)

adamjmurray commented 8 months ago

The hardware seems fine running firmware built after the upgrade was applied.

djphazer commented 8 months ago

No worries! I wouldn't really expect the firmware to break, but it wouldn't surprise me if some intermediate file path broke and suddenly the filenames are missing the version number or something.

Thank you for testing things! I think we should be good for some time... until the next forced upgrade 😆