Commit Graph

4524 Commits

Author SHA1 Message Date
Matthias Radestock
dd2dfd54f5 Merge pull request #2996 from weaveworks/multi-join
cope with one->many topology mappings
2017-12-20 11:38:24 +00:00
Matthias Radestock
ee4a56e8ad optimse common one->one mapping case
one->many is much rarer
2017-12-19 19:34:52 +00:00
Matthias Radestock
25eeec0227 enhance joinResult to handle mapping one node to multiple nodes 2017-12-18 21:13:15 +00:00
Matthias Radestock
f920f1b9d2 refactor: extract helper to add joinResult mapping 2017-12-18 18:41:52 +00:00
Matthias Radestock
e2b1bfb7dd Merge pull request #2994 from weaveworks/simplify-join-results
simplify `joinResults`
2017-12-18 17:33:39 +00:00
Roberto Bruggemann
7748e7dd0d Merge pull request #2990 from weaveworks/no-weave-tip
Suggest how to disable weave errors and warnings
2017-12-18 10:18:01 +00:00
Matthias Radestock
acb8951e98 Merge pull request #2992 from weaveworks/remove-node-edges
remove Node.Edges
2017-12-17 18:44:03 +00:00
Matthias Radestock
315b05062f remove vestiges of edge metadata from comments 2017-12-17 18:38:36 +00:00
Matthias Radestock
b540a1639b fix comment: overlay edges *are* present 2017-12-17 18:37:14 +00:00
Matthias Radestock
ba7af78cfa ensure result adjacencies start empty
Any existing list would be mutated by result(), which is bad.

Note that all the existing newJoinResults() call sites pass in nodes
with no adjacencies, so this is purely a safety measure.
2017-12-17 18:24:32 +00:00
Matthias Radestock
a6f24fc151 remove superfluous lookups
Since we seed the joinResult with the nodes from the topology we are
mapping to, we know the 'create' function is only called when there is
no node with the specified id.

This neatly makes the 'create' function only do what it says,
i.e. return _new_ nodes.
2017-12-17 18:24:32 +00:00
Matthias Radestock
ac87c2b6e8 optimise & simplify node propagation in joinResult
Instead of copying unmatched nodes at the end, and matched nodes when
we encounter them, copy *all* nodes at the beginning.
2017-12-17 18:14:48 +00:00
Matthias Radestock
4dde1ce715 optimise and align endpoints2Hosts
Avoid a reduce step by joining the host topology in endpoints2Hosts.

This is similar to what we do in connectionJoin and
endpoints2Processes.
2017-12-17 18:14:47 +00:00
Matthias Radestock
f16908aea9 refactor: fix up adjacencies as part of joinResult.result() 2017-12-17 18:14:47 +00:00
Matthias Radestock
e5117a652f remove superfluous fixupAdjacencies calls
fixupAdjacencies fixes up adjancencies of mapped nodes. The nodes at
the call sites we are removing aren't mapped.
2017-12-17 18:14:30 +00:00
Matthias Radestock
cc859926ef tiny simplifying refactor 2017-12-17 15:36:28 +00:00
Matthias Radestock
e93b69cf10 remove Node.Edges
It is unused and none of the adjacency mapping code in the renderer
takes any notice of it. Removing this shrinks the report size.

Edges were introduced in #838. At the time we had an experimental
packet sniffer under experimental/sniff/sniffer.go. That got removed
in #1646.

We can resurrect this if we ever decide to add meta data to edges.
2017-12-17 13:28:22 +00:00
Matthias Radestock
d428b69492 Merge pull request #2991 from weaveworks/simplify-render-map
refactor: drop networks from render.MapFunc
2017-12-17 11:09:34 +00:00
Matthias Radestock
0c894e9446 refactor: drop networks from render.MapFunc
All the MapFuncs that needed networks have been elevated to Renderers.
2017-12-17 00:18:12 +00:00
Roberto Bruggemann
ea7853a612 Suggest how to disable weave errors and warnings
This applies when running scope deployments without Weave Net.
2017-12-15 18:08:37 +00:00
Roberto Bruggemann
d5917c4691 Merge pull request #2987 from weaveworks/release-tagging
Tag images at build time
2017-12-15 17:06:44 +00:00
Matthias Radestock
ae09b1c278 Merge pull request #2978 from weaveworks/2943-map-nats
don't exclude NATed connections in mapping to processes

Fixes #2943
2017-12-15 12:14:37 +00:00
Roberto Bruggemann
dacf284b38 Merge pull request #2988 from weaveworks/release-1.6
Release 1.6.7
2017-12-15 11:55:57 +00:00
Matthias Radestock
20138b9218 don't exclude NATed connections in mapping to processes
We used to ignore source endpoints that are associated with multiple
destination endpoints, which is a partial workaround for our inability
to correctly represent two connections from the same source ip/port
but different processes, or the same destination ip/port but different
processes. See #2665.

However, that condition is too coarse. In particular, we end up
ignoring endpoints that are connected to NATed destinations, since the
latter are represented by two (or more) endpoints.

