This project is archived. Its data is read-only.

Rework node provenance for synthetic nodes

Related to !1425 (merged) (https://gitlab.com/BuildStream/buildstream/merge_requests)/1425#note_186387325)

There are only two cases were nodes are set in the code (hence without provenance):

  • When automatic variables are set by the core (e-g: max-jobs)
  • when plugins call Element.set_public_data

The first case should never throw errors, so it is of limited interests. The second is more important. What should probably be done here is to have 'set_public_data' able of creating a fake provenance with the name of the plugin, the project and probably the element name.

Currently, we get the provenance from the element file, which does not contain the data.

We would therefore have much better error messages, and would be able to get rid of most synthetic nodes.

Assignee Loading
Time tracking Loading