Sources
To add/develop a new type of source, follow the following guidelines:
A source should be added to cibyl/sources/<SOURCE_NAME>
The source class you develop should inherit from the Source class (
cibyl/sources/source.py
)For a source to support an argument, it should implement the function name associated with that argument
Each source method that implements a method of an argument, should be returning an AttributeDict value of the top level entity associated with the CI systems (e.g.
AttributeDictValue("jobs", attr_type=Job, value=job_objects)
)A source should handle only CI/CD related data. If you would like a certain source to pull a product related data, you should add a source class (with the same name as the CI/CD source) to corresponding plugin (
cibyl/plugin/<PLUGIN_NAME>/sources/<SOURCE_DIR/FILE>
)