Armon Dadgar
a8a5905d21
consul: less aggressive deadlock timer. Fixes #389
2014-10-14 12:00:25 -07:00
Armon Dadgar
5c46544e7e
consul: Improve variable name
2014-10-14 11:04:43 -07:00
Armon Dadgar
e33b6683aa
consul: Reap left members ignoring state. Fixes #371
2014-10-14 11:02:26 -07:00
Armon Dadgar
8afbab60cb
consul: Log why invalidation happened. Fixes #390
2014-10-14 10:54:57 -07:00
Armon Dadgar
b6c5d77cf8
consul: Fixing graceful leave of current leader. Fixes #360 .
2014-10-13 22:14:43 -07:00
Armon Dadgar
e51f9da84b
consul: Deprecate ACLForceSet
2014-10-09 12:28:07 -07:00
Armon Dadgar
1177a9bf11
consul: Fix non-deterministic ACL IDs
2014-10-09 12:23:32 -07:00
Armon Dadgar
a80478594a
consul: Fix non-deterministic session IDs
2014-10-09 11:54:47 -07:00
Armon Dadgar
daa32dd6f8
consul: don't close a nil connection
2014-10-02 10:26:25 -07:00
Armon Dadgar
99d39db982
agent: First pass at multi-DC support
2014-08-28 15:00:49 -07:00
Armon Dadgar
9eddff083a
consul: Testing user events
2014-08-26 19:26:55 -07:00
Armon Dadgar
1227e77f6d
consul: Adding user event name tests
2014-08-26 19:20:02 -07:00
Armon Dadgar
3a1d686444
consul: Adding user event handler for callbacks
2014-08-26 19:04:07 -07:00
Armon Dadgar
b1cf52db01
consul: expose UserEvent from Serf
2014-08-26 18:50:03 -07:00
Armon Dadgar
ce98b0abbd
consul: Deny delete anonymous or update of root policies
2014-08-22 14:55:09 -07:00
Armon Dadgar
597cd12e97
consul: Ensure node/service/check registration is in a single txn
2014-08-22 12:38:33 -07:00
Armon Dadgar
54ed1ec834
consul: fixing a unit test
2014-08-22 12:34:31 -07:00
Armon Dadgar
a078e4d6f4
consul: Refactor txn handling in state store
2014-08-22 12:27:12 -07:00
Armon Dadgar
1f845c995a
consul: Ensure authoritative cache is purged after update
2014-08-18 15:46:59 -07:00
Armon Dadgar
6492f06a3e
consul: Provide ETag to avoid expensive policy fetch
2014-08-18 15:46:59 -07:00
Armon Dadgar
7473bd2fc9
consul: ACL enforcement for KV updates
2014-08-18 15:46:24 -07:00
Armon Dadgar
ea015710e9
consul: ACL enforcement for key reads
2014-08-18 15:46:24 -07:00
Armon Dadgar
7299ef1a82
consul: Filter keys, refactor to interface
2014-08-18 15:46:24 -07:00
Armon Dadgar
d38fd8eb1d
consul: Helpers to filter on ACL rules
2014-08-18 15:46:24 -07:00
Armon Dadgar
17ee7f5057
consul: Starting token enforcement
2014-08-18 15:46:23 -07:00
Armon Dadgar
5561148c8e
consul: Prevent resolution of root policy
2014-08-18 15:46:23 -07:00
Armon Dadgar
8c5bb94c74
consul: Resolve parent ACLs
2014-08-18 15:46:23 -07:00
Armon Dadgar
8153537e86
consul: Support management tokens
2014-08-18 15:46:23 -07:00
Armon Dadgar
9e16caa497
consul: Adding some metrics for ACL usage
2014-08-18 15:46:23 -07:00
Armon Dadgar
5da5df716d
consul: Create anonymous and master tokens
2014-08-18 15:46:22 -07:00
Armon Dadgar
bbde4beefd
consul: Testing down policies and multi-DC
2014-08-18 15:46:22 -07:00
Armon Dadgar
846cc66e6d
consul: Testing ACL resolution
2014-08-18 15:46:22 -07:00
Armon Dadgar
61b80e912c
consul: Use Etag for policy caching
2014-08-18 15:46:22 -07:00
Armon Dadgar
db8f896c58
consul: Support conditional policy fetch
2014-08-18 15:46:22 -07:00
Armon Dadgar
edcd69019c
consul: Verify compilation of rules
2014-08-18 15:46:22 -07:00
Armon Dadgar
9a4778b7d3
consul: Enable ACL lookup
2014-08-18 15:46:22 -07:00
Armon Dadgar
bd124a8da3
consul: Pulling in ACLs
2014-08-18 15:46:21 -07:00
Armon Dadgar
6f7bf36ee9
agent: ACL endpoint tests
2014-08-18 15:46:21 -07:00
Armon Dadgar
bdf9516f96
consul: ACL Endpoint tests
2014-08-18 15:46:21 -07:00
Armon Dadgar
ea31f37dd6
consul: Adding ACL endpoint
2014-08-18 15:46:21 -07:00
Armon Dadgar
b41e36868e
consul: register the ACL queries
2014-08-18 15:46:21 -07:00
Armon Dadgar
8a3a0faacf
consul: FSM support for ACLsg
2014-08-18 15:46:21 -07:00
Armon Dadgar
101d7da90a
consul: Adding ACLs to the state store
2014-08-18 15:46:21 -07:00
Armon Dadgar
da52fda65f
consul: ACL structs
2014-08-18 15:46:21 -07:00
Armon Dadgar
ca6a8aef55
agent: Adding ACL master token
2014-08-18 15:46:20 -07:00
Armon Dadgar
ebae394863
consul: ACL setting passthrough
2014-08-18 15:46:20 -07:00
William Tisäter
90816cca98
Run `go fmt`
2014-07-24 01:09:55 +02:00
William Tisäter
78a69b61a3
Don't override `ServiceTags`
2014-07-23 23:42:22 +02:00
William Tisäter
31037338a3
Change order of fixtures
2014-07-23 23:42:22 +02:00
William Tisäter
9dc67edf7f
Make service tag filter case-insensitive
2014-07-23 23:42:22 +02:00
William Tisäter
2727c158a6
Make service index case-insensitive
2014-07-23 23:42:22 +02:00
William Tisäter
ff93acda28
Lowercase index key and lookup value if flag is set
2014-07-23 23:42:22 +02:00
William Tisäter
f7263e8e7a
Add case-insensitive flag to `MDBIndex`
2014-07-23 23:42:21 +02:00
William Tisäter
75e631ee94
Add helper for lowercase list of strings
2014-07-23 23:42:21 +02:00
Armon Dadgar
bf26a9160f
consul: Defer serf handler until initialized. Fixes #254 .
2014-07-22 09:36:58 -04:00
Armon Dadgar
020802f7a5
Merge pull request #233 from nelhage/tls-no-subjname
...
Restore the 0.2 TLS verification behavior.
2014-07-01 13:41:00 -07:00
Nelson Elhage
627b2e455f
Add some basic smoke tests for wrapTLSclient.
...
Check the success case, and check that we reject a self-signed
certificate.
2014-06-29 18:11:32 -07:00
Nelson Elhage
0a2476b20e
Restore the 0.2 TLS verification behavior.
...
Namely, don't check the DNS names in TLS certificates when connecting to
other servers.
As of golang 1.3, crypto/tls no longer natively supports doing partial
verification (verifying the cert issuer but not the hostname), so we
have to disable verification entirely and then do the issuer
verification ourselves. Fortunately, crypto/x509 makes this relatively
straightforward.
If the "server_name" configuration option is passed, we preserve the
existing behavior of checking that server name everywhere.
No option is provided to retain the current behavior of checking the
remote certificate against the local node name, since that behavior
seems clearly buggy and unintentional, and I have difficulty imagining
it is actually being used anywhere. It would be relatively
straightforward to restore if desired, however.
2014-06-28 13:32:42 -07:00
Armon Dadgar
80b86c9ee9
Rename Expect to BootstrapExpect. Fixes #223 .
2014-06-19 17:08:55 -07:00
Armon Dadgar
406d19f483
consul: Minor cleanups
2014-06-18 16:15:28 -07:00
Robert Xu
fff6546c75
Minor cleanup to logic and testsuite.
...
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 18:47:05 -04:00
Robert Xu
a2fea2ce55
Utilise new raft.SetPeers() method, move expect logic to leader.go.
...
This way, we don't use EnableSingleMode, nor cause chaos adding peers.
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 12:03:30 -04:00
Robert Xu
31c392813c
Add expect bootstrap '-expect=n' mode.
...
This allows for us to automatically bootstrap a cluster of nodes after
'n' number of server nodes join. All servers must have the same 'n' set, or
they will fail to join the cluster; all servers will not join the peer set
until they hit 'n' server nodes.
If the raft commit index is not empty, '-expect=n' does nothing because it
thinks you've already bootstrapped.
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-16 17:40:33 -04:00
Armon Dadgar
91373968a8
Adding server_name configuration for TLS
2014-06-13 11:10:27 -07:00
Robert B Gordon
987c078957
Seems like we should actually check the reference count.
2014-06-13 11:25:01 -05:00
Armon Dadgar
ea054b8847
consul: Start RPC before Raft, wait to accept connecitons
2014-06-11 10:17:58 -07:00
Armon Dadgar
1812eedad9
consul: start RPC after fully initialized. Fixes #160
2014-06-11 09:46:44 -07:00
Armon Dadgar
2e18774c02
consul: Avoid network for server RPC. Fixes #148 .
2014-06-10 19:12:36 -07:00
Armon Dadgar
cae158b310
consul: Provide output for serfHealth check. Fixes #176 .
2014-06-09 16:07:22 -07:00
Armon Dadgar
9e925bf458
consul: Adding support for optional session name
2014-06-09 11:42:28 -07:00
Armon Dadgar
06cd40d1e7
consul: fixing use of nil log output. Fixes #203
2014-06-09 11:16:53 -07:00
Armon Dadgar
c656bbfbcf
Rename shared msgpack handle
2014-06-08 14:02:42 -07:00
Andrew M Bursavich
d209517d50
reuse codec.MsgpackHandle
2014-06-07 01:13:38 -07:00
Armon Dadgar
b5bd20634a
consul: Gossip the build using Serf
2014-06-06 15:36:40 -07:00
Armon Dadgar
d0d85b461c
consul: Sort datacenter list. Fixes #198
2014-06-06 14:12:40 -07:00
William Tisäter
7b4c7f3f63
Log peers when `TestLeader_LeftServer` fail
2014-05-30 21:18:37 +02:00
William Tisäter
2c13f8a03e
Re-configure `LeaderLeaseTimeout` to pass validation
2014-05-30 20:57:39 +02:00
Armon Dadgar
890d4d771f
consul: Ensure clients also implement LocalMember
2014-05-29 11:21:56 -07:00
Armon Dadgar
f9766541e1
Merge pull request #173 from hashicorp/f-agent-self
...
Add `/v1/agent/self` and return local agent config
2014-05-29 11:18:19 -07:00
Armon Dadgar
09a988e8d4
consul: Conn pool clean, spare existing streams
2014-05-28 16:55:39 -07:00
Armon Dadgar
319ab05b8c
consul: Provide logger to yamux
2014-05-28 16:32:25 -07:00
Armon Dadgar
6b2fe4869b
consul: Suppress messages about closed connections
2014-05-28 16:32:25 -07:00
Armon Dadgar
d4a62e7c0d
consul: ensure connections are properly closed
2014-05-28 16:32:24 -07:00
Armon Dadgar
74452a5ae0
consul: Add new protocol version for yamux
2014-05-28 16:32:24 -07:00
Armon Dadgar
313f79913e
consul: Pass protocol version for leader forwarding
2014-05-28 16:32:24 -07:00
Armon Dadgar
345efd74e4
consul: remove explicit leave, use reconciliation
2014-05-28 16:32:24 -07:00
Armon Dadgar
d857c63f41
consul: Server processes local Serf join
2014-05-28 16:32:24 -07:00
Armon Dadgar
bf25792e2f
consul: Fix client server reaping
2014-05-28 16:32:24 -07:00
Armon Dadgar
589105eee4
consul: Store the protocol version for a server
2014-05-28 16:32:24 -07:00
Armon Dadgar
c8831db91c
consul: Adding Addr to serverParts
2014-05-28 16:32:24 -07:00
Armon Dadgar
a79c3d2103
consul: Pool client connections, support for yamux connections
2014-05-28 16:32:24 -07:00
Armon Dadgar
8e636ef340
consul: Support for incoming Yamux connections
2014-05-28 16:32:24 -07:00
Armon Dadgar
c98736b8ae
Merge pull request #174 from nelhage/multi-ca-cert
...
Allow multiple PEM-encoded certificates in the ca_file.
2014-05-27 10:47:41 -07:00
William Tisäter
a028c3ae93
Add `/v1/agent/self` and return local agent config
2014-05-27 01:15:33 +02:00
William Tisäter
95e7752721
Wait for joining member in `TestClient_JoinLAN`
2014-05-27 00:55:20 +02:00
William Tisäter
405dfd99c1
Fix tests on Go 1.3 and greater
...
Go 1.3 and greater require ServerName or InsecureSkipVerify to be set.
https://codereview.appspot.com/67010043/
2014-05-27 00:47:47 +02:00
William Tisäter
0ddc86bbcc
Revert "Remove `WaitForResult` from two failing tests"
...
This reverts commit f0842409cde194ce2102ff2baf3de821cb6ac9d5.
2014-05-26 23:49:23 +02:00
William Tisäter
93e89b8148
Remove TODO comments
2014-05-26 23:44:46 +02:00
William Tisäter
f990e9fcb2
Remove `WaitForResult` from two failing tests
2014-05-26 23:44:37 +02:00
Nelson Elhage
7d4824ade7
Allow multiple PEM-encoded certificates in the ca_file.
...
fixes #167
2014-05-26 10:58:57 -07:00
Armon Dadgar
5c90e9b43e
consul: Suppress error if connection is closed
2014-05-23 16:28:55 -07:00
Armon Dadgar
d42474a7cb
Support wildcard for check lookup. Fixes #152
2014-05-21 12:45:12 -07:00
Armon Dadgar
5fa10c912e
Support rejoin after leave. Fixes #110 .
2014-05-21 12:32:24 -07:00
Armon Dadgar
3b0d3b76c2
consul: Adding support for lock-delay in sessions
2014-05-20 16:25:29 -07:00
Armon Dadgar
9470f9a5a2
gofmt
2014-05-20 16:25:29 -07:00
Armon Dadgar
d5b1330227
agent: First pass at session endpoints
2014-05-20 16:25:29 -07:00
Armon Dadgar
e0c791f305
consul: Adding tests for session endpoints
2014-05-20 16:25:29 -07:00
Armon Dadgar
e58e9bceb0
consul: First pass at Session RPC endpoints
2014-05-20 16:25:29 -07:00
Armon Dadgar
2fbcc07e1b
consul: Testing FSM snapshot of sessions
2014-05-20 16:25:29 -07:00
Armon Dadgar
55ce278223
consul: Testing KVS Lock/Unlock in FSM
2014-05-20 16:25:29 -07:00
Armon Dadgar
bfd008a6da
consul: FSM tests for session
2014-05-20 16:25:28 -07:00
Armon Dadgar
6ed9c4bdb6
consul: Adding support for sessions to FSM
2014-05-20 16:25:28 -07:00
Armon Dadgar
8baa83a668
consul: Adding SessionList to snapshot
2014-05-20 16:25:28 -07:00
Armon Dadgar
994a149965
consul: Session invalidation releases locks
2014-05-20 16:25:28 -07:00
Armon Dadgar
cd7e3967be
consul: Support KVSLock and KVSUnlock
2014-05-20 16:25:28 -07:00
Armon Dadgar
35996042ae
consul: Switch notify to using txn defer
2014-05-20 16:25:28 -07:00
Armon Dadgar
679e4e6e70
consul: Adding session invalidation
2014-05-20 16:25:28 -07:00
Armon Dadgar
2e3d3ec2f8
consul: Adding Defer to MDBTxn
2014-05-20 16:25:28 -07:00
Armon Dadgar
a1b59bcaf9
consul: Adding session tests
2014-05-20 16:25:28 -07:00
Armon Dadgar
f7edd7763b
consul: Adding SessionDestroy
2014-05-20 16:25:28 -07:00
Armon Dadgar
0491e58fb9
consul: Adding session lookup methods
2014-05-20 16:25:27 -07:00
Armon Dadgar
7c38c1ca85
consul: Adding SessionCreate and SessionRestore
2014-05-20 16:25:27 -07:00
Armon Dadgar
00477dca21
consul: Adding util method to generate a UUID
2014-05-20 16:25:27 -07:00
Armon Dadgar
a5c60eb556
consul: Adding new session tables
2014-05-20 16:25:27 -07:00
Armon Dadgar
59c0d35184
Merge pull request #145 from abursavich/master
...
consul: use empty slice instead of nil slice when no tags exist for /v1/catalog/services
2014-05-19 15:37:43 -07:00
Armon Dadgar
6c0479f082
Merge pull request #136 from hashicorp/f-testutil-package
...
WIP: Proof of concept using `WaitForResult` in tests
2014-05-16 15:03:50 -07:00
Armon Dadgar
f8898dce6e
consul: Disable conflict resolution. See #97 .
2014-05-16 14:11:53 -07:00
Armon Dadgar
2d8b1f5b6f
consul: Avoid name conflict on WAN ring. Fixes #158 .
2014-05-16 14:07:53 -07:00
Mitchell Hashimoto
ec547d5b99
command/agent: find proper private IP on Windows
...
/cc @armon
2014-05-15 11:27:30 -07:00
Armon Dadgar
c54f53eaf7
consul: Remove RPC client tracking. Fixes #149 .
2014-05-14 17:34:24 -07:00
Andrew M Bursavich
1dd3dfe801
use empty slice instead of nil slice when no tags exist for service
2014-05-13 00:18:36 -07:00
Armon Dadgar
813ebf0b0c
consul: Adding a Raft command enqueue limit
2014-05-09 19:18:06 -07:00
William Tisäter
2f23eb42ea
Add TODOs for failing tests
2014-05-09 11:38:29 +02:00
William Tisäter
e749e2ebc9
Wait wrap tests in `TestServer_JoinLAN`
2014-05-09 03:41:47 +02:00
William Tisäter
31c962f2a9
Sleep since no obvious way to wait for shutdown
2014-05-09 03:24:13 +02:00
William Tisäter
16bfc8fd1d
Fix race condition in `TestLeader_RegisterMember`
2014-05-09 03:05:38 +02:00
William Tisäter
a211e1164c
Fix race condition in `TestCatalogListNodes`
2014-05-09 03:00:56 +02:00
William Tisäter
30f8573c78
Change blocking call sleep time
2014-05-09 02:36:25 +02:00
William Tisäter
cb54c4cb49
Remove all sleeps from `client_test.go`
2014-05-09 02:29:51 +02:00
William Tisäter
9b6b75f77c
Fix race condition in `TestLeader_FailedMember`
2014-05-09 02:14:39 +02:00
William Tisäter
d6f3dc510c
Remove all sleeps from `internal_endpoint_test.go`
2014-05-09 02:11:40 +02:00
William Tisäter
e27f89fec1
Remove all sleeps from `kvs_endpoint_test.go`
2014-05-09 02:09:53 +02:00
William Tisäter
44d3985ea8
Remove all sleeps from `leader_test.go`
2014-05-09 02:04:52 +02:00
William Tisäter
b108af2dd3
Remove all sleeps from `server_test.go`
2014-05-09 01:38:58 +02:00
William Tisäter
5a56d8a2c6
Remove all sleeps from `status_endpoint_test.go`
2014-05-09 01:23:54 +02:00
William Tisäter
d0b38ad641
Fix imports in `health_endpoint_test.go`
2014-05-09 01:21:13 +02:00
William Tisäter
89c018b681
Remove all sleeps from `catalog_endpoint_test.go`
2014-05-09 01:18:35 +02:00
William Tisäter
c391c5bfcb
Remove all sleeps from `health_endpoint_test.go`
2014-05-09 01:18:08 +02:00
William Tisäter
1ee709ba38
Require datacenter argument for `WaitForLeader`
2014-05-09 01:17:35 +02:00
William Tisäter
463f85c3c7
Move argument structs back in original position
2014-05-07 23:51:15 +02:00