+
+ {{! Make a map of key=enabled to tell us which notices are enabled }}
+ {{! The `false` here is so we can easily open all the notices up by changing to `true` }}
+ {{#let
+ (from-entries (array
+ (array 'filtered-by-acls' (or false topology.FilteredByACLs))
+ (array 'default-allow' (or false (eq dc.DefaultACLPolicy 'allow')))
+ (array 'wildcard-intention' (or false topology.wildcardIntention))
+ (array 'not-defined-intention' (or false topology.notDefinedIntention))
+ (array 'no-dependencies' (or false (and topology.noDependencies (can 'use acls'))))
+ (array 'acls-disabled' (or false (and topology.noDependencies (not (can 'use acls')))))
+ ))
+ as |notices|}}
+
+ {{! Make an array only of truthy values to we know how many notices are enabled }}
+ {{#let (without false
+ (values notices)
+ ) as |noticesEnabled|}}
+
+ {{! Render any enabled notices }}
+ {{#each-in notices as |prop enabled|}}
+ {{#if enabled}}
+
+
+
+
+
+ {{/if}}
+ {{#let
+ (compute (fn route.t 'notice.${prop}.footer'
+ (hash
+ route_intentions=(href-to 'dc.services.show.intentions')
+ prop=prop
+ htmlSafe=true
+ )
+ ))
+ as |footer|}}
+ {{#if (and disclosure.expanded (not-eq prop 'filtered-by-acls'))}}
+
+ {{footer}}
+
+ {{/if}}
+ {{/let}}
+
+
+ {{/if}}
+ {{/each-in}}
+
+ {{! If more than 2 notices are enabled let the user close them }}
+ {{#if (gt noticesEnabled.length 2)}}
+
+ {{compute (fn route.t 'notices.${expanded}'
+ (hash
+ expanded=(if disclosure.expanded 'close' 'open')
+ )
+ )}}
+
+ {{/if}}
+
+ {{/let}}
+ {{/let}}
+
+
+
+
+
{{#if config.data}}
+
+
{{/if}}
diff --git a/ui/packages/consul-ui/translations/components/consul/en-us.yaml b/ui/packages/consul-ui/translations/components/consul/en-us.yaml
index 03f3cd84cc..48975d53d2 100644
--- a/ui/packages/consul-ui/translations/components/consul/en-us.yaml
+++ b/ui/packages/consul-ui/translations/components/consul/en-us.yaml
@@ -123,34 +123,6 @@ topology-metrics:
routing-config:
tooltip: This is not a registered Consul service. It’s a routing configuration that routes traffic to real services in Consul.
text: Routing configuration
- notice:
- limited-access:
- header: Limited Access
- body: This service may have dependencies you won’t see because you don’t have access to them.
- default-allow:
- header: Intentions are set to default allow
- body: Your Intention settings are currently set to default allow. This means that this view will show connections to every service in your cluster. We recommend changing your Intention settings to default deny and creating specific Intentions for upstream and downstream services for this view to be useful.
- footer:
- name: Edit intentions
- URL: dc.services.show.intentions
- not-defined-intention:
- header: Connections are not explicitly defined
- body: There appears to be an Intention allowing traffic, but the services are unable to communicate until that connection is enabled by defining an explicit upstream or proxies are set to 'transparent' mode.
- footer: Read the documentation
- wildcard-intention:
- header: Permissive Intention
- body: One or more of your Intentions are set to allow traffic to and/or from all other services in a namespace. This Topology view will show all of those connections if that remains unchanged. We recommend setting more specific Intentions for upstream and downstream services to make this vizualization more useful.
- footer:
- name: Edit intentions
- URL: dc.services.show.intentions
- no-dependencies:
- header: No dependencies
- body: The service you are viewing currently has no dependencies. You will only see metrics for the current service until dependencies are added.
- footer: Read the documentation
- acls-disabled:
- header: Enable ACLs
- body: This connect-native service may have dependencies, but Consul isn't aware of them when ACLs are disabled. Enable ACLs to make this view more useful.
- footer: Read the documentation
popover:
l7:
header: Layer 7 permissions
diff --git a/ui/packages/consul-ui/translations/routes/en-us.yaml b/ui/packages/consul-ui/translations/routes/en-us.yaml
index 47462dc2ae..ffa2a2c94a 100644
--- a/ui/packages/consul-ui/translations/routes/en-us.yaml
+++ b/ui/packages/consul-ui/translations/routes/en-us.yaml
@@ -17,6 +17,49 @@ dc:
services:
show:
+ topology:
+ notices:
+ open: Expand Banners
+ close: Collapse Banners
+ notice:
+ filtered-by-acls:
+ header: Limited Access
+ body: This service may have dependencies you won’t see because you don’t have access to them.
+ default-allow:
+ header: Intentions are set to default allow
+ body: Your Intention settings are currently set to default allow. This means that this view will show connections to every service in your cluster. We recommend changing your Intention settings to default deny and creating specific Intentions for upstream and downstream services for this view to be useful.
+ footer: |
+
+ wildcard-intention:
+ header: Permissive Intention
+ body: One or more of your Intentions are set to allow traffic to and/or from all other services in a namespace. This Topology view will show all of those connections if that remains unchanged. We recommend setting more specific Intentions for upstream and downstream services to make this vizualization more useful.
+ footer: |
+
+ not-defined-intention:
+ header: Connections are not explicitly defined
+ body: There appears to be an Intention allowing traffic, but the services are unable to communicate until that connection is enabled by defining an explicit upstream or proxies are set to 'transparent' mode.
+ footer: |
+
+ no-dependencies:
+ header: No dependencies
+ body: The service you are viewing currently has no dependencies. You will only see metrics for the current service until dependencies are added.
+ footer: |
+
+ acls-disabled:
+ header: Enable ACLs
+ body: This connect-native service may have dependencies, but Consul isn't aware of them when ACLs are disabled. Enable ACLs to make this view more useful.
+ footer: |
+