Don't prevent boot on temp cleanup

Fixes #2462
Fixes #2455

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
Michael Crosby 2018-07-13 13:32:25 -04:00
parent 8baeaff54b
commit 0105959c3d
3 changed files with 14 additions and 9 deletions

View File

@ -116,8 +116,12 @@ func App() *cli.App {
return errors.Wrap(err, "creating temp mount location")
}
// unmount all temp mounts on boot for the server
if err := mount.CleanupTempMounts(0); err != nil {
return errors.Wrap(err, "unmounting temp mounts")
warnings, err := mount.CleanupTempMounts(0)
if err != nil {
log.G(ctx).WithError(err).Error("unmounting temp mounts")
}
for _, w := range warnings {
log.G(ctx).WithError(w).Warn("cleanup temp mount")
}
address := config.GRPC.Address
if address == "" {

View File

@ -39,10 +39,10 @@ func SetTempMountLocation(root string) error {
}
// CleanupTempMounts all temp mounts and remove the directories
func CleanupTempMounts(flags int) error {
func CleanupTempMounts(flags int) (warnings []error, err error) {
mounts, err := Self()
if err != nil {
return err
return nil, err
}
var toUnmount []string
for _, m := range mounts {
@ -53,11 +53,12 @@ func CleanupTempMounts(flags int) error {
sort.Sort(sort.Reverse(sort.StringSlice(toUnmount)))
for _, path := range toUnmount {
if err := UnmountAll(path, flags); err != nil {
return err
warnings = append(warnings, err)
continue
}
if err := os.Remove(path); err != nil {
return err
warnings = append(warnings, err)
}
}
return nil
return warnings, nil
}

View File

@ -24,6 +24,6 @@ func SetTempMountLocation(root string) error {
}
// CleanupTempMounts all temp mounts and remove the directories
func CleanupTempMounts(flags int) error {
return nil
func CleanupTempMounts(flags int) ([]error, error) {
return nil, nil
}