summaryrefslogtreecommitdiff
path: root/buildstream/source.py
Commit message (Collapse)AuthorAgeFilesLines
...
* source.py: Added _stage() wrapper method.Tristan Van Berkom2017-01-181-0/+9
| | | | | This internal method acts as a controller method and does the conversion for the 'directory' parameter.
* source.py: INFO message when a source ref changesTristan Van Berkom2017-01-141-0/+2
|
* source.py: Now constructor takes a display_nameTristan Van Berkom2017-01-121-2/+2
|
* source.py: Wrap some abstract methodsTristan Van Berkom2017-01-111-0/+26
| | | | | Use _refresh() and _consistent() internally, now we cache the consistent state making things a bit less loopy
* source.py: Added consistent() abstract method.Tristan Van Berkom2017-01-091-0/+13
| | | | | | | This is expected to return True if the ref is set and the source can be fetched and staged, otherwise False. If a source is inconsistent, it means that it needs to be sucessfully refreshed (from any track that might be supported in the source).
* source.py: Document ->refresh() to return a booleanTristan Van Berkom2017-01-071-0/+3
| | | | Now refresh returns True if the refresh resulted in any change.
* source.py: Derive from new Plugin common classTristan Van Berkom2017-01-071-91/+7
|
* source.py: Allow Source object to be stringified.Tristan Van Berkom2016-12-191-0/+6
| | | | Same should be done for Elements.
* source.py: Added get_mirror_directory() and enhanced docsTristan Van Berkom2016-12-191-2/+17
| | | | | | The get_mirror_directory() method is just convenience for the Source implementation to get it's own private mirroring base directory, which is a subdirectory of the user specified sources directory.
* Simplify exceptions a bitTristan Van Berkom2016-12-181-6/+20
| | | | | | | | | | | Instead of declaring per operation exceptions, like PreflightError and FetchError etc, just declare exceptions per domain. Replaced the former errors with SourceError for Source implementations and ElementError for element implementations. The core will be able to report errors differently depending on what they asked given plugins to do, and handle a reduced set of exceptions.
* source.py: Fleshing out initial Source plugin facing APITristan Van Berkom2016-12-151-1/+135
|
* pep8 fixes in source.pyTristan Van Berkom2016-12-101-0/+1
|
* Split up factory objects and base data model objects.Tristan Van Berkom2016-11-121-43/+0
| | | | | | | | | | | | | | Better to have a separate file for each class clearly addressing it's purpose with it's filename. Source base data model -> source.py SourceFactory -> _sourcefactory.py Element base data model -> element.py ElementFactory -> _elementfactory.py Also moved the _plugin.py to _plugincontext.py, since the object is infact _PluginContext, lets follow this rule all around for code clarity.
* Element & Source: import private _plugin.py moduleTristan Van Berkom2016-11-091-1/+1
|
* Adding base Element & Source classes.Tristan Van Berkom2016-11-081-0/+69
These currently have no API defined yet, but provide factory objects for managing plugins of their respective Source and Element implementations and instantiating Sources and Elements on demand.