particle-iot / particle-cli-wrapper

Auto-updating wrapper for the Particle CLI
https://www.particle.io/cli
Apache License 2.0
0 stars 3 forks source link

feat: [sc-118144] Update to Node 16 and check SHA256 for CLI wrapper #21

Closed monkbroc closed 1 year ago

monkbroc commented 1 year ago

Story details: https://app.shortcut.com/particle/story/118144

During the wrapper install and upgrade, check the new binary using SHA256 instead of SHA1.

Also take this opportunity to update the Node version used to run the CLI to Node 16.

Steps to test:

keeramis commented 1 year ago

hi @monkbroc - for this step in the Validations section

On a machine that ran the previous version of particle-cli-wrapper more than 4 hours ago (this is determined by the modification time of the autoupdate file), run the new particle-cli-wrapper. Expect the update to run in the background (confirm with ps or Task Manager). After the update is finished, particle serial list should work.

Do I expect the node-v* to be node-v16 after running this step (the current .particle folder contains node-v12)?

monkbroc commented 1 year ago

Yes, the node version should update. However it checks for updates only every 4 hours based on the timestamp of ~/.particle/autoupdate. You can change the timestamp of that file to be old and it will run the auto update on next CLI run touch -t 202305010000 autoupdate

While it's doing the update, I use htop to watch the particle update-cli --background running. Watch the ~/.particle directory. The new Node version will be added and the node_modules will get reinstalled. Commands that need a native module like particle serial inspect may fail during the update but should work before and should work after.

If you need the old version of the CLI wrapper for Mac, here it is: https://binaries.particle.io/cli/beta/1.1.0-12d6799/darwin/amd64/particle