darwin: workaround missing user

This commit is contained in:
Pogobanane 2022-07-10 18:10:30 +02:00
parent e6ccc740d8
commit 58ceff1f7b

View file

@ -368,8 +368,8 @@ func writeSecrets(secretDir string, secrets []secret, keysGid int, userMode bool
return nil
}
func lookupKeysGroup() (int, error) {
group, err := user.LookupGroup("keys")
func lookupGroup(groupname string) (int, error) {
group, err := user.LookupGroup(groupname)
if err != nil {
return 0, fmt.Errorf("Failed to lookup 'keys' group: %w", err)
}
@ -380,6 +380,18 @@ func lookupKeysGroup() (int, error) {
return int(gid), nil
}
func lookupKeysGroup() (int, error) {
gid, err1 := lookupGroup("keys")
if err1 == nil {
return gid, nil
}
gid, err2 := lookupGroup("nogroup")
if err2 == nil {
return gid, nil
}
return 0, fmt.Errorf("Can't find group 'keys' nor 'nogroup' (%w).", err2)
}
func (app *appContext) loadSopsFile(s *secret) (*secretFile, error) {
if app.checkMode == Manifest {
return &secretFile{firstSecret: s}, nil