Kyle Havlovitz
37ea20cb44
Add advanced autopilot features
2017-03-22 15:25:16 -07:00
James Phillips
77fa58bd23
Tweaks the agent leave test to patch an occasional local failure.
2017-03-22 09:56:53 -07:00
James Phillips
ab1b643630
Adds missing area API.
2017-03-21 23:11:15 -07:00
James Phillips
d68bd9cca0
Cleans up based on review feedback.
2017-03-20 16:23:40 -07:00
James Phillips
74dddf6695
Tweaks the join response to be more useful.
2017-03-16 21:01:03 -07:00
James Phillips
2d659a2c4d
Adds public API for the network area endpoints.
2017-03-16 16:42:19 -07:00
James Phillips
82b6fbd844
Adds router into RPC paths with work in progress on coordinates.
2017-03-16 16:42:18 -07:00
Kyle Havlovitz
bc0494e396
Reorganized cluster health check loop and logic
2017-03-15 18:27:17 -07:00
Kyle Havlovitz
c40279e012
Fix an issue with changing server IDs and add a few UX enhancements around autopilot features
2017-03-15 16:09:55 -07:00
Kyle Havlovitz
8130f9b1c1
Cleaned up and reorganized some autopilot-related code
2017-03-09 18:21:40 -08:00
Kyle Havlovitz
8bcab6c6d7
Add autopilot server health tracking
...
This adds two goroutines to perform autopilot tasks on the leader - one
to monitor the health of servers and another to periodically clean up
dead servers with a limit on removal count. Also adds a new http endpoint,
`/v1/operator/autopilot/health`, for querying this information through an
operator RPC endpoint.
2017-03-06 16:00:10 -08:00
Kyle Havlovitz
23c492a74e
Rename DeadServerCleanup and make wording adjustments
2017-02-28 14:45:21 -08:00
Kyle Havlovitz
6168911200
Added operator autopilot subcommands
2017-02-24 15:54:49 -08:00
Kyle Havlovitz
c9ddee1a79
Add CAS capability to autopilot config endpoint
2017-02-24 13:08:49 -08:00
Kyle Havlovitz
7d514a7ef6
Add docs and api client methods for autopilot config
2017-02-23 21:00:15 -08:00
Jeff Mitchell
726590367f
Update unix dial functions to use DialContext with new go-cleanhttp
2017-02-10 21:11:21 -05:00
Kyle Havlovitz
35d99a81ac
Update docs and give better error for unknown client scheme
2017-02-10 19:55:54 -05:00
Kyle Havlovitz
91e960832f
Allow prefixing -http-addr with http/https schemes
2017-02-10 18:25:46 -05:00
Kyle Havlovitz
a64c5e69a3
Cleanup and formatting adjustments
2017-02-09 20:49:17 -05:00
Kyle Havlovitz
d3b24d2d12
Convert keyring command to use base.Command
2017-02-08 18:25:47 -05:00
James Phillips
aef0a68201
Lets the leave unit test proceed even after an EOF.
2017-01-26 22:22:18 -08:00
Kyle Havlovitz
cc271aa436
Merge branch 'master' into f-prepared-query-nodemeta
2017-01-23 20:17:48 -05:00
Kyle Havlovitz
3cd054e81f
Add tests for node meta in prepared queries and update docs
2017-01-23 19:17:30 -05:00
James Phillips
55cd1d975c
Adds catalog support for node IDs.
2017-01-18 14:26:42 -08:00
James Phillips
96bff003b7
Adds basic support for node IDs.
2017-01-17 22:47:59 -08:00
Kyle Havlovitz
e37f25dc02
Add node metadata filtering to remaining health/catalog endpoints
2017-01-13 20:08:43 -05:00
Kyle Havlovitz
2d03978139
Fix formatting
2017-01-11 20:44:22 -05:00
Kyle Havlovitz
15f008b3e3
Update client api and docs for node metadata
2017-01-11 19:28:58 -05:00
James Phillips
99a5ae2737
Bans anonymous queries that aren't tied to a session.
...
This gets us coverage of PQ creation under the existing service
policy or the soon-to-be-added session policy.
2016-12-12 14:52:27 -08:00
James Phillips
08c648f976
Merge pull request #2531 from alicebob/txntypes
...
fix KVOp types
2016-12-01 07:41:10 -08:00
Kyle Havlovitz
dd05afb32e
Add reload/leave http endpoints ( #2516 )
2016-11-30 13:29:42 -05:00
Seth Vargo
9f652c2690
Return the correct type
2016-11-29 21:17:00 -05:00
Seth Vargo
90f80056dd
Merge pull request #2544 from hashicorp/sethvargo/best_status
...
Add an API method for determining the best status
2016-11-29 19:07:52 -05:00
James Phillips
d97eb758c6
Merge pull request #2530 from coffeehc/master
...
adapt to server's checker field TLSSkipVerify type
2016-11-29 16:00:21 -08:00
Seth Vargo
2542c92b59
Do not log
2016-11-29 18:55:34 -05:00
Seth Vargo
1c55429a38
Add an API method for determining the best status
...
Given a list of HealthChecks, this determines the "best" status for the
collective group. This is useful for nodes and services, which may have
multiple checks associated with them.
2016-11-29 18:41:46 -05:00
Kyle Havlovitz
475408633a
Add QueryOptions to api package's monitor
2016-11-28 18:36:26 -05:00
Kyle Havlovitz
d91854f3b0
Add monitor http endpoint
2016-11-28 18:36:26 -05:00
Harmen
f31f5f5962
fix KVOp types
2016-11-24 20:43:41 +01:00
James Phillips
7dc41b1c1f
Runs `go fmt`.
2016-11-22 17:49:48 -08:00
Kyle Havlovitz
66dea6951a
Fix keyring doc method wording
2016-11-22 20:10:43 -05:00
Kyle Havlovitz
79f339b5dc
Combine keyring endpoints into one
2016-11-22 20:10:43 -05:00
Kyle Havlovitz
2d37a07476
Add keyring http endpoints
2016-11-22 20:10:43 -05:00
coffee
1187daa15b
adapt to server's checker field TLSSkipVerify type
2016-11-21 18:02:38 +08:00
James Phillips
5a643c6e3f
Merge pull request #2366 from aksentyev/master
...
api client: CatalogService added fields CreateIndex, ModifyIndex
2016-11-17 16:38:39 -08:00
James Phillips
b17907f06a
Moves index fields to the bottom of the structure.
2016-11-17 16:38:30 -08:00
James Phillips
fde94fb537
Adds notes field to API.
...
Closes #2336 .
2016-11-17 16:33:50 -08:00
James Phillips
b672fea37b
Merge pull request #2238 from hasyimibhar/master
...
Remove duplicated environment variables
2016-11-17 16:18:02 -08:00
Kyle Havlovitz
07eeef6f1f
Trim leading slash on key to avoid redirect (golang/go#4800) ( #2476 )
2016-11-04 21:55:10 -07:00
Kyle McCullough
697ea0f8eb
Add setting to skip ssl certificate verification for HTTP checks ( #1984 )
...
* http check: add setting to skip ssl certificate verification
* update http check documentation
* fix typo in documentation
* Add TLSSkipVerify to agent api
2016-11-03 13:17:30 -07:00
Mike Cowgill
ace3b46432
Delete prepared query using WriteOptions ( #2417 )
2016-11-03 15:54:07 -04:00
Kyle Havlovitz
d5ee327fea
More flaky unit test fixes ( #2449 )
...
* More flaky unit test fixes
* Raise some test timeouts that were too low
2016-10-31 09:59:20 -07:00
James Phillips
bc29610124
Adds support for snapshots and restores. ( #2396 )
...
* Updates Raft library to get new snapshot/restore API.
* Basic backup and restore working, but need some cleanup.
* Breaks out a snapshot module and adds a SHA256 integrity check.
* Adds snapshot ACL and fills in some missing comments.
* Require a consistent read for snapshots.
* Make sure snapshot works if ACLs aren't enabled.
* Adds a bit of package documentation.
* Returns an empty response from restore to avoid EOF errors.
* Adds API client support for snapshots.
* Makes internal file names match on-disk file snapshots.
* Adds DC and token coverage for snapshot API test.
* Adds missing documentation.
* Adds a unit test for the snapshot client endpoint.
* Moves the connection pool out of the client for easier testing.
* Fixes an incidental issue in the prepared query unit test.
I realized I had two servers in bootstrap mode so this wasn't a good setup.
* Adds a half close to the TCP stream and fixes panic on error.
* Adds client and endpoint tests for snapshots.
* Moves the pool back into the snapshot RPC client.
* Adds a TLS test and fixes half-closes for TLS connections.
* Tweaks some comments.
* Adds a low-level snapshot test.
This is independent of Consul so we can pull this out into a library
later if we want to.
* Cleans up snapshot and archive and completes archive tests.
* Sends a clear error for snapshot operations in dev mode.
Snapshots require the Raft snapshots to be readable, which isn't supported
in dev mode. Send a clear error instead of a deep-down Raft one.
* Adds docs for the snapshot endpoint.
* Adds a stale mode and index feedback for snapshot saves.
This gives folks a way to extract data even if the cluster has no
leader.
* Changes the internal format of a snapshot from zip to tgz.
* Pulls in Raft fix to cancel inflight before a restore.
* Pulls in new Raft restore interface.
* Adds metadata to snapshot saves and a verify function.
* Adds basic save and restore snapshot CLI commands.
* Gets rid of tarball extensions and adds restore message.
* Fixes an incidental bad link in the KV docs.
* Adds documentation for the snapshot CLI commands.
* Scuttle any request body when a snapshot is saved.
* Fixes archive unit test error message check.
* Allows for nil output writers in snapshot RPC handlers.
* Renames hash list Decode to DecodeAndVerify.
* Closes the client connection for snapshot ops.
* Lowers timeout for restore ops.
* Updates Raft vendor to get new Restore signature and integrates with Consul.
* Bounces the leader's internal state when we do a restore.
2016-10-25 19:20:24 -07:00
Kyle Havlovitz
114ee0755a
Fix race condition in TestClient_WatchList and TestClient_WatchGet
2016-10-25 17:48:11 -07:00
James Phillips
14c90e9aa6
Merge pull request #2382 from zaunerc/master
...
Add info about return values for function Get().
2016-10-20 09:40:58 -07:00
James Phillips
0f35f08b6a
Adds comment about SessionOpts.
2016-10-05 17:53:27 -07:00
James Phillips
dc60027e6d
Merge pull request #2372 from HotelsDotCom/flexible-lock-sessions
...
More flexible Session configuration when using api.Lock
2016-10-05 17:52:12 -07:00
Christoph Zauner
79287ef280
Add info about return values for function Get().
2016-10-03 08:24:04 +00:00
Maxim Ivanov
d45b0cc68c
More flexible Session configuration when using api.Lock
2016-09-29 14:07:54 +01:00
aksentyev
8d69db7a89
CreateIndex, ModifyIndex added for CatalogService
2016-09-28 00:40:25 +03:00
Seth Vargo
b8d055dcad
Fix typo
2016-09-26 16:06:56 -07:00
Seth Vargo
7843f284e0
Rename session name to session ID
2016-09-26 16:06:55 -07:00
Seth Vargo
81a28ffd38
Update ModifyIndex comment
2016-09-26 16:06:55 -07:00
Seth Vargo
50424694fc
Add documentation to KVPair
...
Based on discussions with @slackpad, some of the values in the KVPair are
ReadOnly. This commit updates the docs to reflect that.
2016-09-26 16:06:52 -07:00
James Phillips
5e4db081f7
Removes Raft types from public API interface.
...
This will cause a lot of breakage because we've currently vendored a
branch of the Raft library.
2016-08-30 14:59:16 -07:00
James Phillips
6be1e07fec
Makes the Raft configuration API easier to consume.
2016-08-30 11:30:56 -07:00
James Phillips
209f003b12
Fixes a stale comment.
2016-08-30 00:10:46 -07:00
James Phillips
1b7a16b7d3
Adds new consul operator endpoint, CLI, and ACL and some basic Raft commands.
2016-08-30 00:02:50 -07:00
James Phillips
0bdbdf1ba8
Merge pull request #2226 from abhinavdahiya/rm-health-unknown
...
Fixes #1775 ; Removes 'unknown' state
2016-08-17 17:51:04 -07:00
James Phillips
db9a72dde1
Merge branch 'master' into f-deregister-critical
2016-08-16 12:53:21 -07:00
James Phillips
bc333335be
Adds an `X-Consul-Translate-Addresses` to signal translation is enabled.
2016-08-16 11:31:41 -07:00
James Phillips
742fcf7a24
Adds missing TaggedAddress structures to API client.
2016-08-16 10:30:30 -07:00
James Phillips
f517f9ed0d
Fixes a typo and adds an admonition about only being in Consul 0.7+.
2016-08-16 09:27:20 -07:00
James Phillips
b4f981c837
Adds ability to deregister a service based on critical check state longer than a timeout.
2016-08-16 01:00:26 -07:00
Hasyimi Bahrudin
818d2f1d64
Add api environment variables as constants for consistency
2016-08-03 14:40:31 +08:00
Hasyimi Bahrudin
b2ad8114fe
Remove redundant hardcoded environment variables
...
The following hardcoded environment variables are removed:
* CONSUL_RPC_ADDR
* CONSUL_HTTP_ADDR
2016-08-03 14:40:26 +08:00
Jeff Mitchell
c878aba90c
Use header to send Consul token rather than query param.
2016-08-02 16:54:59 -04:00
Abhinav Dahiya
9dc52449e3
Fixes #1775 ; Removes 'unknown' state
...
Signed-off-by: Abhinav Dahiya <abhinavdtu2012@gmail.com>
2016-07-30 19:33:14 +05:30
Ryan Uber
6deb17d069
api: add query templates
2016-07-02 16:05:41 -07:00
Ryan Uber
d768de2ed4
api: add Near parameter to PQ's
2016-07-01 16:41:46 -07:00
James Phillips
a11f32a1da
Adds a get-tree verb to KV transaction operations.
2016-05-13 16:57:39 -07:00
James Phillips
2649a6336e
Adds a read-only optimized path for transactions.
2016-05-13 00:34:05 -07:00
James Phillips
88b1c7d054
Makes get fail a transaction if the key doesn't exist.
2016-05-11 14:18:31 -07:00
James Phillips
3d35acaa90
De-nests the KV output structure (removes DirEnt member).
2016-05-11 13:48:03 -07:00
James Phillips
04a13ec3d7
Switches to "KV" instead of "KV" for the KV operations.
2016-05-11 10:58:27 -07:00
James Phillips
dc662f7e35
Refactors TxnRequest/TxnResponse into a form that will allow non-KV ops.
...
This isn't needed/used yet, but it's a good hook to get in there so we
can add more atomic operations in the future. The Go API hides this detail
so that feels like a KV-specific API. The implications on the REST API are
pretty minimal.
2016-05-11 01:39:10 -07:00
James Phillips
d980cbcd9d
Moves txn code into a new endpoint, not specific to KV.
2016-05-10 21:58:02 -07:00
James Phillips
c1db39fe85
Adds type for API ops and an example transaction.
2016-05-10 13:36:48 -07:00
James Phillips
471160d8f0
Performs basic plumbing of KVS transactions through all the layers.
2016-05-09 22:15:49 -07:00
Sean Chittenden
0f45d1b76d
Correct a small typo
2016-04-23 20:18:19 -07:00
Sean Chittenden
5bc4a2c2ab
consul/ uses structs.Health*, the api uses api.Health*
2016-04-23 16:06:58 -07:00
Sean Chittenden
65f9017c63
Update Check API to use constants
...
Use constants where appropriate to advocate their use. Also add a deprecation notice re: `updateTTL`.
2016-04-23 16:01:59 -07:00
James Phillips
98140b4cf0
Merge pull request #1876 from hashicorp/f-tls-helper
...
Adds TLS config helper to API client.
2016-03-24 11:34:24 -07:00
James Phillips
c64f9c13d9
Improves the comment for the Address field.
2016-03-24 11:33:44 -07:00
Diptanu Choudhury
ad085de7b7
Added some constants in the api for check health statuses
2016-03-24 11:26:07 -07:00
James Phillips
512cb6ebf7
Adds TLS config helper to API client.
2016-03-24 11:24:18 -07:00
James Phillips
1cf1664392
Switches default for API client to pooled connections.
2016-03-10 12:29:50 -08:00
James Phillips
a126240a12
Adds support for new PUT API for checks.
2016-03-04 15:18:25 -08:00
James Phillips
551a4fc031
Adds support for EnableTagOverride to the API client.
2016-02-16 11:45:29 -08:00
Seth Vargo
dc9131a732
Use HTTPS + www. where appropriate
2016-01-13 17:44:01 -05:00