Add module to ensure the visor is transportable #1807
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The visor will now attempt to create a dmsg transport to itself 1 minute after the visor has started, and this check will be repeated every 5 minutes, immediately removing it if it can be created.
On a failed attempt, the next checks will be performed in 1 minute intervals, resetting to 5 minutes on a successful transport creation attempt.
On 3 failed attempts to establish this transport, the visor will be shut down.
This assumes the visor will be restarted by the init daemon / external process control.
The systemd service in the packages will unconditionally restart the visor if the process exits.
Temporary fix for #1803
The self transports are demonstrated here to occur every 5 minutes
The simple test of manually establishing and removing a self-transport in a scripted loop was performed in order to test / verify the exit behavior. The visor does exit successfully in this instance, however an unexpected error was generated during this test
visor debug logging showing the process exit when the visor is not transportable