6705 Commits

Author SHA1 Message Date
Frank Schroeder
e0551b80a6 commands: move validate command to separate pkg 2017-10-18 00:08:45 +02:00
Frank Schroeder
cef6a80ae6 commands: move flag handling into flags pkg 2017-10-18 00:08:45 +02:00
Frank Schroeder
366ec9a565 revert monkey patch for mitchellh/cli 2017-10-18 00:08:45 +02:00
Frank Schroeder
a49711b8bf config: refactor commands to print help for flags (#3536)
This patch refactors the commands that use the mitchellh/cli library to
populate the command line flag set in both the Run() and the Help()
method. Earlier versions of the mitchellh/cli library relied on the
Run() method to populuate the flagset for generating the usage screen.
This has changed in later versions and was previously solved with a
small monkey patch to the library to restore the old behavior.

However, this makes upgrading the library difficult since the patch has
to be restored every time.

This patch addresses this by moving the command line flags into an
initFlags() method where appropriate and also moving all variables for
the flags from the Run() method into the command itself.

Fixes #3536
2017-10-18 00:08:45 +02:00
Frank Schröder
720fdbd10a Merge pull request #3582 from ryanslade/time-since
Replace time.Now().Sub(x) with time.Since(x)
2017-10-18 00:06:12 +02:00
Frank Schroeder
d461decb72 vendor: update github.com/mitchellh/mapstructure to replace monkey patch 2017-10-17 20:43:11 +02:00
Frank Schroeder
e5380410a1 vendor: update github.com/hashicorp/hcl to replace monkey patch 2017-10-17 20:43:11 +02:00
Ryan Slade
85e4aea9d1 Replace time.Now().Sub(x) with time.Since(x) 2017-10-17 20:38:24 +02:00
James Phillips
d5a889c160
Puts the tree in 1.0.1 dev mode. 2017-10-16 10:28:06 -07:00
James Phillips
e25be707f5
Bumps website version to 1.0.0. 2017-10-16 09:40:44 -07:00
James Phillips
51ea240df8
Release v1.0.0 v1.0.0 2017-10-16 09:22:40 -07:00
James Phillips
73481c6474
Puts the tree in 1.0 final release mode. 2017-10-16 09:16:52 -07:00
James Phillips
f25c66dfd9 Fixes an XSS issue with unescaped node names. (#3578)
* Fixes an XSS issue with node names in the tomography graph.

* Updates built-in static web assets.

* Updates the change log.
2017-10-16 09:12:36 -07:00
James Phillips
d5b945ccee
Adds a note about the Raft protocol not being the same as the Consul protocol. 2017-10-13 16:54:48 -07:00
James Phillips
204e6bac18
Adds a 1.0 section to the upgrade guide and cleans up the change log. 2017-10-13 16:46:36 -07:00
James Phillips
036efc663d Update sentinel.html.markdown.erb 2017-10-13 12:15:08 -07:00
csawyerYumaed
0f79922795 Update dns forwarding documentation (#3574)
Add details about setting up macOS to point to consul for services without the headache of dnsmasq, bind, etc.
2017-10-12 14:25:57 -07:00
James Phillips
c943b1b151 Adds a brief wait and poll period to update check status after a timeout. (#3573)
* Adds a brief wait and poll period to update the check status
if we get stucking waiting for the processes to terminate.

Fixes #3570

* Jumps out of timeout case and includes script output.
2017-10-12 13:49:46 -07:00
James Phillips
575d70aaa7
Cleans up some drift between the OSS and Enterprise trees. 2017-10-11 15:53:07 -07:00
Kyle Havlovitz
4ab59af09e
Clarify the docs around script check timeout behavior 2017-10-11 14:55:55 -07:00
James Phillips
323b74d727
Updates the change log. 2017-10-11 11:59:35 -07:00
Kyle Havlovitz
106b8b0b33 Kill check processes after the timeout is reached (#3567)
* Kill check processes after the timeout is reached

Kill the subprocess spawned by a script check once the timeout is reached. Previously Consul just marked the check critical and left the subprocess around.

Fixes #3565.

* Set err to non-nil when timeout occurs

* Fix check timeout test

* Kill entire process subtree on check timeout

* Add a docs note about windows subprocess termination
2017-10-11 11:57:39 -07:00
James Phillips
aaf6b17a4d
Updates the change log. 2017-10-11 07:45:42 -07:00
James Bardin
fea32fb7d7 retry locks on network errors (#3553)
* retry locks on network errors

When communicating with a local agent and watching a lock, a dropped
connection between the agent and server will show up as a server error
and immediately be retried. However if the client is connected to a
remote server, a dropped connection immediately aborts the lock.

* Updates comment about it being unsafe for writes.
2017-10-11 07:42:10 -07:00
Artiom Diomin
2e229617ce Fix example code formatting in godoc 2017-10-11 14:52:22 +02:00
Frank Schroeder
6780964eb8
config: remove redundant code 2017-10-11 10:16:21 +02:00
Frank Schroeder
0faff32c73
config: fix check for segment.port <= 0 and add test 2017-10-11 10:15:55 +02:00
James Phillips
16eb2ef014
Adds check to make sure port is given so we avoid a nil bind address. 2017-10-10 18:11:21 -07:00
James Phillips
e6c50f4a71
Removes obsolete segment stub. 2017-10-10 17:21:32 -07:00
Frank Schröder
94f58199b1 agent: add option to discard health output (#3562)
* agent: add option to discard health output

In high volatile environments consul will have checks with "noisy"
output which changes every time even though the status does not change.
Since the output is stored in the raft log every health check update
unblocks a blocking call on health checks since the raft index has
changed even though the status of the health checks may not have changed
at all. By discarding the output of the health checks the users can
choose a different tradeoff. Less visibility on why a check failed in
exchange for a reduced change rate on the raft log.

* agent: discard output also when adding a check

* agent: add test for discard check output

* agent: update docs

* go vet

* Adds discard_check_output to reloadable config table.

* Updates the change log.
2017-10-10 17:04:52 -07:00
preetapan
77c972f594 Fixes agent error handling when check definition is invalid. Distingu… (#3560)
* Fixes agent error handling when check definition is invalid. Distinguishes between empty checks vs invalid checks

* Made CheckTypes return Checks from service definition struct rather than a new copy, and other changes from code review. This also errors when json payload contains empty structs

* Simplify and improve validate method, and make sure that CheckTypes always returns a new copy of validated check definitions

* Tweaks some small style things and error messages.

* Updates the change log.
2017-10-10 16:54:06 -07:00
Frank Schröder
759ef8a1d4 config: add generic method to translate between CamelCase and snake_case (#3557)
* doc: document discrepancy between id and CheckID

* doc: document enable_tag_override change

* config: add TranslateKeys helper

TranslateKeys makes it easier to map between different representations
of internal structures. It allows to recursively map alias keys to
canonical keys in structured maps.

* config: use TranslateKeys for config file

This also adds support for 'enabletagoverride' and removes
the need for a separate CheckID alias field.

* config: remove dead code

* agent: use TranslateKeys for FixupCheckType

* agent: translate enable_tag_override during service registration

* doc: add '.hcl' as valid extension

* config: map ScriptArgs to args

* config: add comment for TranslateKeys
2017-10-10 16:40:59 -07:00
James Phillips
d3cebace7c
Updates documentation to s/script/args/ in API docs. 2017-10-10 16:37:08 -07:00
James Phillips
f71eabdd0f
Updates the change log. 2017-10-10 15:24:10 -07:00
James Phillips
bb12368eac Makes RPC handling more robust when rolling servers. (#3561)
* Adds client-side retry for no leader errors.

This paves over the case where the client was connected to the leader
when it loses leadership.

* Adds a configurable server RPC drain time and a fail-fast path for RPCs.

When a server leaves it gets removed from the Raft configuration, so it will
never know who the new leader server ends up being. Without this we'd be
doomed to wait out the RPC hold timeout and then fail. This makes things fail
a little quicker while a sever is draining, and since we added a client retry
AND since the server doing this has already shut down and left the Serf LAN,
clients should retry against some other server.

* Makes the RPC hold timeout configurable.

* Reorders struct members.

* Sets the RPC hold timeout default for test servers.

* Bumps the leave drain time up to 5 seconds.

* Robustifies retries with a simpler client-side RPC hold.

* Reverts untended delete.
2017-10-10 15:19:50 -07:00
James Phillips
d8a1ec70f8 Update compatibility.html.md 2017-10-09 14:18:37 -07:00
James Phillips
486e1a277e Update compatibility.html.md 2017-10-09 14:18:23 -07:00
Radek Simko
0075421b1a docs: agent/options gcp's project_name is optional
Per https://github.com/hashicorp/go-discover/blob/master/provider/gce/gce_discover.go#L53-L61
2017-10-08 13:08:50 +02:00
Preetha Appan
e7dc345cfa Fix unit test after dns library upgrade to account for correct data length 2017-10-06 17:40:17 -05:00
James Phillips
5f5e7529df Update raft.html.md 2017-10-06 14:38:21 -07:00
James Phillips
8a52684466
Updates the change log. 2017-10-06 14:17:21 -07:00
Preetha Appan
25caa39615 Updating CHANGELOG.md 2017-10-06 16:10:35 -05:00
preetapan
3703b05535 Merge pull request #3412 from hashicorp/jbs-autocomplete
Autocomplete support via @brianshumate
2017-10-06 15:46:26 -05:00
Preetha Appan
194b09a86b Update documentation with subcommand example 2017-10-06 15:23:43 -05:00
Preetha Appan
84ee8b8aff Autocomplete support 2017-10-06 15:05:45 -05:00
preetapan
fd51793a48 Merge pull request #3548 from hashicorp/go_retryablehttp_update
Update go-retryablehttp
2017-10-06 13:44:26 -05:00
Preetha Appan
4fef528054 Update go-retryablehttp 2017-10-06 13:42:11 -05:00
James Phillips
305578faa7
Updates the change log. 2017-10-06 11:36:03 -07:00
preetapan
285dbe2d76 Vendor update miekg/dns to pick up bugfixes and features (#3547) 2017-10-06 11:34:41 -07:00
James Phillips
467f74586f
Adds a basic Linux Vagrant setup, stolen from Nomad. 2017-10-06 08:10:12 -07:00