container_create: correctly set user
We had a bug in ImageStatus where we weren't returning the default image user if set, thus running all containers as root despite a user being set in the image config. We weren't populating the Username field of ImageStatus. This patch fixes that along with the handling of multiple images based on the registry patch for multiple images. It also fixes ListImages to return Username as well. Signed-off-by: Antonio Murdaca <runcom@redhat.com>
This commit is contained in:
parent
9128ffc226
commit
96fb47213e
4 changed files with 103 additions and 28 deletions
|
@ -31,20 +31,20 @@ func (s *Server) ListImages(ctx context.Context, req *pb.ListImagesRequest) (res
|
|||
}
|
||||
resp = &pb.ListImagesResponse{}
|
||||
for _, result := range results {
|
||||
if result.Size != nil {
|
||||
resp.Images = append(resp.Images, &pb.Image{
|
||||
Id: result.ID,
|
||||
RepoTags: result.RepoTags,
|
||||
RepoDigests: result.RepoDigests,
|
||||
Size_: *result.Size,
|
||||
})
|
||||
} else {
|
||||
resp.Images = append(resp.Images, &pb.Image{
|
||||
Id: result.ID,
|
||||
RepoTags: result.RepoTags,
|
||||
RepoDigests: result.RepoDigests,
|
||||
})
|
||||
resImg := &pb.Image{
|
||||
Id: result.ID,
|
||||
RepoTags: result.RepoTags,
|
||||
RepoDigests: result.RepoDigests,
|
||||
}
|
||||
uid, username := getUserFromImage(result.User)
|
||||
if uid != nil {
|
||||
resImg.Uid = &pb.Int64Value{Value: *uid}
|
||||
}
|
||||
resImg.Username = username
|
||||
if result.Size != nil {
|
||||
resImg.Size_ = *result.Size
|
||||
}
|
||||
resp.Images = append(resp.Images, resImg)
|
||||
}
|
||||
logrus.Debugf("ListImagesResponse: %+v", resp)
|
||||
return resp, nil
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue