mirror of
https://github.com/containers/podman.git
synced 2025-10-12 00:35:05 +08:00
Fix preference of user quadlets directories
If there's a container defined in multiple directories use the following precedence: $XDG_CONFIG_HOME/containers/systemd/ or ~/.config/containers/systemd/ takes precedence over /etc/containers/systemd/users/$(UID) and this takes precedence over /etc/containers/systemd/users/ Signed-off-by: Petr Lautrbach <lautrbach@redhat.com>
This commit is contained in:
@ -115,13 +115,13 @@ func getUnitDirs(rootless bool) []string {
|
||||
return nil
|
||||
}
|
||||
dirs = append(dirs, path.Join(configDir, "containers/systemd"))
|
||||
dirs = append(dirs, filepath.Join(quadlet.UnitDirAdmin, "users"))
|
||||
u, err := user.Current()
|
||||
if err != nil {
|
||||
if err == nil {
|
||||
dirs = append(dirs, filepath.Join(quadlet.UnitDirAdmin, "users", u.Uid))
|
||||
} else {
|
||||
fmt.Fprintf(os.Stderr, "Warning: %v", err)
|
||||
return dirs
|
||||
}
|
||||
return append(dirs, filepath.Join(quadlet.UnitDirAdmin, "users", u.Uid))
|
||||
return append(dirs, filepath.Join(quadlet.UnitDirAdmin, "users"))
|
||||
}
|
||||
dirs = append(dirs, quadlet.UnitDirAdmin)
|
||||
return append(dirs, quadlet.UnitDirDistro)
|
||||
|
@ -61,8 +61,8 @@ func TestUnitDirs(t *testing.T) {
|
||||
|
||||
rootlessDirs := []string{
|
||||
path.Join(configDir, "containers/systemd"),
|
||||
filepath.Join(quadlet.UnitDirAdmin, "users"),
|
||||
filepath.Join(quadlet.UnitDirAdmin, "users", u.Uid),
|
||||
filepath.Join(quadlet.UnitDirAdmin, "users"),
|
||||
}
|
||||
|
||||
unitDirs = getUnitDirs(true)
|
||||
|
Reference in New Issue
Block a user