As of e12dbb460 (#1758) we no longer force the usage of pcap when
encryption is enabled. Hence...
- we no longer need to figure out whether the router was started with
a password when re-attaching it from the proxy. We therefore remove
the code for that.
- there is no longer any mode in which we pass both `--datapath` and
`--iface` options to the router. Previously this would only happen
when encryption was enabled and the only overlay used for
connections was sleeve. It is not clear what the behaviour is when
these conditions do not hold, so, to be safe, we prevent the
specification of both flags.
Travis insists that one picks a project language. There is no go left
in the steps executed by travis. Instead we have Python, Ruby and
shell. Let's pick the first...
Picking Python makes travis unhappy with "Can not perform a '--user'
install. User site-packages are not visible in this
virtualenv". Dropping the '--user' flag fixes that.
There is no point running builds, tests, lints on Travis, since we
already do that on Circle.
The only thing we aren't doing (and can't do) on Circle is doc
publishing, so now Travis does just that.
...since that is a) inefficent and b) can block when IPAM hasn't had
consensus.
We can only end up in this situation when DOCKER_HOST is pointing at
the weave proxy and we are running `weave run|attach` with
`--local`. So it's very much an edge case.
Fixes#1858.
With the per-broadcast-source GossipSenders gone, we can get rid of
GossipSender gc...
Instead of maintaining a Connection->GossipSender map in the
GossipChannels - which we then need to gc when connections get closed
- we keep gossip_channel_name->GossipSender maps in LocalConnections.
Access to the map is guarded by a separate lock, rather than re-using
the LocalConnection lock. This reduces lock contention and risk of
deadlock.
In the GossipSenders, we replace the Stop() method with a signalling
channel, i.e. senders stop when that channel gets closed. Handily, the
LocalConnection.finished channel fits that description. So when a
LocalConnection's run loop terminates, any existing and future
associated GossipSenders will end up terminating too.