Re: [BuildStream] BuildGrid and BuildStream 1.4 and API concerns



Hi,

On Mon, Nov 26, 2018 at 10:02 AM Tristan Van Berkom via BuildStream-list <buildstream-list gnome org> wrote:
Hi all,

BuildStream 1.4 will be coming out with support for remote execution,
which in a way means optional dependency on BuildGrid.

No.  It is an optional dependency of services that implement the version of the Remote Execution API that are compatible with bst client side implementation.  As the protocol is under active development, if this is a concern, then let's mark the feature as experimental.
 
My question to the developers involved in BuildGrid is:

  What is the status of API stability of BuildGrid regarding the
  protocols and any parts which BuildStream will directly be
  interfacing with ?

None.  BuildGrid currently makes no guarantees of stability other than tracking the latest version of the protocol while not having done a release with a non-zero major version number.  I envision this to be the case until we are comfortable the protocol and project don't undergo any major changes.

In practice this will probably not be a problem.
 
  Are there any chances that changes in BuildGrid due to it's being
  under development, could break BuildStream users ? I.e. can BuildGrid
  be safely upgraded without breaking BuildStream and without requiring
  lock-step upgrades of both BuildStream and BuildGrid ?

I think the answers for this are already "BuildGrid's BuildStream
facing APIs are already stable, since they are a standard grpc protocol
that is not allowed to break it's API at all" and "No, upgrades to a
deployed BuildGrid cannot break interfacing BuildStream clients".

But please think about this.

If the APIs are not stable yet, I would propose that we consider a
bundled distribution of a version of BuildGrid that is known to work
with BuildStream 1.4, to be distributed *with* BuildStream 1.4, only as
a temporary measure until we can be sure that we don't break users in
the meantime.

-1.  Using remote execution is optional.  It is implemented around a protocol.  There are multiple implementations of the protocol beyond BuildGrid: BuildBarn, BuildFarm, Scoot and Google's commercial Remote Build Execution service.  Each BuildStream user or group of users are free to chose which, and which stability guarantees they are comfortable with.

Cheers,
    -Tristan

Cheers,

Sander


_______________________________________________
BuildStream-list mailing list
BuildStream-list gnome org
https://mail.gnome.org/mailman/listinfo/buildstream-list
--

Cheers,

Sander


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]