summaryrefslogtreecommitdiff
path: root/buildstream/_pipeline.py
Commit message (Collapse)AuthorAgeFilesLines
...
* _pipeline.py: Fixed checkout to ignore conflict on '.' fileTristan Van Berkom2017-04-031-1/+4
|
* _pipeline.py: Fixed PipelineError problems from last commits.Tristan Van Berkom2017-04-021-1/+9
| | | | | | After deriving from _BstError, PipelineError wanted an unconditional message, solve this by just providing a generic one in PipelineError's constructor.
* _pipeline.py: Added checkout() methodTristan Van Berkom2017-04-021-2/+29
| | | | To checkout the pipeline target artifact content to a directory.
* _pipeline.py: Fixed track() command since project element_path was addedTristan Van Berkom2017-03-291-1/+1
| | | | This one was missed in transition
* _pipeline.py: track command now takes list of elementsTristan Van Berkom2017-03-291-11/+3
| | | | Allow the frontend to pass in which elements should be tracked.
* _pipeline.py: Load elements from the element pathTristan Van Berkom2017-03-221-1/+1
|
* Refactor: Untangling element/source namesTristan Van Berkom2017-03-181-4/+0
| | | | | | | | | | | | | | | | | | | | | | | o The metaelements and metasources now carry the name, the loader resolves source names now. o Element/Source factories dont require a name anymore as they are already in the meta objects o Pipeline no longer composes names o Element.name is now the original project relative filename, this allows plugins to identify that name in their dependencies, allowing one to express configuration which identifies elements by the same name that the user used in the dependencies. o Removed plugin._get_display_name() in favor of the plugin.name o Added Element.normal_name, for the cases where we need to have a normalized name for creating directories and log files o Updated frontend and test cases and all callers to use the new naming
* _pipeline.py: Removed a not very relevant commentTristan Van Berkom2017-03-171-5/+0
|
* element.py: Expose element sources generator function.Tristan Van Berkom2017-03-151-3/+3
| | | | | This can be useful to plugins, even if usually they will be using the stage_sources() convenience function.
* _pipeline.py: Some changes of how the pipeline api works.Tristan Van Berkom2017-03-051-66/+78
| | | | | | | | | | | The pipeline no longer owns the scheduler but is given a scheduler to operate on, this needs to be pushed a little further for recursive pipelines to work with a single application scheduler. Also consequently, this patch addresses a problem in pipeline.fetch() which was failing to filter down to only the elements which needed fetching (was resulting in noop of fetch when actually some elements required a fetch).
* _pipeline.py: Name elements with their filenamesTristan Van Berkom2017-02-271-2/+2
| | | | | This seem a bit more intuitive since dependencies and everything are referred to by their project relative filenames.
* _pipeline.py: Added various ticker callbacks for tracking progress at load timeTristan Van Berkom2017-02-271-6/+31
|
* _pipeline.py: Added writable parameter to proxy through to Loader.load()Tristan Van Berkom2017-02-261-2/+4
|
* _pipeline.py: Added global timed messagesTristan Van Berkom2017-02-241-0/+36
| | | | Outputs the time it takes for the full run.
* _pipeline.py: Handle exit code for fetch & track tasks as well.Tristan Van Berkom2017-02-211-0/+7
|
* _pipeline.py: (Issue #4) Dont mark builds as succesfull when they fail.Tristan Van Berkom2017-02-201-5/+6
|
* _pipeline.py: Bump source consistency level *after* setting a new ref.Tristan Van Berkom2017-01-251-4/+3
|
* _pipeline.py: Rework cached & consistency state cachingTristan Van Berkom2017-01-201-15/+22
| | | | | Only interrogate plugins once, after that manually update states depending on successful build steps.
* _pipeline.py: Updated for new Scheduler semanticsTristan Van Berkom2017-01-201-20/+34
|
* _pipeline.py: Changed all -> needed, also messing with cachesTristan Van Berkom2017-01-191-15/+28
| | | | | | In the fetch and refresh API, fetch/refresh all by default, use a needed flag to specify you only want to fetch/refresh what is needed to complete a build.
* _pipeline.py: Skip some elementsTristan Van Berkom2017-01-191-21/+15
| | | | | Skip cached elements at assemble time, skip consistency cached elements in fetch.
* _pipeline.py: Changed refresh() for track()Tristan Van Berkom2017-01-181-31/+24
| | | | | | | Now we lookup the sources which changed in the master process and only apply the references sent over the process boundary to update the sources in tree, and then re-dump the bst files which needed updating.
* _pipeline.py: Added build() methodTristan Van Berkom2017-01-181-0/+48
|
* _pipeline.py: Use context provided scheduler settingsTristan Van Berkom2017-01-141-5/+2
|
* _pipeline.py: A few changes...Tristan Van Berkom2017-01-121-76/+78
| | | | | | | o Removed Resolver, this is just a function now o Some changes to work with the new scheduler and fetch result plugins by their id using _plugin_lookup()
* _pipeline.py: Implement fetch() and refresh() using the SchedulerTristan Van Berkom2017-01-111-19/+137
| | | | Now use the Scheduler to parallelize source operations.
* _pipeline.py: Build the elements with the artifact cacheTristan Van Berkom2017-01-091-3/+12
|
* _pipeline.py: Added inconsistent() methodTristan Van Berkom2017-01-091-0/+14
| | | | This is used to collect a pipeline's inconsistent sources
* _pipeline.py: Add dependencies() convenience generatorTristan Van Berkom2017-01-081-15/+26
|
* _pipeline.py: Load element & source factories with the plugin pathsTristan Van Berkom2017-01-071-2/+2
|
* _pipeline.py: Now refresh() returns a list of refreshed sourcesTristan Van Berkom2017-01-071-9/+26
| | | | | Also shuffled preflight check around so that it's called after the whole pipeline is constructed and dependencies can be traversed.
* element.py: Derive from new Plugin common class and support variablesTristan Van Berkom2017-01-071-3/+3
| | | | | | | | | | | | | | o Load environment and resolve variables at instantiation This also make the dependency lists private, this commit changes _pipeline.py accordingly. o Derive Plugin class now o Added enhanced node fetching routines which substitute variables, this is how element plugins should load sandbox commands with o Make some element members private now
* _pipeline.py: Implement refresh() methodTristan Van Berkom2016-12-311-0/+22
|
* element.py: An element has runtime_dependencies and build_dependencies.Tristan Van Berkom2016-12-311-1/+1
| | | | More clear than dependencies and build_dependencies
* Adding initial pipeline object with resolverTristan Van Berkom2016-12-311-0/+89
Code taken from Jürg Billeter's branch to form an initial pipeline. Left out scheduler and related things for now.