set default EventsLogFilePath on first run
The current code only sets EventsLogFilePath when the tmp is overwritten from the db. We should always set the default when no path was set in containers.conf. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
This commit is contained in:
parent
12a1483e7f
commit
b3212a6802
|
|
@ -3,6 +3,7 @@ package libpod
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
"sync"
|
||||
|
||||
"github.com/containers/podman/v4/libpod/events"
|
||||
|
|
@ -11,6 +12,10 @@ import (
|
|||
|
||||
// newEventer returns an eventer that can be used to read/write events
|
||||
func (r *Runtime) newEventer() (events.Eventer, error) {
|
||||
if r.config.Engine.EventsLogFilePath == "" {
|
||||
// default, use path under tmpdir when none was explicitly set by the user
|
||||
r.config.Engine.EventsLogFilePath = filepath.Join(r.config.Engine.TmpDir, "events", "events.log")
|
||||
}
|
||||
options := events.EventerOptions{
|
||||
EventerType: r.config.Engine.EventsLogger,
|
||||
LogFilePath: r.config.Engine.EventsLogFilePath,
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ func newLogFileEventer(options EventerOptions) (*EventLogFile, error) {
|
|||
// https://github.com/containers/podman/issues/15688
|
||||
fd, err := os.OpenFile(options.LogFilePath, os.O_RDONLY|os.O_CREATE, 0700)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
return nil, fmt.Errorf("failed to create event log file: %w", err)
|
||||
}
|
||||
return &EventLogFile{options: options}, fd.Close()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1030,9 +1030,6 @@ func (r *Runtime) mergeDBConfig(dbConfig *DBConfig) {
|
|||
logrus.Debugf("Overriding tmp dir %q with %q from database", c.TmpDir, dbConfig.LibpodTmp)
|
||||
}
|
||||
c.TmpDir = dbConfig.LibpodTmp
|
||||
if c.EventsLogFilePath == "" {
|
||||
c.EventsLogFilePath = filepath.Join(dbConfig.LibpodTmp, "events", "events.log")
|
||||
}
|
||||
}
|
||||
|
||||
if !r.storageSet.VolumePathSet && dbConfig.VolumePath != "" {
|
||||
|
|
|
|||
Loading…
Reference in New Issue