Browse Source

fix issue where rootfs path strips to the empty string (#1464)

Change-type: patch
Connects-to: #1463
Signed-off-by: dt-rush <nickp@balena.io>
pull/1445/head^2
dt-rush 5 years ago committed by Ben Kochie
parent
commit
93fbb93a46
  1. 1
      CHANGELOG.md
  2. 1
      collector/filesystem_linux_test.go
  3. 1
      collector/fixtures_bindmount/proc/mounts
  4. 6
      collector/paths.go

1
CHANGELOG.md

@ -25,6 +25,7 @@
* [BUGFIX] Fix netdev nil reference on Darwin #1414
* [BUGFIX] Strip path.rootfs from mountpoint labels #1421
* [FEATURE] Add new thermal_zone collector #1425
* [BUGFIX] Fix empty string in path.rootfs #1464
## 0.18.1 / 2019-06-04

1
collector/filesystem_linux_test.go

@ -120,6 +120,7 @@ func TestPathRootfs(t *testing.T) {
expected := map[string]string{
// should modify these mountpoints (removes /host, see fixture proc file)
"/": "",
"/media/volume1": "",
"/media/volume2": "",
// should not modify these mountpoints

1
collector/fixtures_bindmount/proc/mounts

@ -1,3 +1,4 @@
/dev/nvme1n0 /host ext4 rw,seclabel,relatime,data=ordered 0 0
/dev/nvme1n1 /host/media/volume1 ext4 rw,seclabel,relatime,data=ordered 0 0
/dev/nvme1n2 /host/media/volume2 ext4 rw,seclabel,relatime,data=ordered 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0

6
collector/paths.go

@ -44,5 +44,9 @@ func rootfsStripPrefix(path string) string {
if *rootfsPath == "/" {
return path
}
return strings.TrimPrefix(path, *rootfsPath)
stripped := strings.TrimPrefix(path, *rootfsPath)
if stripped == "" {
return "/"
}
return stripped
}

Loading…
Cancel
Save