Commit Graph

18094 Commits

Author SHA1 Message Date
Michael Lange
32b4e5e8ab Properly manage the lifecycle of allocations for storage nodes and controllers 2020-05-12 21:30:33 -07:00
Michael Lange
cb6b9dc1f2 Key allocation rows to prevent unnecessary re-renders 2020-05-12 21:30:32 -07:00
Michael Lange
d6986b70f0 Merge pull request #7895 from hashicorp/f-ui/csi-search-and-filter
UI: CSI Searchable volumes and plugins lists
2020-05-08 17:34:24 -07:00
Tim Gross
a334ba3555 volumewatcher: set maximum batch size for raft update (#7907)
The `volumewatcher` has a 250ms batch window so claim updates will not
typically be large enough to risk exceeding the maximum raft message
size. But large jobs might have enough volume claims that this could
be a danger. Set a maximum batch size of 100 messages per
batch (roughly 33K), as a very conservative safety/robustness guard.

Co-authored-by: Chris Baker <1675087+cgbaker@users.noreply.github.com>
2020-05-08 16:53:57 -04:00
Seth Hoenig
b6fc382d60 Merge pull request #7891 from hashicorp/docs-improve-connect-examples
docs: improve some connect examples
2020-05-08 09:50:31 -06:00
Tim Gross
0940a50eaf volume_mount doc tweak (#7900) 2020-05-08 11:14:16 -04:00
Seth Hoenig
320a757323 Merge pull request #7892 from hashicorp/f-e2e-connect-use-expose-service-check
e2e: set an expose service check in connect e2e testcase
2020-05-08 09:00:35 -06:00
Michael Lange
79327c9d96 Introduce shallow to plugin factories to speed up tests 2020-05-07 17:29:42 -07:00
Michael Lange
dc8c125202 Searchable plugins 2020-05-07 17:25:24 -07:00
Michael Lange
a4ea5b16e5 Searchable volumes 2020-05-07 16:57:51 -07:00
Seth Hoenig
e54698ed1c e2e: set an expose service check in connect e2e testcase
Make sure exposed checks work in e2e by setting an expose
check on the e2e connect test.
2020-05-07 14:40:03 -06:00
Seth Hoenig
e9d31c977c docs: replace use of test/test with runnable examples
A few connect examples reference a fake 'test/test' image.
By replacing those with `hashicorpnomad/counter-api` we can
turn them into runnable examples.
2020-05-07 14:16:27 -06:00
Seth Hoenig
011c0cc4f8 docs: fix misspelling of countdash example 2020-05-07 14:00:00 -06:00
Tim Gross
f5c84fca8e CSI volumewatcher testability improvments (#7889)
* volumewatcher: remove redundant log fields

The constructor for `volumeWatcher` already sets a `logger.With` that
includes the volume ID and namespace fields. Remove them from the
various trace logs.

* volumewatcher: advance state for controller already released

One way of bypassing client RPCs in testing is to set a claim status
to controller-detached, but this results in an incorrect claim state
when we checkpoint.
2020-05-07 15:57:24 -04:00
Seth Hoenig
3abfef4536 docs: mention Connect ACLs guide in jobspec connect docs
Promote the Connect ACLs guide on the jobspec connect stanza docs
page. This was suggested in a ticket after someone got stuck not
realizing they needed to enable Consul Intentions for their connect
enabled services, which is covered in the guide.
2020-05-07 13:53:22 -06:00
Seth Hoenig
70b138c90f docs: update examples for connect jobspec docs
Replace the existing top example with something that is directly
runnable on a `-dev-connect` nomad setup.

Add the _complete_ `countdash` example at the bottom in the
examples section, so that people do not need to go guide-hunting
to find a complete example. The hope is people will see more
runnable examples and be less afraid of connect.
2020-05-07 13:45:13 -06:00
Michael Lange
cd5576abe2 Merge pull request #7886 from hashicorp/f/csi-missing-prop-for-plugin-list
Add ControllersExpected to the PluginListStub
2020-05-07 10:39:58 -07:00
Seth Hoenig
3bcecddb0e docs: improve connect expose path examples
This change replaces the top example for expose path configuration with
two new runnable examples. Users should be able to copy and paste those
jobs into a job file and run them against a basic connect enabled nomad
setup.

The example presented first demonstrates use of the service check expose
parameter with no dynamic port explicitly defined (new to 0.11.2).
This is expected to be the "90%" use case of users, and so we should
try to emphasise this pattern as best practice.

The example presented second demonstrates achieving the same goal as the
first exmaple, but utilizing the full plumbing available through the
`connect.proxy.expose` stanza. This should help readers comprehend what
is happening "under the hood".
2020-05-07 11:03:37 -06:00
Michael Lange
b119ca53c3 Add ControllersExpected to the PluginListStub 2020-05-07 10:01:52 -07:00
Drew Bailey
752a10c09d Merge pull request #7885 from hashicorp/update-license-output
update license output
2020-05-07 12:50:00 -04:00
Drew Bailey
aa663e1309 update license output 2020-05-07 12:14:15 -04:00
Seth Hoenig
f421afcb65 Merge pull request #7781 from hashicorp/demo-countdash-docker
demo: create build scripts for our countdash demo
2020-05-07 08:34:20 -06:00
Michael Lange
339386981d Merge pull request #7872 from hashicorp/f-ui/csi-phase-2
UI: CSI Plugins Pages
2020-05-06 18:02:41 -07:00
Michael Lange
877cadffc9 Acceptance test for PluginDetail 2020-05-06 17:36:45 -07:00
Michael Lange
6b46b28624 Don't wrap between icons and health text 2020-05-06 17:22:42 -07:00
Michael Lange
75a150f2ef Use lazyClick to avoid multiple transitionToRoutes being in flight as once 2020-05-06 17:22:42 -07:00
Michael Lange
7c373a2340 Refactor AllocationRow qualifyAllocation
There was a missing edge case where a job is pending. I took the moment
to also refactor the code to use async/await which cleaned up the
promise chaining.
2020-05-06 17:22:42 -07:00
Michael Lange
75a61e6374 Plugin detail page object 2020-05-06 17:21:49 -07:00
Michael Lange
9632aace74 Sort allocations on the plugin detail page 2020-05-06 17:21:49 -07:00
Michael Lange
e984bbcd27 Test coverage for the plugins list page 2020-05-06 17:21:48 -07:00
Michael Lange
092b05d5d1 Page object for Plugins List 2020-05-06 17:21:48 -07:00
Michael Lange
4f4bc6a060 Correct the table headers for dates on the volume page 2020-05-06 17:21:48 -07:00
Michael Lange
bcc6562543 Add a nodes table as well 2020-05-06 17:21:48 -07:00
Michael Lange
d0d1c1fdef Set color in addition to fill for the icon class
Structure icons have fill set to currentColor hardcored in their markup.
This mean setting fill to a color in CSS does nothing, but setting color
now does.
2020-05-06 17:21:47 -07:00
Michael Lange
e6e57557d2 Add icons to the plugin alloc row component 2020-05-06 17:21:47 -07:00
Michael Lange
865e285ec3 Use the correct plugin property for the breadcrumb 2020-05-06 17:21:47 -07:00
Michael Lange
16296f1332 New PluginAllocationRow derivative of AllocationRow 2020-05-06 17:21:46 -07:00
Michael Lange
3999d453ff Emulate belongsTo relationship in storage fragments 2020-05-06 17:21:46 -07:00
Michael Lange
c04b5d29f4 Add short option to date formatters 2020-05-06 17:21:46 -07:00
Michael Lange
0dd5882c75 Update storage controller mirage code to accommodate EDMF's lack of relationships 2020-05-06 17:21:46 -07:00
Michael Lange
6ad5243ae6 Refactor AllocationRow to use AllocationStat 2020-05-06 17:21:45 -07:00
Michael Lange
64fa26b4b9 Separate AllocationStat component for containing the multiple states a stat tracker can be in 2020-05-06 17:21:45 -07:00
Michael Lange
96f86d95be Setup the plugin detail page 2020-05-06 17:21:45 -07:00
Michael Lange
5d3438193a Model out the rest of the CSI Plugin properties 2020-05-06 17:21:44 -07:00
Michael Lange
6c262ddeba Plugins table on the plugins list page 2020-05-06 17:21:44 -07:00
Michael Lange
eaa107ea36 Clean up the csi volume page 2020-05-06 17:21:44 -07:00
Michael Lange
f07a44d844 Set up routes, controllers, and template basics for the plugins page 2020-05-06 17:21:43 -07:00
Michael Lange
70fe2b3484 Add a subnav to the volumes page 2020-05-06 17:21:43 -07:00
Michael Lange
572cf0d467 Update plugin model and serializer to match final API 2020-05-06 17:21:42 -07:00
Michael Lange
83baebc841 Add constraints table to the volume detail page 2020-05-06 17:21:42 -07:00