Do not chown files when booting the daemon; avoid massive delays in production environments
This commit is contained in:
parent
4a2a0b25bb
commit
b4875926c6
11
cmd/root.go
11
cmd/root.go
|
@ -170,10 +170,6 @@ func rootCmdRun(*cobra.Command, []string) {
|
||||||
log.WithField("server", s.Id()).Info("loaded configuration for server")
|
log.WithField("server", s.Id()).Info("loaded configuration for server")
|
||||||
}
|
}
|
||||||
|
|
||||||
if !c.System.SetPermissionsOnBoot {
|
|
||||||
log.Warn("server file permission checking is currently disabled on boot!")
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create a new workerpool that limits us to 4 servers being bootstrapped at a time
|
// Create a new workerpool that limits us to 4 servers being bootstrapped at a time
|
||||||
// on Wings. This allows us to ensure the environment exists, write configurations,
|
// on Wings. This allows us to ensure the environment exists, write configurations,
|
||||||
// and reboot processes without causing a slow-down due to sequential booting.
|
// and reboot processes without causing a slow-down due to sequential booting.
|
||||||
|
@ -183,13 +179,6 @@ func rootCmdRun(*cobra.Command, []string) {
|
||||||
s := serv
|
s := serv
|
||||||
|
|
||||||
pool.Submit(func() {
|
pool.Submit(func() {
|
||||||
if c.System.SetPermissionsOnBoot {
|
|
||||||
s.Log().Info("chowning server data directory")
|
|
||||||
if err := s.Filesystem.Chown("/"); err != nil {
|
|
||||||
s.Log().WithField("error", err).Warn("error during server data directory chown")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
s.Log().Info("ensuring server environment exists")
|
s.Log().Info("ensuring server environment exists")
|
||||||
// Create a server environment if none exists currently. This allows us to recover from Docker
|
// Create a server environment if none exists currently. This allows us to recover from Docker
|
||||||
// being reinstalled on the host system for example.
|
// being reinstalled on the host system for example.
|
||||||
|
|
|
@ -33,19 +33,6 @@ type SystemConfiguration struct {
|
||||||
Gid int
|
Gid int
|
||||||
}
|
}
|
||||||
|
|
||||||
// Determines if permissions for a server should be set automatically on
|
|
||||||
// daemon boot. This can take a long time on systems with many servers, or on
|
|
||||||
// systems with servers containing thousands of files.
|
|
||||||
//
|
|
||||||
// Setting this to true by default helps us avoid a lot of support requests
|
|
||||||
// from people that keep trying to move files around as a root user leading
|
|
||||||
// to server permission issues.
|
|
||||||
//
|
|
||||||
// In production and heavy use environments where boot speed is essential,
|
|
||||||
// this should be set to false as servers will self-correct permissions on
|
|
||||||
// boot anyways.
|
|
||||||
SetPermissionsOnBoot bool `default:"true" yaml:"set_permissions_on_boot"`
|
|
||||||
|
|
||||||
// Determines if Wings should detect a server that stops with a normal exit code of
|
// Determines if Wings should detect a server that stops with a normal exit code of
|
||||||
// "0" as being crashed if the process stopped without any Wings interaction. E.g.
|
// "0" as being crashed if the process stopped without any Wings interaction. E.g.
|
||||||
// the user did not press the stop button, but the process stopped cleanly.
|
// the user did not press the stop button, but the process stopped cleanly.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user