Currently, we need to manually download the new version neo-cli from GitHub to update the neo node, which is inconvenient and inefficient, especially when emergency fixes are released. In the meanwhile, Github only has full version binary available, this is redundant for an update while we only need those files that are changed.
Solution
Create a patch release that only contains files that need to be overwritten or added every time a new version is released. That patch should contain a patch instruction file indicating how we should make that patch.
Add a system update command to the neo-cli, enabling users to patch the system manually from the neo console.
Provides an automatically update option, which is set to close by default, but that node will automatically update when a new version is available once opened by the node owner. (or even forced to stop consensus when a critical patch is released)
(Optional hotpatch) Create a wrapper program to neo-cli to automatically reboot neo-cli when an update or a plugin installation happens.
Currently, we need to manually download the new version
neo-cli
from GitHub to update the neo node, which is inconvenient and inefficient, especially when emergency fixes are released. In the meanwhile, Github only has full version binary available, this is redundant for an update while we only need those files that are changed.Solution
automatically update
option, which is set to close by default, but that node will automatically update when a new version is available once opened by the node owner. (or even forced to stop consensus when a critical patch is released)neo-cli
to automatically rebootneo-cli
when an update or a plugin installation happens.