Pull missing artifacts in `bst artifact push`
As per #819, BuildStream should pull missing artifacts by default. This is consistent with bst source push
fetching missing sources. The previous behavior was to only pull missing buildtrees. A top-level --no-pull
option can easily be supported in the future.
This change makes it possible to use a single scheduler session (with
concurrent pull and push jobs). This commit also simplifies the code as
it removes the sched_error_action
emulation, using the regular
frontend code path instead.