Skip to content

Commit 1d5e173

Browse files
authored
fix(host): ensure a single file dir when mounting (#23897)
1 parent 142e540 commit 1d5e173

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

pkg/hostman/container/volume_mount/disk/post_overlay_hostpath.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,9 +134,18 @@ func (p postOverlayHostPath) mountSingleFile(singleFilePath string, d diskPostOv
134134
return errors.Wrapf(err, "change file %s owner", singleFilePath)
135135
}
136136
if !fileutils.Exists(mergedDst) {
137+
if err := volume_mount.EnsureDir(filepath.Dir(mergedDst)); err != nil {
138+
return errors.Wrapf(err, "ensure dir %s", filepath.Dir(mergedDst))
139+
}
140+
if err := volume_mount.ChangeDirOwnerDirectly(filepath.Dir(mergedDst), ov.FsUser, ov.FsGroup); err != nil {
141+
return errors.Wrapf(err, "change dir %s owner", filepath.Dir(mergedDst))
142+
}
137143
if err := volume_mount.TouchFile(mergedDst); err != nil {
138144
return errors.Wrapf(err, "touch file %s", mergedDst)
139145
}
146+
if err := volume_mount.ChangeDirOwnerDirectly(mergedDst, ov.FsUser, ov.FsGroup); err != nil {
147+
return errors.Wrapf(err, "change file %s owner", mergedDst)
148+
}
140149
}
141150
if err := mountutils.MountBind(singleFileMergedFilePath, mergedDst); err != nil {
142151
return errors.Wrapf(err, "bind mount %s to %s", singleFileMergedFilePath, mergedDst)

0 commit comments

Comments
 (0)