in gce-containers-startup/volumes/volumes.go [101:119]
func (env Env) UnmountExistingVolumes() error {
mounts, err := env.existingMounts()
if err != nil {
return fmt.Errorf("failed to list existing volumes: %v", err)
}
var buf bytes.Buffer
for _, mnt := range mounts {
if err := env.unmountDevice(mnt); err != nil {
buf.WriteString(fmt.Sprintf("%v\n", err))
continue
}
log.Printf("Unmounted %s", mnt.mountPoint)
}
if buf.Len() > 0 {
msg := buf.String()
return errors.New(msg[:len(msg)-1]) // remove trailing newline
}
return nil
}