The change here corrects that.
2017-12-15 11:40:43 +00:00
Roberto Bruggemann
fc53f9e5a6 Update Scope version in docs to 1.6.7 v1.6.7 2017-12-15 11:13:36 +00:00
Roberto Bruggemann
30dacacfaa Add release 1.6.7 to CHANGELOG 2017-12-15 11:13:32 +00:00
Roberto Bruggemann
be5f216342 Tag images at build time
`push_images` used to tag and publish the latest built image, no matter what version or what branch or tag was checked out.
Since `bin/release build` and `bin/release publish` can be run at different times, it was possible for the latest built image to change. At which point `bin/release publish` would tag and publish an intended image.

Moving image tagging at build time will prevent this from happening again.
2017-12-15 10:27:54 +00:00
Filip Barl
6d156091b1 Merge pull request #2986 from weaveworks/bump-ui-components-to-include-decompose-time-travel
Bump ui-components to include decomposed Time Travel
2017-12-14 16:59:17 +01:00
Filip Barl
1db7f42f5c Extended TimeTravelWrapper with dropdown show/hide CSS animation. 2017-12-14 16:23:10 +01:00
Filip Barl
bee6863980 Bumped ui-components minor version. 2017-12-14 16:00:08 +01:00
Matthias Radestock
eaa394259d Merge pull request #2865 from weaveworks/intern-map-keys
"Intern" map keys
2017-12-14 14:19:53 +00:00
Matthias Radestock
46551998cc Merge pull request #2983 from weaveworks/2982-cheap-connectedness
cheap probe connectedness api endpoint

Fixes #2982.
2017-12-14 11:04:03 +00:00
Matthias Radestock
70d84170d6 introduce a cheap /api/probes?sparse variant
In many cases we only need to know whether there are _any_ connected
probes, and not the probe details. Obtaining that info is cheaper
since it requires no reading or merging or reports.
2017-12-14 01:07:40 +00:00
Matthias Radestock
72b9e9c6b9 add Reporter.HasReports() for cheap report availability checking
This requires no report reading / merging.

We plan to expose this in the HTTP API, so the UI gets a cheap way of
checking whether the app is currently receiving data from probes.
2017-12-14 00:13:45 +00:00
Matthias Radestock
54fe1e37da cosmetic 2017-12-13 23:52:48 +00:00
Matthias Radestock
6c4bf58fe2 refactor: extract awsCollector.getReportKeys helper
This makes Report() more readable. We also intend to use this function
elsewhere.
2017-12-13 23:50:05 +00:00
Matthias Radestock
3a122aeed5 refactor: rename awsCollector.getReportKeys to reportKeysInRange
...so we can recycle the former name.
2017-12-13 23:40:04 +00:00
Roberto Bruggemann
930c4b5383 Merge pull request #2979 from weaveworks/cache-upgraded-reports
Upgrade reports before caching
2017-12-13 10:40:47 +00:00
Aaron Kirkbride
e16385f647 Merge pull request #2980 from weaveworks/aaron7-patch-1
Upgrade weaveworks-ui-components to 0.3.10
2017-12-12 18:51:44 +00:00
Aaron Kirkbride
f158f9e2ef Upgrade weaveworks-ui-components to 0.3.10 2017-12-12 18:50:44 +00:00
Aaron Kirkbride
c4727db55c Merge pull request #2976 from weaveworks/lock-styled-upgrade-ui-components
Lock styled-components version and upgrade ui-components
2017-12-12 14:43:52 +00:00
Aaron Kirkbride
3c92e8b264 Lock styled-components version and upgrade ui-components 2017-12-12 14:42:48 +00:00
Roberto Bruggemann
10f3e4c0dc In-memory collector: merge reports after upgrade
Upgrading reports individually reduces the amount of upgrades, since some reports might have been upgraded in previously.
2017-12-12 14:16:48 +00:00
Roberto Bruggemann
e58f865d3f Upgrade reports before caching
This change will reduces upgrades, since `report.Upgrade` only performs an upgrade if necessary.
2017-12-12 11:25:04 +00:00
Matthias Radestock
e24d3e93fe Add static map of common keys to reduce allocations 2017-12-11 20:26:47 +00:00
Matthias Radestock
1f2247a8c4 move node metadata keys into report package
Both the probe and the app (for rendering) need to know about them.
2017-12-11 20:26:08 +00:00
Damien Lespiau
5b4c77bc4c Merge pull request #2971 from weaveworks/2017-12-08-absolute-fqdn
probe: Use an absolute FQDN for cloud.weave.works by default
2017-12-11 18:22:00 +00:00
Matthias Radestock
d7ed649717 Merge pull request #2977 from weaveworks/2974-no-docker-binary
don't embed docker binary

Fixes #2974
2017-12-11 17:54:04 +00:00
Matthias Radestock
efbfd5d582 don't embed docker binary
We needed it because some of our invocations of Weave Net's `weave`
script depended on it, but that is no longer the case as of Weave Net
2.1.

Fixes #2974.
2017-12-11 17:02:20 +00:00
Matthias Radestock
6f02432710 Merge pull request #2975 from weaveworks/bump-weavenet
bump embedded Weave Net version to 2.1.3
2017-12-11 17:01:48 +00:00