consul/agent
Matt Keeler 24e11b511e
Fix issue with changing the agent token causing failure to renew the auto-encrypt certificate
The fallback method would still work but it would get into a state where it would let the certificate expire for 10s before getting a new one. And the new one used the less secure RPC endpoint.

This is also a pretty large refactoring of the auto encrypt code. I was going to write some tests around the certificate monitoring but it was going to be impossible to get a TestAgent configured in such a way that I could write a test that ran in less than an hour or two to exercise the functionality.

Moving the certificate monitoring into its own package will allow for dependency injection and in particular mocking the cache types to control how it hands back certificates and how long those certificates should live. This will allow for exercising the main loop more than would be possible with it coupled so tightly with the Agent.

# Conflicts:
#	agent/agent.go
2020-07-21 13:49:18 -04:00
..
ae agent: ensure node info sync and full sync. (#7189) 2020-02-06 15:30:58 +01:00
agentpb Refactor AutoConfig RPC to not have a direct dependency on the Server type 2020-07-09 10:37:55 -04:00
auto-config Refactor AutoConfig RPC to not have a direct dependency on the Server type 2020-07-09 10:37:55 -04:00
cache Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
cache-types Merge pull request #8211 from hashicorp/bugfix/auto-encrypt-various 2020-07-02 13:51:34 +00:00
cert-monitor Fix issue with changing the agent token causing failure to renew the auto-encrypt certificate 2020-07-21 13:49:18 -04:00
checks tests: use constructor instead init (#8024) 2020-06-04 23:12:44 +02:00
config minor: fix docstring of DNSOnlyPassing (#8318) 2020-07-16 13:48:07 +00:00
connect Fix issue with changing the agent token causing failure to renew the auto-encrypt certificate 2020-07-21 13:49:18 -04:00
consul Fix issue with changing the agent token causing failure to renew the auto-encrypt certificate 2020-07-21 13:49:18 -04:00
debug fix comment typos (#4890) 2018-11-02 12:00:39 -05:00
exec fix go vet issue 2017-10-25 19:30:35 +02:00
local Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
metadata wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
mock checks: when a service does not exists in an alias, consider it failing (#7384) 2020-06-04 12:51:23 +00:00
pool Refactor AutoConfig RPC to not have a direct dependency on the Server type 2020-07-09 10:37:55 -04:00
proxycfg Always return a gateway cluster (#8158) 2020-06-19 19:32:24 +00:00
router Merge pull request #7966 from hashicorp/pool_improvements 2020-06-05 19:03:24 +00:00
routine-leak-checker Various go routine leak fixes 2020-06-25 09:36:14 -04:00
structs Merge pull request #8218 from yurkeen/fix-dns-rcode 2020-07-01 13:13:55 +00:00
systemd
token Add ability for notifications when one of the agent tokens is updated (#8301) 2020-07-14 13:54:38 +00:00
xds [backport: 1.8.x] xds: version sniff envoy and switch regular expressions from 'regex' to 'safe_regex' on newer envoy versions (#8265) 2020-07-09 17:04:23 -05:00
acl.go Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
acl_endpoint.go test: move some test helpers over from enterprise (#7754) 2020-05-01 14:52:15 -05:00
acl_endpoint_legacy.go Use encoding/json as JSON decoder instead of mapstructure (#6680) 2019-10-29 11:13:36 -07:00
acl_endpoint_legacy_test.go ci: Add staticcheck and fix most errors 2020-06-01 10:40:04 -05:00
acl_endpoint_test.go ACL Node Identities (#7970) 2020-06-16 16:55:01 +00:00
acl_test.go Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
agent.go Fix issue with changing the agent token causing failure to renew the auto-encrypt certificate 2020-07-21 13:49:18 -04:00
agent_endpoint.go Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
agent_endpoint_test.go Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
agent_oss.go Some boilerplate to allow for ACL Bootstrap disabling configurability 2020-04-28 09:42:46 -04:00
agent_test.go Merge pull request #8211 from hashicorp/bugfix/auto-encrypt-various 2020-07-02 13:51:34 +00:00
bindata_assetfs.go update bindata_assetfs.go 2020-05-21 19:33:58 +00:00
catalog_endpoint.go Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
catalog_endpoint_test.go Add api mod support for /catalog/gateway-services (#8278) 2020-07-10 19:02:09 +00:00
check.go Sync of OSS changes to support namespaces (#6909) 2019-12-09 21:26:41 -05:00
config_endpoint.go Merge pull request #8040 from hashicorp/ingress/expose-cli 2020-06-09 19:11:51 +00:00
config_endpoint_test.go Expect default enterprise metadata in gateway tests (#7664) 2020-04-20 09:02:35 -05:00
connect_auth.go Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
connect_ca_endpoint.go connect: Add AWS PCA provider (#6795) 2019-11-21 17:40:29 +00:00
connect_ca_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
coordinate_endpoint.go Use encoding/json as JSON decoder instead of mapstructure (#6680) 2019-10-29 11:13:36 -07:00
coordinate_endpoint_test.go Merge pull request #7894 from hashicorp/dnephin/add-linter-staticcheck-1 2020-05-21 17:01:15 +00:00
denylist.go Replace whitelist/blacklist terminology with allowlist/denylist (#7971) 2020-06-01 10:40:14 -05:00
denylist_test.go Replace whitelist/blacklist terminology with allowlist/denylist (#7971) 2020-06-01 10:40:14 -05:00
discovery_chain_endpoint.go Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
discovery_chain_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
dns.go Merge pull request #8218 from yurkeen/fix-dns-rcode 2020-07-01 13:13:55 +00:00
dns_oss.go Merge pull request #7932 from hashicorp/ingress/internal-ui-endpoint-multiple-ports 2020-06-24 22:11:45 +00:00
dns_test.go Merge pull request #8218 from yurkeen/fix-dns-rcode 2020-07-01 13:13:55 +00:00
enterprise_delegate_oss.go Update to use a consulent build tag instead of just ent (#5759) 2019-05-01 11:11:27 -04:00
event_endpoint.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
event_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
federation_state_endpoint.go wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
health_endpoint.go Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
health_endpoint_test.go Move ingress param to a new endpoint (#8081) 2020-06-10 18:07:41 +00:00
http.go agent-http: cleanup: return nil instead of err (#8043) 2020-06-24 12:29:48 +00:00
http_decode_test.go Remove deadcode 2020-04-22 16:48:28 -04:00
http_oss.go Merge pull request #8169 from hashicorp/config-entry-ns 2020-06-23 11:44:57 -06:00
http_oss_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
http_register.go Merge pull request #8099 from hashicorp/gateway-services-endpoint 2020-06-12 21:15:25 +00:00
http_test.go Merge pull request #8086 from hashicorp/feature/auto-config/client-config-inject 2020-06-18 14:45:52 +00:00
intentions_endpoint.go Fix a couple bugs regarding intentions with namespaces (#7169) 2020-01-29 17:30:38 -05:00
intentions_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
keyring.go agent: sensible keyring error (#7272) 2020-02-13 20:35:09 +01:00
keyring_test.go Rename NewTestAgentWithFields to StartTestAgent 2020-03-31 17:14:55 -04:00
kvs_endpoint.go docs: add docs for kv_max_value_size (#7405) 2020-03-09 11:13:40 +01:00
kvs_endpoint_test.go Merge pull request #7894 from hashicorp/dnephin/add-linter-staticcheck-1 2020-05-21 17:01:15 +00:00
notify.go Fixes memory leak when blocking on /event/list (#4482) 2018-08-02 14:54:48 +01:00
notify_test.go Fixes memory leak when blocking on /event/list (#4482) 2018-08-02 14:54:48 +01:00
operator_endpoint.go Use encoding/json as JSON decoder instead of mapstructure (#6680) 2019-10-29 11:13:36 -07:00
operator_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
prepared_query_endpoint.go Merge pull request #8218 from yurkeen/fix-dns-rcode 2020-07-01 13:13:55 +00:00
prepared_query_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
remote_exec.go Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
remote_exec_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
retry_join.go wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
retry_join_test.go wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
service_checks_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
service_manager.go Make the Agent Cache more Context aware (#8092) 2020-06-15 15:43:32 +00:00
service_manager_test.go Rename NewTestAgentWithFields to StartTestAgent 2020-03-31 17:14:55 -04:00
session_endpoint.go Fix session backwards incompatibility with 1.6.x and earlier. 2020-03-05 15:34:55 -05:00
session_endpoint_test.go ci: Add staticcheck and fix most errors 2020-06-01 10:40:04 -05:00
sidecar_service.go wan federation via mesh gateways (#6884) 2020-03-09 15:59:02 -05:00
sidecar_service_test.go Rename NewTestAgentWithFields to StartTestAgent 2020-03-31 17:14:55 -04:00
signal_unix.go cli: forward SIGTERM to child process of 'lock' and 'watch' subcommands (#4737) 2018-10-02 15:57:21 -05:00
signal_windows.go cli: forward SIGTERM to child process of 'lock' and 'watch' subcommands (#4737) 2018-10-02 15:57:21 -05:00
snapshot_endpoint.go Remove SnapshotRPC passthrough 2020-04-13 12:32:57 -04:00
snapshot_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
status_endpoint.go Allow forwarding of some status RPCs (#6198) 2019-07-25 14:26:22 -04:00
status_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
testagent.go Allow cancelling startup when performing auto-config (#8157) 2020-06-19 19:16:20 +00:00
testagent_test.go
translate_addr.go Add the v1/catalog/node-services/:node endpoint (#7115) 2020-01-24 09:27:25 -05:00
txn_endpoint.go docs: add docs for kv_max_value_size (#7405) 2020-03-09 11:13:40 +01:00
txn_endpoint_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
ui_endpoint.go Merge pull request #7932 from hashicorp/ingress/internal-ui-endpoint-multiple-ports 2020-06-24 22:11:45 +00:00
ui_endpoint_test.go Merge pull request #7932 from hashicorp/ingress/internal-ui-endpoint-multiple-ports 2020-06-24 22:11:45 +00:00
user_event.go agent: ensure that we always use the same settings for msgpack (#7245) 2020-02-07 15:50:24 -06:00
user_event_test.go Remove name from NewTestAgent 2020-03-31 16:13:44 -04:00
util.go agent: ensure that we always use the same settings for msgpack (#7245) 2020-02-07 15:50:24 -06:00
util_test.go Fixed unstable test TestForwardSignals() 2020-04-03 14:23:03 +02:00
watch_handler.go Merge pull request #8290 from hashicorp/dnephin/watch-decode 2020-07-20 18:41:48 +00:00
watch_handler_test.go Merge pull request #8290 from hashicorp/dnephin/watch-decode 2020-07-20 18:41:48 +00:00