consul/agent/structs
R.B. Boyer 9138a97054
Fix bug in service-resolver redirects if the destination uses a default resolver. (#6122)
Also:
- add back an internal http endpoint to dump a compiled discovery chain for debugging purposes

Before the CompiledDiscoveryChain.IsDefault() method would test:

- is this chain just one resolver step?
- is that resolver step just the default?

But what I forgot to test:

- is that resolver step for the same service that the chain represents?

This last point is important because if you configured just one config
entry:

    kind = "service-resolver"
    name = "web"
    redirect {
      service = "other"
    }

and requested the chain for "web" you'd get back a **default** resolver
for "other".  In the xDS code the IsDefault() method is used to
determine if this chain is "empty". If it is then we use the
pre-discovery-chain logic that just uses data embedded in the Upstream
object (and still lets the escape hatches function).

In the example above that means certain parts of the xDS code were going
to try referencing a cluster named "web..." despite the other parts of
the xDS code maintaining clusters named "other...".
2019-07-12 12:21:25 -05:00
..
acl.go acl: a role binding rule for a role that does not exist should be ignored (#5778) 2019-05-03 14:22:44 -05:00
acl_cache.go acl: adding support for kubernetes auth provider login (#5600) 2019-04-26 14:49:25 -05:00
acl_cache_test.go acl: adding support for kubernetes auth provider login (#5600) 2019-04-26 14:49:25 -05:00
acl_legacy.go acl: ACL Tokens can now be assigned an optional set of service identities (#5390) 2019-04-26 14:48:04 -05:00
acl_legacy_test.go New ACLs (#4791) 2018-10-19 12:04:07 -04:00
acl_test.go acl: adding support for kubernetes auth provider login (#5600) 2019-04-26 14:49:25 -05:00
auto_encrypt.go tls: auto_encrypt enables automatic RPC cert provisioning for consul clients (#5597) 2019-06-27 22:22:07 +02:00
catalog.go agent: remove ConnectProxyServiceName 2018-06-14 09:41:49 -07:00
check_definition.go Support for maximum size for Output of checks (#5233) 2019-06-26 09:43:25 -06:00
check_definition_test.go agent: fix formatting 2018-11-07 02:16:03 -08:00
check_type.go Support for maximum size for Output of checks (#5233) 2019-06-26 09:43:25 -06:00
config_entry.go handle structs.ConfigEntry decoding similarly to api.ConfigEntry decoding (#6106) 2019-07-12 12:20:30 -05:00
config_entry_discoverychain.go digest the proxy-defaults protocol into the graph (#6050) 2019-07-02 11:01:17 -05:00
config_entry_discoverychain_test.go do some initial config entry graph validation during writes (#6047) 2019-07-01 15:23:36 -05:00
config_entry_test.go handle structs.ConfigEntry decoding similarly to api.ConfigEntry decoding (#6106) 2019-07-12 12:20:30 -05:00
connect.go fix typos reported by golangci-lint:misspell (#5434) 2019-03-06 11:13:28 -06:00
connect_ca.go tls: auto_encrypt enables automatic RPC cert provisioning for consul clients (#5597) 2019-06-27 22:22:07 +02:00
connect_ca_test.go connect: tame thundering herd of CSRs on CA rotation (#5228) 2019-01-22 17:19:36 +00:00
connect_proxy_config.go Envoy CLI bind addresses (#6107) 2019-07-12 12:57:31 -04:00
connect_proxy_config_test.go Implement Mesh Gateways 2019-07-01 16:28:30 -04:00
connect_test.go Added connect proxy config and local agent state setup on boot. 2018-06-14 09:41:57 -07:00
discovery_chain.go Fix bug in service-resolver redirects if the destination uses a default resolver. (#6122) 2019-07-12 12:21:25 -05:00
discovery_chain_test.go initial version of L7 config entry compiler (#5994) 2019-06-27 13:38:21 -05:00
errors.go Implement /v1/agent/health/service/<service name> endpoint (#3551) 2019-01-07 09:39:23 -05:00
intention.go Include a content hash of the intention for use during replication 2019-07-01 16:28:30 -04:00
intention_test.go agent/consul: set precedence value on struct itself 2018-06-25 12:24:16 -07:00
operator.go Move autopilot to a standalone package 2017-12-11 16:45:33 -08:00
prepared_query.go Improve Connect with Prepared Queries (#5291) 2019-02-04 09:36:51 -05:00
prepared_query_test.go agent: move agent/consul/structs to agent/structs 2017-08-09 14:32:12 +02:00
sanitize_oss.go Update to use a consulent build tag instead of just ent (#5759) 2019-05-01 11:11:27 -04:00
service_definition.go Add tagged addresses for services (#5965) 2019-06-17 10:51:50 -04:00
service_definition_test.go Add Proxy Upstreams to Service Definition (#4639) 2018-10-10 16:55:34 +01:00
snapshot.go agent: move agent/consul/structs to agent/structs 2017-08-09 14:32:12 +02:00
structs.go Implement Mesh Gateways 2019-07-01 16:28:30 -04:00
structs_filtering_test.go Implement Mesh Gateways 2019-07-01 16:28:30 -04:00
structs_test.go Envoy CLI bind addresses (#6107) 2019-07-12 12:57:31 -04:00
testing_catalog.go Implement Mesh Gateways 2019-07-01 16:28:30 -04:00
testing_connect_proxy_config.go Add -sidecar-for and new /agent/service/:service_id endpoint (#4691) 2018-10-10 16:55:34 +01:00
testing_intention.go agent: use testing intention to get valid intentions 2018-06-14 09:41:43 -07:00
testing_service_definition.go Add Proxy Upstreams to Service Definition (#4639) 2018-10-10 16:55:34 +01:00
txn.go txn: update existing txn api docs with new operations 2019-01-15 16:54:07 -08:00