Keep directories when SIGINT sent to daemon #1526
Open
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.
Fixes #1440
This change was done due to the general recommendation to use SIGTERM instead of SIGINT. This change will make SIGINT effectively behave the same as SIGTERM, but will properly unmount the FUSE mounts instead of leaving them hanging. This means that we can now kill the daemon with SIGINT and start it up again without any issues or workarounds.. However, this may not be desired behavior, so feel free to close the PR if this is undesirable.
This is identical to #881 in awslabs/soci-snapshotter.
I tested this with the following workflow:
I then checked a.log and confirmed that there were logs showing the image was being pulled with stargz. I also checked
mount | grep fuse
and saw the FUSE mounts present.I checked the logs again to see it was killed, and checked that
mount | grep fuse
had no FUSE mounts present.I then checked a.log and confirmed that all snapshots were remounted, and that
mount | grep fuse
was repopulated.