we got some dhrek we got some doneky we got some fienona
This commit is contained in:
@@ -64,7 +64,7 @@ func execStart (service string) {
|
||||
return
|
||||
}
|
||||
|
||||
uid, gid, err := spawn.LookupUID(fullName)
|
||||
uid, gid, err := cli.LookupUID(fullName)
|
||||
if err != nil {
|
||||
cli.Sayf("cannot start service: %v\n", err)
|
||||
os.Exit(1)
|
||||
@@ -78,7 +78,7 @@ func execStart (service string) {
|
||||
|
||||
logDir := filepath.Join("/var/log/", fullName)
|
||||
env := append(os.Environ(), "HNAKRA_LOG_DIR=" + logDir)
|
||||
err = ensureLogDir(logDir, int(uid), int(gid))
|
||||
err = cli.MkdirFor(logDir, int(uid), int(gid))
|
||||
if err != nil {
|
||||
cli.Sayf("cannot start service: %v\n", err)
|
||||
os.Exit(1)
|
||||
@@ -125,17 +125,6 @@ func execStop (service string) {
|
||||
}
|
||||
}
|
||||
|
||||
func ensureLogDir (directory string, uid, gid int) error {
|
||||
err := os.MkdirAll(directory, 0755)
|
||||
if err != nil { return err }
|
||||
err = os.Chmod(directory, 0770)
|
||||
if err != nil { return err }
|
||||
err = os.Chown(directory, uid, gid)
|
||||
if err != nil { return err }
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ensurePidFile (file string, uid, gid int) error {
|
||||
pidFile, err := os.Create(file)
|
||||
if err != nil { return err }
|
||||
|
||||
@@ -6,7 +6,6 @@ import "fmt"
|
||||
import "time"
|
||||
import "errors"
|
||||
import "syscall"
|
||||
import "os/user"
|
||||
import "strconv"
|
||||
import "path/filepath"
|
||||
|
||||
@@ -45,24 +44,6 @@ func Spawn (path string, uid, gid uint32, env []string, args ...string) (pid int
|
||||
return process.Pid, process.Release()
|
||||
}
|
||||
|
||||
// LookupUID returns the uid and gid of the given username, if it exists.
|
||||
func LookupUID (name string) (uid, gid uint32, err error) {
|
||||
user, err := user.Lookup(name)
|
||||
if err != nil {
|
||||
return 0, 0, err
|
||||
}
|
||||
|
||||
puid, err := strconv.Atoi(user.Uid)
|
||||
if err != nil {
|
||||
return 0, 0, err
|
||||
}
|
||||
pgid, err := strconv.Atoi(user.Gid)
|
||||
if err != nil {
|
||||
return 0, 0, err
|
||||
}
|
||||
return uint32(puid), uint32(pgid), nil
|
||||
}
|
||||
|
||||
// PidFile returns the path of a pidfile under the specified name. More
|
||||
// specifically, it returns `/run/<name>.pid`.
|
||||
func PidFile (name string) string {
|
||||
|
||||
Reference in New Issue
Block a user