From 20bdbcb2794e5d435968aac7ffdde72c5c4c90c6 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Fri, 7 Feb 2020 17:14:29 +0100 Subject: [PATCH] backend/inventory: add facts when creating entity --- backend/inventory/app/server.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/backend/inventory/app/server.go b/backend/inventory/app/server.go index eb5850c4b2..d000047ebd 100644 --- a/backend/inventory/app/server.go +++ b/backend/inventory/app/server.go @@ -39,10 +39,18 @@ func (s *Server) ListEntities(ctx context.Context, req *pb.ListEntitiesRequest) } func (s *Server) CreateEntity(ctx context.Context, req *pb.CreateEntityRequest) (*pb.CreateEntityReply, error) { - err := s.Storage.CreateEntity(req.GetEntity().GetUri()) + uri := req.GetEntity().GetUri() + err := s.Storage.CreateEntity(uri) if err != nil { return nil, status.Error(codes.Internal, "could not create entity") } + for _, fact := range req.GetEntity().GetFacts() { + if fact.GetName() != "" { + if err := s.Storage.SetFact(uri, fact.GetName(), fact.GetValue()); err != nil { + return nil, status.Errorf(codes.Internal, "failed to set fact %s, %s", fact.GetName(), err) + } + } + } return &pb.CreateEntityReply{Entity: req.GetEntity()}, nil }