Descriptionstate/api/apiserver/upgrader: Implement Upgrader
This implements the basic API for Upgrader for machine agents.
It exposes the ability to watch for API Version changes, and
then query for what the correct version of Tools.
At the moment, WatchAPIVersion starts an EnvironConfigWatcher
which matches the existing upgrader code. However, it means
the underlying watcher differs from the "NotifyWatcher" that
the other code paths would depend on. In talking with William
there isn't a strong case for doing it this way, and it
would be better to implement an NotifyWatcher on the Environment
document, rather than implementing a Next that returns actual
content.
This also doesn't try to implement Auth checking for Unit agents,
which will also need to use this API. But I'd like to get this
reviewed and landed as a general outline of what the API will look
like.
Originally, I wanted just 1 API which would be a watcher that
on changes would return the Tools objects directly. I also thought
we could create a multi-watcher rather than many watchers.
But this was straightforward and easy, and we can live with it
for now.
https://code.launchpad.net/~jameinel/juju-core/upgrader-api/+merge/172239
(do not edit description out of merge proposal)
Patch Set 1 #
Total comments: 18
Patch Set 2 : state/api/apiserver/upgrader: Implement Upgrader #
Total comments: 15
Patch Set 3 : state/api/apiserver/upgrader: Implement Upgrader #
Total comments: 3
MessagesTotal messages: 8
|