oci: skip checking gid for WithAppendAdditionalGroups
Signed-off-by: Ye Sijun <junnplus@gmail.com>
This commit is contained in:
parent
01a2b793b8
commit
2dbff1dbca
@ -879,15 +879,19 @@ func WithAppendAdditionalGroups(groups ...string) SpecOpts {
|
||||
groupMap := make(map[string]user.Group)
|
||||
for _, group := range ugroups {
|
||||
groupMap[group.Name] = group
|
||||
groupMap[strconv.Itoa(group.Gid)] = group
|
||||
}
|
||||
var gids []uint32
|
||||
for _, group := range groups {
|
||||
g, ok := groupMap[group]
|
||||
if !ok {
|
||||
return fmt.Errorf("unable to find group %s", group)
|
||||
gid, err := strconv.ParseUint(group, 10, 32)
|
||||
if err == nil {
|
||||
gids = append(gids, uint32(gid))
|
||||
} else {
|
||||
g, ok := groupMap[group]
|
||||
if !ok {
|
||||
return fmt.Errorf("unable to find group %s", group)
|
||||
}
|
||||
gids = append(gids, uint32(g.Gid))
|
||||
}
|
||||
gids = append(gids, uint32(g.Gid))
|
||||
}
|
||||
s.Process.User.AdditionalGids = append(s.Process.User.AdditionalGids, gids...)
|
||||
return nil
|
||||
|
@ -476,6 +476,11 @@ daemon:x:2:root,bin,daemon
|
||||
groups: []string{"bin", "daemon"},
|
||||
expected: []uint32{0, 1, 2},
|
||||
},
|
||||
{
|
||||
name: "append group id",
|
||||
groups: []string{"999"},
|
||||
expected: []uint32{999},
|
||||
},
|
||||
{
|
||||
name: "unknown group",
|
||||
groups: []string{"unknown"},
|
||||
|
Loading…
Reference in New Issue
Block a user