apache / apache/buildstream

Add progress reporting across jobs in subprocesses

Open
#1,092 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
140
Forks
45
Avg merge
1d 3h
Merged PRs (30d)
6

Description

[See original issue on GitLab](https://gitlab.com/BuildStream/buildstream/-/issues/1092)
In GitLab by [[Gitlab user @jonathanmaw]](https://gitlab.com/jonathanmaw) on Jul 26, 2019, 14:22

## Background

As discussed in https://mail.gnome.org/archives/buildstream-list/2019-July/msg00020.html (an E-mail in response to #1029), it would be beneficial to be able to report the progress through a task, so that users know whether a task is hanging or making progress.

To facilitate this, !1482 adds in numerical progress reporting for the main process.

## Task description

* [ ] Pass the Task object created by the scheduler into the Element that is running
* [ ] Fix any IPC that is preventing notifications in the plugin reaching the frontend
* [ ] Add methods in Element to use the Task to report progress
* [ ] Implement progress reporting for whichever plugins seem appropriate

## Acceptance Criteria

It is possible to use function calls in the element plugins' implementations to report progress information that appears in the status display.

----
[//]: # (To review information about possible relevant labels for this issue please view the list of labels: https://gitlab.com/BuildStream/buildstream/labels)

Contributor guide

Open the contributing guide

Research direction

Start with the original GitLab issue and the scheduler, Element, IPC, plugin, and status-display areas named in the task description. Trace how the scheduler-created Task reaches an Element and where plugin notifications cross IPC; the work is done when plugin function calls report progress that appears in the status display.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.