Commit Graph

4512 Commits

Author SHA1 Message Date
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
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
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
Roberto Bruggemann
0520d0d201 Merge pull request #2973 from weaveworks/report-upgrade-deployments
report.Upgrade() add deployments to pods as parent
2017-12-11 15:29:05 +00:00
Roberto Bruggemann
c08d39f8bd report.Upgrade() add deployments to pods as parent
This was previously done selectPodsWithDeployments.Render().
2017-12-11 14:50:41 +00:00
Matthias Radestock
c6455c41a0 bump embedded Weave Net version to 2.1.3 2017-12-11 11:33:17 +00:00
Roberto Bruggemann
713e1dc8e4 Merge pull request #2966 from weaveworks/release-1.6
Release 1.6.6
2017-12-11 11:08:17 +00:00
Matthias Radestock
1865c46368 refactor: introduce a constant for "copy_of"
since it's shared between the probe and renderer
2017-12-09 10:45:59 +00:00
Damien Lespiau
f1727232cb probe: Use an absolute FQDN for cloud.weave.works by default
This can save a few DNS queries here and there!
2017-12-08 16:51:15 +00:00
Matthias Radestock
ea20de58be Merge pull request #2964 from weaveworks/do-not-reportallocs
do not report allocations in benchmarks
2017-12-08 14:11:18 +00:00
Roberto Bruggemann
433d248d69 Add release 1.6.6 to CHANGELOG v1.6.6 2017-12-08 13:48:41 +00:00
Roberto Bruggemann
580768b656 Update scope version to 1.6.6 in docs 2017-12-08 12:10:49 +00:00
Matthias Radestock
3251705a09 Merge pull request #2965 from weaveworks/2959-lowcost-noop-upgrade
make report upgrading fast when it's a no-op
2017-12-08 10:48:41 +00:00
Matthias Radestock
d528292cd4 make report upgrading fast when it's a no-op
The vast majority of the cost is memory allocation, so doing a first
pass to see whether any upgrading is necessary at all, and thus
avoiding allocation when it isn't, is a massive saving.
2017-12-07 21:01:34 +00:00
Matthias Radestock
d3e23e18fc do not start/stop benchmark timer for no-ops 2017-12-07 20:31:11 +00:00