Re: [BuildStream] BuildGrid and BuildStream 1.4 and API concerns
- From: Sander Striker <s striker striker nl>
- To: Tristan Van Berkom <tristan vanberkom codethink co uk>
- Cc: BuildStream <buildstream-list gnome org>
- Subject: Re: [BuildStream] BuildGrid and BuildStream 1.4 and API concerns
- Date: Fri, 30 Nov 2018 16:51:57 -0500
Hi,
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,
Sander
--
[
Date Prev][Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]