MCPcopy
hub / github.com/feast-dev/feast / set_project_metadata

Method set_project_metadata

sdk/python/feast/infra/registry/s3.py:84–105  ·  view source on GitHub ↗
(self, project: str, key: str, value: str)

Source from the content-addressed store, hash-verified

82 )
83
84 def set_project_metadata(self, project: str, key: str, value: str):
85 registry_proto = self.get_registry_proto()
86 found = False
87 for pm in registry_proto.project_metadata:
88 if pm.project == project:
89 try:
90 meta = json.loads(pm.project_uuid) if pm.project_uuid else {}
91 except Exception:
92 meta = {}
93 if not isinstance(meta, dict):
94 meta = {}
95 meta[key] = value
96 pm.project_uuid = json.dumps(meta)
97 found = True
98 break
99 if not found:
100 from feast.project_metadata import ProjectMetadata
101
102 pm = ProjectMetadata(project_name=project)
103 pm.project_uuid = json.dumps({key: value})
104 registry_proto.project_metadata.append(pm.to_proto())
105 self.update_registry_proto(registry_proto)
106
107 def get_project_metadata(self, project: str, key: str) -> Optional[str]:
108 registry_proto = self.get_registry_proto()

Callers

nothing calls this directly

Calls 4

get_registry_protoMethod · 0.95
to_protoMethod · 0.95
update_registry_protoMethod · 0.95
ProjectMetadataClass · 0.90

Tested by

no test coverage detected