2dec484724
* ui: Reduce discovery-chain log spam Currently the only way that the UI can know whether connect is enabled or not is whether we get 500 errors from certain endpoints. One of these endpoints we already use, so aswell as recovering from a 500 error, we also remember that connect is disabled for the rest of the page 'session' (so until the page is refreshed), and make no further http requests to the endpoint for that specific datacenter. This means that log spam is reduced to only 1 log per page refresh/dc instead of 1 log per service navigation. Longer term we'll need some way to dynamically discover whether connect is enabled per datacenter without relying on something that will add error logs to consul.
61 lines
1.6 KiB
Gherkin
61 lines
1.6 KiB
Gherkin
@setupApplicationTest
|
|
Feature: dc / services / show-routing: Show Routing for Service
|
|
Scenario: Given a service, the Routing tab should display
|
|
Given 1 datacenter model with the value "dc1"
|
|
And 1 node models
|
|
And 1 service model from yaml
|
|
---
|
|
- Service:
|
|
Name: service-0
|
|
ID: service-0-with-id
|
|
---
|
|
When I visit the service page for yaml
|
|
---
|
|
dc: dc1
|
|
service: service-0
|
|
---
|
|
And the title should be "service-0 - Consul"
|
|
And I see routing on the tabs
|
|
Scenario: Given connect is disabled, the Routing tab should not display or error
|
|
Given 2 datacenter models from yaml
|
|
---
|
|
- dc1
|
|
- dc2
|
|
---
|
|
And 1 node models
|
|
And 2 service model from yaml
|
|
---
|
|
- Service:
|
|
Name: service-0
|
|
ID: service-0-with-id
|
|
- Service:
|
|
Name: service-1
|
|
ID: service-1-with-id
|
|
---
|
|
And the url "/v1/discovery-chain/service-0?dc=dc1&ns=@namespace" responds with from yaml
|
|
---
|
|
status: 500
|
|
body: "Connect must be enabled in order to use this endpoint"
|
|
---
|
|
When I visit the service page for yaml
|
|
---
|
|
dc: dc1
|
|
service: service-0
|
|
---
|
|
And I don't see routing on the tabs
|
|
And I don't see the "[data-test-error]" element
|
|
And I visit the service page for yaml
|
|
---
|
|
dc: dc2
|
|
service: service-1
|
|
---
|
|
And I see routing on the tabs
|
|
And I visit the service page for yaml
|
|
---
|
|
dc: dc1
|
|
service: service-0
|
|
---
|
|
Then a GET request wasn't made to "/v1/discovery-chain/service-0?dc=dc1&ns=@namespace"
|
|
And I don't see routing on the tabs
|
|
And I don't see the "[data-test-error]" element
|