lp:~rogpeppe/juju-core/459-apiserver-charm-stream
- Get this branch:
- bzr branch lp:~rogpeppe/juju-core/459-apiserver-charm-stream
Branch merges
- Juju Engineering: Pending requested
-
Diff: 159 lines (+80/-20)3 files modifiedstate/apiserver/admin.go (+26/-19)
state/apiserver/apiserver.go (+48/-1)
state/charm.go (+6/-0)
Branch information
Recent revisions
- 2035. By John A Meinel
-
[r=jameinel],[bug=1205371] state/apiserver
/uniter: use cached APIAddresses When Roger changed the common.Addresser code to use the cached
addresses, he missed the fact that Uniter had its own implementation.
This was because we weren't exposing StateAddress or CACert to the
Uniter. So this change moves the code around to share the common
APIAddresses method and uses it in the Uniter facade.This also changes common.Addresser to be named common.
StateAddresser
to make it clearer what is going on. - 2034. By Nate Finch
-
[r=natefinch] API endpoint for set. There actually already was an endpoint that was used by the GUI, but it has logic to treat empty strings as unsetting the configuration value, which is not the behavior we want. To maintain compatibility with the GUI, I created a new endpoint to be used by the client, called NewServiceSetFo
rClientAPI, an intentionally ugly name to remind us that we want to merge the two functions as soon as possible. This new endpoint does not treat empty strings specially, so if you set a configuration value to an empty string it'll be set to an empty string, and you should use unset to unset it. - 2033. By Frank Mueller
-
[r=themue] local: ensure that state and api ports are free
Evaluation of a way to ensure unused ports for state and API
of the local provider. - 2032. By John A Meinel
-
[r=jameinel] rpc/apiserver: logging improvements
This is a bunch of tweaks to the RPC logging statements to make them
nicer to use.1) Add wall-clock time to responses. This lets you see quickly how
long a given RPC took to process.2) Add a unique identifier per-connection. The code was sort of
written around remoteAddr (it collected it, at least), but it turns
out that isn't actually enough. Roger mentioned using the address of
an object, but those can be reused. Using a unique counter allows us
to both guarantee it is unique for the lifetime of the process, and
makes the numbers significantly smaller. I also went with Hex form
to save a couple bytes, but I'm not wedded to it. I could be
convinced that %d would be better than %x. I did go with [%x] to
ensure that you can search for a stream without hitting
prefix/suffix/etc matches.3) Once the remote side has logged in, the log messages include the
Tag of that entity. I find that to be quite useful (especially to
clarify unit agents from machine agents, etc). The Facade they are
using is already in the requests (as Type).This is based on my earlier patch that fixes the API endpoint bugs. I
could pull it out if that patch gets rejected, as it isn't an actual
dependency, just code committed after the other one. I don't expect it
will be an actual problem, though. - 2031. By John A Meinel
-
[r=jameinel] juju/api: don't warn on aborted connection
I've been playing with Roger's tweak to using cached API addresses
rather than determining them by reading the provider-state file. It
works, but it has a bug that when it successfully connects to the API
with the cached information, it causes the other goroutine to stop
with an "aborted" exception. That was being displayed to the user as a
WARNING which is pretty clearly incorrect. I can understand that we
don't want to silently consume errors, but errAborted should be
treated as control flow logic.So I made that happen. I wanted to add testing that we output sane
information to the user, but it was clumsy to find the right hook
points. If people feel strongly I can try to track that down, but I
didn't want to lose the patch in flight. - 2030. By Andrew Wilkins
-
[r=axwalk],[bug=1246983] cmd/juju: use API for expose/unexpose
Partially fixes #1246983
- 2029. By Andrew Wilkins
-
[r=axwalk],[bug=1246983] cmd/juju: use API for resolved
Partially fixes #1246983
- 2028. By Andrew Wilkins
-
[r=axwalk],[bug=1233924],[bug=1247730] environs/
simplestreams: fix GetMetadata GetMetadata was dropping out if a datasource
returned no matching product IDs, without an
error. I've changed it to check that a non-
empty list of products is returned before
bailing out.Fixes #1233924
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp:~go-bot/juju-core/trunk