On Fri, Apr 18, 2014 at 11:34 AM, Aaron Bentley <aaron.bent...@canonical.com
> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 14-04-18 06:28 AM, William Reade wrote:
> > As for automatically upgrading: it's clearly apparent that there's
> > a compelling case for not *always* doing so. But the bulk of patch
> > releases *will* be server-side bug fixes, and it's not great if we
> > generally fail to deliver those to casual users.
>
> I think that users should upgrade their clients in order to get bug
> fixes.  I think that users who don't upgrade their client are
> expecting to get a lock-down experience, bugs and all.
>
>
And how does that work with multi-user environments? Divergence is
inevitable.


> I don't think it's a good idea to default to deploying untested
> software combinations, especially when using a tested software
> combination will give a superior experience (i.e. client-side bug fixes).
>

We need better client api compatibility on minor versions. The exception is
bootstrap for which exact match seems reasonable for *dev* versions. For
stable versions we should be compatible across micro releases and testing
the same, --version still seems good for users who want exact
behavior/reproduction.


> Even though you don't intend to introduce incompatibilities with old
> clients in patchlevel updates, we're human and mistakes happen.  CI
> found lots of compatibility-breaking mistakes in the 1.17 series, and
> I'm sure there were many more that were caught by code review and
> juju-core's unit tests.


>
The way to be certain we don't introduce such incompatibilities is
> testing with every patchlevel of the client, and that scales an
> already-big workload linearly with the number of patchlevels.
>

for stable i think we need to go there, client versions across multiple
clients and server versions will diverge across a stable series. Afaik we
don't throw incompatibility flags/errors for older clients using 1.16 api
against 1.18 api servers, but perhaps we should.

To me a followup to that is to distribute binaries (static link) for the
client as well so that people can get a newer client version as needed for
their platform.


>
> There is value in using the latest patchlevel of the agent code.
> There is risk in using untested client/agent combinations.  It is hard
> to weigh one against the other, and I say we don't have to-- we can
> get the value without introducing the risk by upgrading the client.
>
>

> > I'm inclined to go with (1) a --version flag for bootstrap,
> > accepting only major.minor >= client tools and (2) a --dry-run flag
> > for upgrade-juju (with the caveat that you'd need to pass its
> > result in as --version to the next command, because new tools
> > *could* be published in the gap between the dry-run and the, uh,
> > wet one). Aaron, even though this doesn't promote your use case to
> > the default, I think this'll address your issues; confirm?
>
> - --version would be an improvement, but we have a workaround, so it's
> not /that/ important.  It's really the users I'm thinking of, the ones
> who care about reproducibility.  I'd honestly rather have
> - --bootstrap-host, because the lack of it is making our testing of the
> manual provider a bit weird.
>
> Aaron
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQEcBAEBAgAGBQJTUUYPAAoJEK84cMOcf+9h1l8IAJTlK7+6bhoAGSmD0uVvFjmN
> XjqO26yQcQT+YNBLK5cNt2L6/nFmUUjLg9B1XA/y4rX6zTGUKKk9Ge1iyrfWRXf7
> ZQwWHgsMIKxTmVak9x12ack/0PQQ4/D8qoXcM5mVRDCyXJx+zVDnGSw7Cfq+5Td7
> cL79xrJb9Eakhw4AUzDnW7MGMIlQQIFbkMpRoO5YBhSLN+DCf8mpXRapCKGVwxf6
> oLBarulsDGuolE8641wz39vraYbOpVWZG6NVtK7hYSVjyF689rt1uitJD79ebDGc
> zhoKNBdGQQbDceORfK9wxQcK5072XwzZpIQTaQAPioqJ7BJQ+SL7RWksZdraVTU=
> =Fb/3
> -----END PGP SIGNATURE-----
>
> --
> Juju-dev mailing list
> Juju-dev@lists.ubuntu.com
> Modify settings or unsubscribe at:
> https://lists.ubuntu.com/mailman/listinfo/juju-dev
>
-- 
Juju-dev mailing list
Juju-dev@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju-dev

Reply via email to