@@ -147,13 +147,20 @@ def load_query(self, relative_path: str = ".") -> str:
147147 return file .read ()
148148
149149
150+ class InfrahubObjectConfig (InfrahubRepositoryConfigElement ):
151+ model_config = ConfigDict (extra = "forbid" )
152+ name : str = Field (..., description = "The name associated to the object file" )
153+ file_path : Path = Field (..., description = "The file within the repository containing object data." )
154+
155+
150156RESOURCE_MAP : dict [Any , str ] = {
151157 InfrahubJinja2TransformConfig : "jinja2_transforms" ,
152158 InfrahubCheckDefinitionConfig : "check_definitions" ,
153159 InfrahubRepositoryArtifactDefinitionConfig : "artifact_definitions" ,
154160 InfrahubPythonTransformConfig : "python_transforms" ,
155161 InfrahubGeneratorDefinitionConfig : "generator_definitions" ,
156162 InfrahubRepositoryGraphQLConfig : "queries" ,
163+ InfrahubObjectConfig : "objects" ,
157164}
158165
159166
@@ -176,6 +183,7 @@ class InfrahubRepositoryConfig(BaseModel):
176183 default_factory = list , description = "Generator definitions"
177184 )
178185 queries : list [InfrahubRepositoryGraphQLConfig ] = Field (default_factory = list , description = "GraphQL Queries" )
186+ objects : list [InfrahubObjectConfig ] = Field (default_factory = list , description = "Objects" )
179187
180188 @field_validator (
181189 "check_definitions" ,
@@ -184,6 +192,7 @@ class InfrahubRepositoryConfig(BaseModel):
184192 "python_transforms" ,
185193 "generator_definitions" ,
186194 "queries" ,
195+ "objects" ,
187196 )
188197 @classmethod
189198 def unique_items (cls , v : list [Any ]) -> list [Any ]:
0 commit comments