mirror of https://github.com/k3s-io/k3s
rkt: Error out when the gid is empty.
Since appc requires gid to be non-empty today (https://github.com/appc/spec/issues/623), we have to error out when gid is empty instead of using the root gid.pull/6/head
parent
afc4c96b84
commit
edc946e081
|
@ -554,13 +554,16 @@ func setApp(imgManifest *appcschema.ImageManifest, c *api.Container, opts *kubec
|
|||
|
||||
// If 'User' or 'Group' are still empty at this point,
|
||||
// then apply the root UID and GID.
|
||||
// TODO(yifan): Instead of using root GID, we should use
|
||||
// the GID which the user is in.
|
||||
// TODO(yifan): If only the GID is empty, rkt should be able to determine the GID
|
||||
// using the /etc/passwd file in the image.
|
||||
// See https://github.com/appc/docker2aci/issues/175.
|
||||
// Maybe we can remove this check in the future.
|
||||
if app.User == "" {
|
||||
app.User = "0"
|
||||
app.Group = "0"
|
||||
}
|
||||
if app.Group == "" {
|
||||
app.Group = "0"
|
||||
return fmt.Errorf("cannot determine the GID of the app %q", imgManifest.Name)
|
||||
}
|
||||
|
||||
// Set working directory.
|
||||
|
|
|
@ -846,6 +846,8 @@ func generateMemoryIsolator(t *testing.T, request, limit string) appctypes.Isola
|
|||
|
||||
func baseApp(t *testing.T) *appctypes.App {
|
||||
return &appctypes.App{
|
||||
User: "0",
|
||||
Group: "0",
|
||||
Exec: appctypes.Exec{"/bin/foo", "bar"},
|
||||
SupplementaryGIDs: []int{4, 5, 6},
|
||||
WorkingDirectory: "/foo",
|
||||
|
|
Loading…
Reference in New Issue