Frank Schroeder
dba20d02eb
test: run command tests in parallel
2017-05-31 00:29:25 +02:00
Frank Schroeder
48bff52614
test: address pull request comments
2017-05-31 00:29:25 +02:00
Frank Schroeder
b9ae289e34
test: remove ACL options from default test config
2017-05-31 00:29:25 +02:00
Frank Schroeder
e8651261f9
test: allocate ports in blocks of 10
2017-05-31 00:29:24 +02:00
Frank Schroeder
26474ce9c2
test: refactor command tests to use TestAgent
2017-05-31 00:29:24 +02:00
Frank Schroeder
98ac791577
test: retry a bit more often
2017-05-31 00:29:24 +02:00
Frank Schroeder
6e7cf8c07e
agent: rename *Config vars to 'cfg'
2017-05-31 00:29:24 +02:00
Frank Schroeder
193eec414f
agent: rename *Command vars to 'cmd'
...
'c' is ambigious and it conflicts with 'config'.
2017-05-31 00:29:24 +02:00
Frank Schroeder
5cdfd3789f
test: rename *Config vars to 'cfg'
...
'c' is ambigous since Command also uses this
and we want to use 'config' as a package name.
2017-05-31 00:29:24 +02:00
Frank Schroeder
f6cc2c3fbb
test: use less aggressive retry for agent startup
2017-05-31 00:29:24 +02:00
Frank Schroeder
51a56cb973
test: use system temp dir for TestAgent
2017-05-31 00:29:24 +02:00
Frank Schroeder
adb994a745
test: a.config -> a.Config
2017-05-31 00:29:23 +02:00
Frank Schroeder
d64a21d8dc
test: refactor httpTest with TestAgent
2017-05-31 00:29:23 +02:00
Frank Schroeder
a02485462e
test: run agent tests in parallel
...
This brings down the test run from 108 sec to 15 sec.
There is an occasional port conflict because of the nature
the next port is chosen. So far it seems rare enough to live
with it.
2017-05-31 00:29:23 +02:00
Frank Schroeder
b05a875119
agent: refactor tests for TestAgent
...
Refactored tests that use
* makeAgentXXX
* makeDNSServerXXX
* makeHTTPServerXXX
2017-05-31 00:29:23 +02:00
Frank Schroeder
2e829f8917
agent: add TestAgent to replace other mechanisms
...
TestAgent will replace the following mechanisms to
start test agents in subsequent requests:
* makeAgentXXX
* makeDNSServerXXX
* makeHTTPServerXXX
* testServer
* httpTest
2017-05-31 00:29:23 +02:00
Frank Schroeder
76fbe43f56
agent: simplify agent creation
...
This patch creates an agent with just a config struct
and allows for other fields to be set as required.
2017-05-31 00:29:23 +02:00
Frank Schroeder
8d9f5b9a64
agent: move http/dns endpoints into agent
...
Move the HTTP and DNS endpoints into the agent and control
their lifespan via the agent.
This removes the requirement to manage HTTP and DNS servers
indpendent of the agent since the agent is mostly useless
without an endpoint and the endpoints without the agent.
2017-05-31 00:29:23 +02:00
Frank Schroeder
b2670b2d59
agent: fix comment
2017-05-31 00:29:22 +02:00
Frank Schroeder
efeb7d8535
agent: simplify socket address helper
2017-05-31 00:29:22 +02:00
Frank Schroeder
ab1a94977d
agent: replace goto with local function
2017-05-31 00:29:22 +02:00
Frank Schroeder
242ad8bb3a
agent: inline uiDir field
...
uiDir can be inlined as agent.config.UIDir
2017-05-31 00:29:22 +02:00
Frank Schroeder
bc657da280
agent: drop logOutput parameter
...
agent.logOutput is identical to logOutput
2017-05-31 00:29:22 +02:00
Frank Schroeder
3a9f867b9b
agent: drop config argument
...
agent.config and config are identical.
2017-05-31 00:29:22 +02:00
Kyle Havlovitz
e196576c07
Add settings for upshifting to encrypted gossip ( #3079 )
2017-05-30 08:51:37 -07:00
James Phillips
8ea5a3f791
Removes obsolete agent API documentation.
2017-05-26 10:24:45 -07:00
Frank Schroeder
dd7198e7de
doc: update comments and run goimports
2017-05-24 10:20:28 +02:00
Michael Leow
ec81c18006
agent: add RetryJoin support for Azure
...
Pull #2978 from leowmjw/develop
Resolves #2978
2017-05-24 10:15:38 +02:00
James Phillips
759e93122f
Merge pull request #2901 from deckarep/consul-ensure-exit-non-zero-on-timeout
...
Ensure to exit with a non-zero status code when a timeout and all jobs are not completed.
2017-05-18 10:25:50 -04:00
Frank Schroeder
9f4286b1ce
agent: support custom check id and name
...
This patch adds support for a custom check id and name when
registering a service.
This is achieved by adding a CheckID and a Name field to the
CheckType structure which is used to register checks with a
service and when returning health check definitions.
CheckDefinition is a superset of CheckType which duplicates
some of the fields of CheckType. This patch decouples these
two structures by removing the embedding of CheckType in
CheckDefinition.
Fixes #3047
2017-05-17 20:17:08 +02:00
Frank Schroeder
69125e3a58
agent: move isAddrANY to separate package
2017-05-15 22:44:43 +02:00
Frank Schroeder
d6eb1d434f
agent: Replace client/server with delegate interface
...
This patch adds a new internal interface clientServer
which defines the common methods of consul.Client and
consul.Server. This allows to replace the following
code
if a.server != nil {
a.server.do()
} else {
a.client.do()
}
with
a.delegate.do()
In case a specific type is required a type check can
be performed:
if srv, ok := a.delegate.(*consul.Server); ok {
srv.doSrv()
}
2017-05-15 18:35:38 +02:00
Frank Schroeder
e350b7aafa
agent: allow "::" as IPv6 bind address
...
Fixes #2285
2017-05-15 17:51:33 +02:00
Frank Schroeder
eedf0f3ac5
test: add helper for ioutil.TempDir/TempFile
...
This creates a simplified helper for temporary directories and files.
All path names are prefixed with the name of the current test.
All files and directories are stored either in /tmp/consul-test
or /tmp if the former could not be created.
Using the system temp dir breaks some tests on macOS where the unix
socket path becomes too long.
2017-05-12 22:12:47 +02:00
Frank Schroeder
29f9b9b22a
test: lower wait time for some tests
2017-05-12 22:12:47 +02:00
Frank Schroeder
10622b6995
test: suppress osx firewall warning
...
macOS displays a firewall warning dialog when an unsigned
application is trying to bind to a non-loopback address.
This patch updates some test configurations to ensure binding
to a loopback address where possible to suppress these warnings.
2017-05-12 22:12:47 +02:00
Frank Schroeder
15590a8446
test: include test name in temp file/dir
...
This helps identifying hanging tests by looking
at the process list.
2017-05-12 22:12:47 +02:00
Frank Schroeder
49c71f923b
test: drop unused code
2017-05-11 17:04:36 +02:00
Frank Schroeder
3e4dc6e133
agent: use bind address as src unless INADDR_ANY
...
Use the bind address as source address for outgoing
RPC connections unless it is INADDR_ANY.
The current code uses the advertise address which will
not work in certain environments where the advertise
address is not routable in the network of the agent,
e.g. NAT environment, container... After all, that is
the purpose of the advertise address.
See #2822
2017-05-11 00:34:14 +02:00
Frank Schroeder
27e951d213
agent: use helper for INADDR_ANY
2017-05-11 00:34:14 +02:00
Kyle Havlovitz
e4af6583f5
Add a path for transitioning to TLS on an existing cluster ( #3001 )
...
Fixes #1705
2017-05-10 14:25:48 -07:00
Frank Schroeder
e13f3446ac
agent: drop atlas/scada code
2017-05-10 23:06:36 +02:00
Frank Schroeder
091bea4922
test: refactor TestAgent_Leave_ACLDeny to use only one server
2017-05-10 17:42:38 +02:00
Frank Schroeder
9b161bdee3
test: use isPermissionDenied
2017-05-10 17:42:38 +02:00
Frank Schroeder
66c6362a70
test: replace blocks and comments with sub-tests
2017-05-10 17:42:38 +02:00
Frank Schroeder
b6eccb51c7
test: inline request body encoding
2017-05-10 17:42:38 +02:00
Frank Schroeder
4174cc283b
test: add helper for permission denied check
2017-05-10 17:42:38 +02:00
Frank Schroeder
6073c53089
test: drop error check on http.NewRequest
...
Most URLs are static so the error check is redundant.
The subsequent test wouldn't work if the url is wrong.
2017-05-10 17:42:38 +02:00
Frank Schroeder
c1cbecfe18
agent: Disallow :: or [::] as advertise or advertise-wan address
2017-05-09 17:56:16 +02:00
Frank Schroeder
8821793358
agent: Disallow :: and [::] as service address
2017-05-09 17:56:15 +02:00
Frank Schroeder
66e7b414b0
agent: Disallow 0.0.0.0 as advertise or advertise-wan address
...
Fixes #2961
2017-05-09 17:56:15 +02:00
Frank Schroeder
5b48fec0dd
agent: Disallow 0.0.0.0 as service address
...
Fixes #2961
2017-05-09 17:56:15 +02:00
James Phillips
6103198732
Tweaks some tests that were having a hard time in Travis CI and
...
bumps up the default retry time.
2017-05-09 06:48:26 -07:00
James Phillips
518fae04e4
Updates built-in static assets for web UI.
2017-05-08 19:50:54 -07:00
Frank Schroeder
5c6be1cc7a
test: Fix badly formatted retry.Run tests
2017-05-05 17:07:03 +02:00
Frank Schroeder
17f6ecdd12
test: convert remaining WaitForResult tests
2017-05-05 17:07:03 +02:00
James Phillips
7007c89870
retry: Removes the description parameter.
2017-05-05 17:07:03 +02:00
James Phillips
b9fb20d0cf
test: Turns off ACLs for catalog and health WAN translation tests.
...
Since this was doing registration to a foreign DC, it needs extra time
for the route to the ACL datacenter to be set up. ACLs aren't part of
this test, so by disabling them we make this more reliable and converge
faster than if we had added a retry.
2017-05-05 17:07:03 +02:00
James Phillips
c77663fe65
test: Moves a variable closer to where it's used.
2017-05-05 17:07:03 +02:00
James Phillips
2e512d6e6d
test: Turns down server health interval for faster convergence.
...
This fixes the autopilot tests.
2017-05-05 17:07:02 +02:00
Frank Schroeder
9435cadeee
test: Refactor WaitForResult tests with retry
...
Refactor tests that use testutil.WaitForResult to use retry.
Since this requires refactoring the test functions in general this patch
also shows the use of the github.com/pascaldekloe/goe/verify library
which provides a good mechanism for comparing nested data structures.
Instead of just converting the tests from testutil.WaitForResult to
retry the tests that performing a nested comparison of data structures
are converted to the verify library at the same time.
2017-05-05 17:07:02 +02:00
Frank Schroeder
b1e97baacb
Fix imports
2017-05-05 17:07:00 +02:00
Frank Schroeder
f894a4cb7d
Use bind address as source for outgoing connections ( #2822 )
...
This patch configures consul to use the bind address as the
source address for outgoing connections.
Fixes #2822
2017-05-04 01:41:47 +02:00
Frank Schroeder
c772cecaab
Do not modify config after creation II
...
Move code for finding the advertise address via a
template into consulConfig() so that the config
object is not modified after creation.
2017-05-04 01:41:47 +02:00
Frank Schroeder
6b96c9ff91
Do not modify config after creation
...
Make sure the RPCAdvertise address is always set
so that the configuration does not have to be modified
after creation.
2017-05-04 01:41:47 +02:00
Frank Schroeder
8213222931
Move GCE discovery code to command/agent/config_gce.go
2017-05-04 01:41:47 +02:00
Frank Schroeder
39fae5eac2
Move AWS discovery code to command/agent/config_aws.go
2017-05-04 01:41:47 +02:00
Frank Schroeder
3ea54c48a8
Move verifyUniqueListeners to command/agent/config.go
2017-05-04 01:41:47 +02:00
Frank Schroeder
a0b98948d8
Cleanup agent config
2017-05-04 01:41:47 +02:00
Damon Buckwalter
e9d6f5b3d0
Itty bitty typo
2017-05-02 16:08:07 -07:00
James Phillips
a3e1e8e7e5
Updates static assets to pick up #2712 .
2017-05-02 10:52:06 -07:00
Kyle Havlovitz
b5ed2ba536
Add separate option for verifying incoming HTTPS traffic ( #2974 )
...
* Add separate option for verifying incoming HTTPS traffic
2017-04-28 16:15:55 -07:00
Frank Schroeder
1973e66c07
api: Return empty list instead of nil
2017-04-28 15:00:08 -07:00
Frank Schroeder
2bf668b658
api: Add ServiceTags to Health state endpoint ( #153 )
...
This patch adds the ServiceTags to the /v1/health/state/<state>
endpoint.
Fixes #153
2017-04-28 15:00:08 -07:00
Frank Schroeder
7f64689828
Faster dev server startup
...
This patch reduces the timeouts for the development
server so that it starts up almost instantly.
2017-04-28 14:43:44 -07:00
Frank Schroeder
5bbef3b47e
Revert "test: Run command/agent tests in parallel"
...
This reverts commit 17be40a73310e1a0d2461b175f6214381ac41039.
2017-04-27 14:39:04 -07:00
Frank Schroeder
9305c706e0
test: Do not run RetryJoin tests in parallel
...
I am suspecting port conflicts with the agents
that are started. This needs further investigation.
2017-04-27 14:39:04 -07:00
Frank Schroeder
9a2063bf6f
test: Speedup session renew tests
2017-04-27 10:34:30 -07:00
Frank Schroeder
9db74f5a0e
test: Speedup Retry*Join tests
2017-04-27 10:34:30 -07:00
Frank Schroeder
58e0b5cb70
test: Run command/agent tests in parallel
2017-04-27 10:34:30 -07:00
Kyle Havlovitz
42cf797ad9
Add TLS cipher suite options and CA path support ( #2963 )
...
This patch adds options to configure the available
TLS cipher suites and adds support for a path
for multiple CA certificates.
Fixes #2959
2017-04-27 01:29:39 -07:00
James Phillips
47640538d4
Updates compiled static assets.
2017-04-25 13:54:03 -07:00
Frank Schroeder
9e2332f6a1
golint: Fix existing comments
...
This needs more work.
2017-04-25 09:26:13 -07:00
Frank Schroeder
9de4555c0c
golint: Untangle if blocks with return in else
2017-04-25 09:26:13 -07:00
Frank Schroeder
f50d6871f9
golint: No stutter
2017-04-25 09:26:13 -07:00
Frank Schroeder
8c7bb7b65a
golint: Rename fields and structs
2017-04-25 09:26:13 -07:00
Frank Schroeder
f4a56d8a44
golint: Replace a += 1 with a++
2017-04-25 09:26:13 -07:00
Frank Schroeder
c7f367af56
golint: Consistent receiver name
...
Ensure the receiver name is consistent
2017-04-25 09:26:13 -07:00
Frank Schroeder
ebdb73d8f2
golint: Drop the unused value from range
...
for i, _ := range foo -> for i := range foo
2017-04-25 09:26:13 -07:00
Frank Schroeder
9f8f258d4d
Remove duplicate constants
...
This patch removes duplicate internal copies of constants in the structs
package which are also defined in the api package. The api.KVOp type
with all its values for the TXN endpoint and the api.HealthXXX constants
are now used throughout the codebase.
This resulted in some circular dependencies in the testutil package
which have been resolved by copying code and constants and moving the
WaitForLeader function into a separate testrpc package.
2017-04-20 09:54:49 -07:00
Frank Schroeder
58c3b1ff38
Use fmt.Fprint/Fprintf/Fprintln
...
Used the following rewrite rules:
gofmt -w -r 'resp.Write([]byte(fmt.Sprintf(a, b, c, d))) -> fmt.Fprintf(resp, a, b, c, d)' *.go
gofmt -w -r 'resp.Write([]byte(fmt.Sprintf(a, b, c))) -> fmt.Fprintf(resp, a, b, c)' *.go
gofmt -w -r 'resp.Write([]byte(fmt.Sprintf(a, b))) -> fmt.Fprintf(resp, a, b)' *.go
gofmt -w -r 'resp.Write([]byte(fmt.Sprintf(a))) -> fmt.Fprint(resp, a)' *.go
gofmt -w -r 'resp.Write([]byte(a + "\n")) -> fmt.Fprintln(resp, a)' *.go
gofmt -w -r 'resp.Write([]byte(a)) -> fmt.Fprint(resp, a)' *.go
2017-04-20 09:02:59 -07:00
Kyle Havlovitz
72ee7c2501
Show raft protocol in list-peers command ( #2929 )
2017-04-19 15:01:40 -07:00
Kyle Havlovitz
e97574fc4c
Fix help text on client cert/key options
2017-04-18 16:30:20 -07:00
mckennajones
1695506b1d
Added check to see if ui and ui-dir flags are both specified
2017-04-17 17:25:57 -07:00
Kyle Havlovitz
095b441ed4
Fix help text for -ca-path
2017-04-14 14:44:45 -07:00
Kyle Havlovitz
cdd8b5b880
Add tls client options to api/cli
2017-04-14 13:37:29 -07:00
James Phillips
1129827f91
Merge pull request #2842 from vaLski/supress_sigpipe_logging
...
Supress signal logging on SIGPIPE. Should address #2768
2017-04-13 16:52:29 -07:00
James Phillips
1f40dc83e3
Updates static assets to pick up #2899 .
2017-04-13 14:40:16 -07:00
James Phillips
86a69e8207
Merge pull request #2904 from hashicorp/non-host-id
...
Adds a new -disable-host-node-id option to help when testing with containers.
2017-04-13 10:49:05 -07:00
James Phillips
20bf47d2b4
Adds a new -disable-host-node-id option to help when testing with containers.
...
Fixes #2877 .
2017-04-12 22:07:18 -07:00
Ralph Caraveo
8295809d79
Ensure to exit with a non-zero status code when a timeout occurs and we don't complete all the jobs.
2017-04-12 17:51:16 -07:00
Ralph Caraveo
c06b72ba17
Fixed spelling for consul kv get command --help comments.
2017-04-12 17:31:57 -07:00
Alex Dadgar
13f026dec4
Hash host ID so its stable and well distributed
...
This PR takes the host ID and runs it through a hash so that it is well
distributed. This makes it so that machines that report similar host IDs
are easily distinguished.
Instances of similar IDs occur on EC2 where the ID is prefixed and on
motherboards created in the same batch.
2017-04-10 11:57:24 -07:00
James Phillips
c7f7e969d7
Merge pull request #2854 from hashicorp/remote-exec
...
Changes `disable_remote_exec` default to true so remote exec is opt-in.
2017-03-30 10:29:09 -07:00
Kyle Havlovitz
a2058d23ef
Add CLI/API endpoints for removing peer by ID
2017-03-30 10:13:32 -07:00
James Phillips
ac90110396
Changes `disable_remote_exec` default to true so remote exec is opt-in.
2017-03-30 09:43:32 -07:00
James Phillips
4259ecd8bc
Disables agent-level enforcement on Consul agents unless acl_datacenter is set.
2017-03-29 12:24:42 -07:00
vaLentin chernoZemski
8aee2b805a
Supress signal logging on SIGPIPE. Should address #2768
...
When consul-template is communicating with consul and the job is done, consul thread receives SIGPIPE.
This cause the logs to be filled "Caught signal: broken pipe" and they does not bring any usefull info with them.
Skipping those.
2017-03-29 09:46:58 +03:00
James Phillips
424d70ba5d
Cleans up a stray mark and fixes unit tests.
...
Ended up removing the leader_test.go server address change test as part
of this. The join was failing becase we were using a new node name with
the new logic here, but realized this was hitting some of the memberlist
conflict logic and not working as we expected. We need some additional
work to fully support address changes, so removed the test for now.
2017-03-27 01:28:54 -07:00
James Phillips
dce84379b7
Fixes up some broken unit tests.
2017-03-24 17:35:07 -07:00
James Phillips
f2211d2489
Keeps the service and check tokens around for deregistration.
...
We fixed a few related issues while we were in here. We now only let
services register checks with a matching token, and we also close out
service and check delete operations if the catalog deregister claims
it doesn't know about the ID of the service or check being deleted.
2017-03-24 17:15:20 -07:00
James Phillips
c553e1d93a
Changes verson 8 ACLs to opt-out.
2017-03-24 12:12:24 -07:00
Seth Vargo
2efa3bdff8
Use new APIs
2017-03-23 18:48:13 -04:00
Seth Vargo
78bd562f41
Re-add RPC parsing
...
This makes the upgrade path a bit nicer, since people will likely have
older configurations. This prints out a warning instead of just failing
if the old rpc addr or ports definition is in the config.
2017-03-23 17:10:14 -04:00
James Phillips
ab2b615265
Renames some operator unit tests.
2017-03-22 19:26:43 -07:00
Kyle Havlovitz
37ea20cb44
Add advanced autopilot features
2017-03-22 15:25:16 -07:00
James Phillips
36a0abe10f
Merge pull request #2801 from hashicorp/spoken-hub-oss
...
Adds support for WAN soft fail and join flooding.
2017-03-20 16:24:07 -07:00
James Phillips
964a5e2b28
Updates to latest built-in static assets.
2017-03-20 10:18:47 -07:00
James Phillips
43d24b3ba0
Fixes RTT command to only compare coordinates in the same area.
2017-03-16 16:42:19 -07:00
James Phillips
28f8aa5559
Removes remoteConsuls in favor of the new router.
...
This has the next wave of RTT integration with the router and also
factors some common RTT-related helpers out to lib. While we were
in here we also got rid of the coordinate disable config so we don't
need to deal with the complexity in the router (there was never a
user-visible way to disable coordinates).
2017-03-16 16:42:19 -07:00
Kyle Havlovitz
006c6b93b3
Merge pull request #2802 from hashicorp/f-autopilot-improvements
...
Fix an issue with changing server ID when re-joining
2017-03-15 20:26:16 -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
James Phillips
9b43b31900
Forces user-supplied node IDs to lower case for consistency.
2017-03-13 19:51:56 -07:00
Kyle Havlovitz
b15d67bfac
Use defers for WaitGroup and Ticker stop
2017-03-10 12:29:03 -08:00
Kyle Havlovitz
8130f9b1c1
Cleaned up and reorganized some autopilot-related code
2017-03-09 18:21:40 -08:00
Kyle Havlovitz
a7de1e2a3b
Move RaftStats to Status endpoint
2017-03-07 13:58:06 -08:00
Kyle Havlovitz
0606133b75
Merge branch 'master' into f-autopilot-2
2017-03-06 16:02:19 -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
Sean Chittenden
c6feba6ab7
Revert "Change `ClientAddr` to default to `BindAddr` when not present."
2017-03-06 13:32:43 -08:00
Sean Chittenden
e1ced1de30
Change `ClientAddr` to default to `BindAddr` when not present.
...
With this change, it is now possible to only specify the `-bind` or
`bind_addr` attributes and get a functioning consul agent.
2017-03-04 20:52:52 -08:00
James Phillips
aba567273e
Merge pull request #2690 from zeroae/f-simple-rfc2782
...
RFC 2782 support with optional .service tag
2017-03-02 14:49:36 -08:00
Kyle Havlovitz
44f0b08db7
Merge pull request #2771 from hashicorp/f-autopilot
...
Autopilot dead server cleanup, config, and raft version compatibility
2017-02-28 15:04:16 -08:00
Kyle Havlovitz
77785778bf
Merge pull request #2774 from hashicorp/f-cli-deprecation-docs
...
Add CLI RPC deprecation section to docs
2017-02-28 14:59:48 -08:00
Kyle Havlovitz
23c492a74e
Rename DeadServerCleanup and make wording adjustments
2017-02-28 14:45:21 -08:00
Kyle Havlovitz
01fe3fb399
Fix up command and api tests
2017-02-28 14:12:55 -08:00
Kyle Havlovitz
3b67c50c1d
Remove the RPC client interface and update docs
2017-02-28 13:41:09 -08:00
Sean Chittenden
63402c6eaa
Follow the lead in 6fc901a8f3
and set the default `DisplayName` to `Consul`
2017-02-26 12:26:14 -08:00
Kyle Havlovitz
953baed324
Convert agent command to use base.Command
2017-02-24 18:11:05 -08:00
Kyle Havlovitz
f7b6d776f4
Add cli docs and minor test/comment tweaks
2017-02-24 16:55:44 -08:00
Kyle Havlovitz
1e24ec51a7
Use BoolValue for flag type
2017-02-24 16:00:39 -08:00
Kyle Havlovitz
459e72b011
Merge branch 'master' into f-autopilot
2017-02-24 15:55:18 -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
James Phillips
e92def21e1
Exports config functions from base.
2017-02-23 21:08:43 -08:00
James Phillips
b59d136820
Exports visit function from base.
2017-02-23 21:01:06 -08:00
Kyle Havlovitz
56e22a719f
Add state store table and endpoints for autopilot
2017-02-23 20:32:13 -08:00
Kyle Havlovitz
ae9fce0ae0
Move raft_protocol out of autopilot config
2017-02-23 13:08:40 -08:00
Kyle Havlovitz
f9588b8d7f
Add raft version 2/3 compatibility
2017-02-22 12:53:32 -08:00
Kyle Havlovitz
3f05576cc8
Condense raft subcommand into one doc page
2017-02-16 11:44:14 -08:00
Kyle Havlovitz
2b12a43840
Split operator raft command into subcommands
2017-02-15 13:53:34 -08:00
Jeff Mitchell
15314c96d0
Update TestHTTPServer_UnixSocket with DialContext
2017-02-10 21:29:42 -05:00
Kyle Havlovitz
0262f009dd
Merge pull request #2732 from hashicorp/f-validate-command
...
Deprecate configtest and add validate command
2017-02-10 20:34:09 -05:00
Kyle Havlovitz
9fc55909dc
Add -quiet flag to validate
2017-02-10 20:14:22 -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
27ee6f974d
Update website docs for validate command
2017-02-10 19:38:38 -05:00
Kyle Havlovitz
fcb2594fda
Deprecate the configtest command and add the validate command
2017-02-10 19:21:51 -05:00
Kyle Havlovitz
bdb58adb80
Allow internal watches to use https and unix sockets
2017-02-10 18:38:39 -05:00
Kyle Havlovitz
91e960832f
Allow prefixing -http-addr with http/https schemes
2017-02-10 18:25:46 -05:00
Kyle Havlovitz
6692061761
Remove cli rpc functions
2017-02-10 13:57:02 -05:00
Kyle Havlovitz
854c09021e
Formatting fix in members output
2017-02-10 13:02:37 -05:00
Kyle Havlovitz
955d1b983d
Merge branch 'master' into f-cli-rework-3
2017-02-09 21:24:27 -05:00
Kyle Havlovitz
a64c5e69a3
Cleanup and formatting adjustments
2017-02-09 20:49:17 -05:00
Kyle Havlovitz
65ad17a27d
Convert watch command to use base.Command
2017-02-09 20:36:01 -05:00
Kyle Havlovitz
1767a4dcb0
Add missing doc page for version command
2017-02-09 20:08:25 -05:00
Kyle Havlovitz
50f6c6a2bb
Convert snapshot command to use base.Command
2017-02-09 20:00:38 -05:00
Kyle Havlovitz
bcdbc9175c
Convert rtt command to use base.Command
2017-02-09 19:38:06 -05:00
Kyle Havlovitz
520edc2e49
Convert reload command to use base.Command
2017-02-09 19:32:22 -05:00
Kyle Havlovitz
1a26907d01
Convert operator command to use base.Command
2017-02-09 18:19:34 -05:00
Kyle Havlovitz
c78f62b83d
Convert monitor command to use base.Command
2017-02-09 17:31:52 -05:00
Kyle Havlovitz
7d72864531
Convert members command to use base.Command
2017-02-09 17:12:47 -05:00
Kyle Havlovitz
4be635d3a1
Convert maint command to use base.Command
2017-02-09 17:06:19 -05:00
Kyle Havlovitz
e385af8eeb
Convert leave command to use base.Command
2017-02-09 16:48:12 -05:00
Kyle Havlovitz
2a82804c0c
Make join exit non-zero if no nodes were joined
2017-02-08 19:45:13 -05:00
Kyle Havlovitz
b35acaac33
Convert kv commands to use base.Command
2017-02-08 19:26:24 -05:00
Kyle Havlovitz
d3b24d2d12
Convert keyring command to use base.Command
2017-02-08 18:25:47 -05:00
Kyle Havlovitz
3a18373db7
Convert keygen command to use base.Command
2017-02-08 17:19:17 -05:00
Kyle Havlovitz
9e156286c7
Convert join command to use base.Command
2017-02-08 17:14:02 -05:00
Kyle Havlovitz
a69f2a0faf
Convert info command to use base.Command
2017-02-08 16:58:04 -05:00
Kyle Havlovitz
89771b6075
Convert exec command to use base.Command
2017-02-08 16:57:46 -05:00
Kyle Havlovitz
6cc2299123
Convert event command to use base.Command
2017-02-08 16:56:58 -05:00
Kyle Havlovitz
0f20f06021
Small tweaks to base command
2017-02-07 20:56:49 -05:00
Kyle Havlovitz
2b02fb575b
Add utility types to enable checking for unset flags
2017-02-07 20:14:41 -05:00
Kyle Havlovitz
9e38fc1c84
Move command Meta to base.Command and split http options
2017-02-07 19:16:41 -05:00
Kyle Havlovitz
e30b9ae5ba
Fix the check for displaying the command options
2017-02-06 23:45:58 -05:00
Kyle Havlovitz
0f796f0cba
Convert configtest and force-leave commands to use Meta
2017-02-06 20:50:51 -05:00
Kyle Havlovitz
d6a5b7e63c
Merge branch 'master' into f-cli-rework
2017-02-06 13:46:44 -05:00
Kyle Havlovitz
4fc3bd3abf
Added -relay-factor param to keyring operations
2017-02-01 21:53:29 -05:00
Kyle Havlovitz
f48cd78bc5
Merge pull request #2699 from hashicorp/f-tls-min-version
...
Add TLSMinVersion to config options
2017-02-01 16:31:53 -05:00
Kyle Havlovitz
086975ac0a
Add TLSMinVersion to config options
2017-02-01 16:20:33 -05:00
Sean Chittenden
9e2557c53c
Re-cherry-pick 71d807f607589f2eb4fea4e83e3876d122c8afc0 and e2320d69b6b155d8223758415aabafc60a0e9d3b.
2017-02-01 10:27:04 -08:00
James Phillips
691aec917e
Fixes issue with missing CNAME for services with non-IP addresses set in SRV responses.
2017-01-31 20:57:50 -08:00
Patrick Sodré
5b68178dc1
Simple RFC 2782 support with optional .service tag
...
Add support for SRV queries of names matching:
_<service>._<protocol>.[.service][.datacenter]<.domain>
2017-01-30 19:46:02 -05:00
James Phillips
682d65b4bc
Redacts AWS join credientials from /v1/agent/self output.
2017-01-25 21:01:07 -08:00
James Phillips
09dd23e14a
Updates a comment to point to new blockingQuery function.
2017-01-25 09:58:22 -08:00
James Phillips
6e58d7b80d
Pulls in latest static asset updates.
2017-01-25 09:57:56 -08:00
Kyle Havlovitz
a09b6ea8b4
Fix test import
2017-01-23 21:34:01 -05: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
David Black
c65d965aa7
s/givne/given/
2017-01-19 09:16:31 -08:00
James Phillips
55cd1d975c
Adds catalog support for node IDs.
2017-01-18 14:26:42 -08:00
James Phillips
e73d3c2312
Adds a test to make sure we get the same ID on the second run.
2017-01-18 09:52:34 -08:00
James Phillips
96bff003b7
Adds basic support for node IDs.
2017-01-17 22:47:59 -08:00
James Phillips
17c4754eac
Merge pull request #2639 from tanuck/master
...
Standardize the case of all check log messages
2017-01-17 09:07:45 -08:00
James Phillips
05ce6766aa
Merge pull request #2578 from ybubnov/concurrent-safe-notification-mock
...
Concurrent-safe notification mock
2017-01-17 09:01:43 -08:00
Kyle Havlovitz
e37f25dc02
Add node metadata filtering to remaining health/catalog endpoints
2017-01-13 20:08:43 -05:00
Kyle Havlovitz
ebd37af4ef
Style tweaks and vendor.json cleanup
2017-01-12 16:49:44 -05:00
Kyle Havlovitz
2139dbb029
Merge branch 'master' into f-gce-discovery
2017-01-11 22:57:07 -05:00
Kyle Havlovitz
84b157eade
Condense gce discovery logging a bit
2017-01-11 22:37:22 -05:00
Kyle Havlovitz
821735d175
Merge pull request #2643 from hashicorp/f-node-metadata
...
Node metadata
2017-01-11 20:29:24 -05:00
Kyle Havlovitz
51a1834667
Add -node-meta to agent command line options
2017-01-11 16:09:04 -05:00
Kyle Havlovitz
d77890a011
Validate metadata config earlier and handle multiple filters
2017-01-11 15:12:03 -05:00
Andrew Glen-Young
c78c07d9cb
Pedantic typo fix
2017-01-10 15:44:32 -05:00
Kyle Havlovitz
6b5cf20b1c
Fix formatting
2017-01-09 13:49:33 -08:00
Kyle Havlovitz
aee766baba
Add meta key validations and more tests
2017-01-09 11:21:49 -08:00
Kyle Havlovitz
b25f4c7d35
Add tests for node metadata functionality
2017-01-05 17:21:56 -08:00
Kyle Havlovitz
2a423c6e2c
Add support for setting node metadata fields
2017-01-05 14:10:26 -08:00
James Phillips
d18b917db9
Merge pull request #2635 from hashicorp/kv-put-crash
...
cli: Fix panic on empty data argument to `kv put`
2017-01-05 09:57:59 -08:00
James Nugent
128b1e72dd
cli: Fix printf format in KV Export Test
...
Fix vet issue:
command/kv_export_test.go:48: arg code for printf verb %s of wrong type:
int
2017-01-05 09:28:12 -06:00
James Nugent
94aed0717f
cli: Fix panic on empty data argument to `kv put`
...
Passing in an empty quoted argument from the shell currently panics as
we never check the length being greater than 0 prior to indexing into
the first rune, as illustrated in the test in this commit.
We also fix the panic, treating an empty string for data as equivalent
to not having passed it in the first place.
2017-01-05 08:02:38 -06:00
James Nugent
3b1f523b85
cli: Add KV `export` and `import`
...
This commit adds two new commands to the Consul KV CLI, which export and
import a JSON formatted representation of the Consul KV tree. It is
useful to migrate parts of the KV tree between unrelated Consul
clusters, and could also be used for initial data population of the KV
store.
2017-01-05 07:57:38 -06:00
James Tancock
5b526f0847
Standardize the case of all check log messages
2017-01-05 08:34:20 +00:00
James Nugent
c32fe92eee
cli: Add -base64 option to `consul kv put`
...
This commit adds a -base64 option to the consul kv put command, which
base 64 decodeds the data prior to writing it. This can be used in
conjunction with `consul kv get -base64 key`.
2017-01-04 16:12:21 -06:00
James Nugent
a24e5041ac
Merge pull request #2631 from hashicorp/kv-get-base64
...
cli: Add -base64 option to `consul kv get`
2017-01-04 16:00:27 -06:00
James Nugent
2bb6121e54
cli: Add -base64 option to `consul kv get`
...
This commit adds a `-base64` option to the `consul kv get` command,
which base 64 encodes the output such that it can be processed by
terminal tools in the event that the data is binary. The flag defaults
to false.
2017-01-04 15:41:40 -06:00
Kyle Havlovitz
5d03ab53f3
Don't error if the given data-dir doesn't exist
2016-12-15 12:55:21 -05:00
James Phillips
5a6521c385
Adds exception for data-dir check in -dev mode.
...
This was changed in #2529 .
2016-12-14 22:11:16 -08:00
James Phillips
a0032d5c39
Updates web assets to match latest.
2016-12-14 21:08:17 -08:00
James Phillips
b617e54ff0
Merge pull request #2594 from hashicorp/acl-complete
...
Adds complete ACL support for /v1/agent endpoints.
2016-12-14 20:49:00 -08:00
James Phillips
7ee097c1ba
Adds complete ACL support for listing events.
2016-12-14 19:42:37 -08:00
James Phillips
ae83cc96f9
Adds remaining unit tests for agent ACL vet and filter functions.
2016-12-14 19:28:09 -08:00
James Phillips
51d1742025
Fixes a race in the monitor endpoint test that would cause panics.
2016-12-14 18:13:30 -08:00
Kyle Havlovitz
9f81d70d31
Merge pull request #2529 from mckennajones/bug/1838
...
Give a better error message when data-dir is not a directory
2016-12-14 20:21:10 -05:00
Kyle Havlovitz
78455621a1
Handle error from stat on data-dir and shorten error message
2016-12-14 20:06:00 -05:00
James Phillips
a57ddae900
Adds a leader wait when testing with ACLs.
2016-12-14 16:18:17 -08:00
James Phillips
b7ebe0b384
Adds complete ACL coverage for non-utility agent endpoints.
...
This is a checkpoint - we need to complete some unit tests for agent/acl.go.
2016-12-14 14:53:40 -08:00
Kyle Havlovitz
80a8055d5a
Merge pull request #2553 from mckennajones/bug/ignoresigpipe
...
Ignore sigpipe signals
2016-12-14 15:36:26 -05:00
Kyle Havlovitz
398f4a04ef
Add a notice about deprecation of atlas features
2016-12-14 15:13:51 -05:00
James Phillips
48603b4764
Adds complete ACL support for agent utility endpoints.
2016-12-14 11:12:55 -08:00
James Phillips
927aa3789a
Adds ACL management support to the agent.
2016-12-14 07:07:41 -08:00
James Phillips
dd82c8529d
Adds a unit test to make sure the status endpoint doesn't ever show anything
...
with "token" in the name.
2016-12-14 07:07:41 -08:00
James Phillips
535d6b21b4
Adds complete ACL coverage for /v1/session endpoints.
2016-12-12 21:59:22 -08:00
James Phillips
8db53b4ac2
Adds complete ACL coverage for /v1/coordinate/nodes and Coordinate.Update RPC.
2016-12-12 14:52:27 -08:00
James Phillips
67f1fe8d0b
Adds support for a new "acl_agent_token" which is used for internal
...
catalog operations.
2016-12-12 14:52:27 -08: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
2b19a5340c
Removes the exception for the "consul" service in the catalog.
2016-12-07 17:58:23 -08:00
Yakau Bubnou
5c210fb25d
Concurrent-safe notification mock
...
This patch provides additional attribute to the notification mock in
order to protect an access to the internal maps from multiple
go-routines. This is required to prevent panic errors caused by
inconsistent map state.
2016-12-07 19:31:44 +03:00
Chris Marchesi
1b4e26d005
command/agent: Google Compute Engine host discovery
...
This commit adds several command-line and config options that facilitate
host discovery through Google Compute Engine (GCE), much like the
recently added EC2 host discovery options. This should assist with
bootstrapping and joining servers within GCE when non-static addresses
are used, such as when using managed instance groups.
Documentation has also been added. It should be noted that if running
from within a GCE instance, the only option that should be necessary is
-retry-join-gce-tag-value.
2016-12-06 17:46:40 -08:00
James Phillips
eb07e77c1c
Adds an opt-in for new ACL policies and features coming in Consul 0.8.
2016-12-06 11:06:14 -08:00
Sean Chittenden
1ca285221a
Run all known addresses through go-sockaddr/template.
...
The following is now possible:
```
$ consul agent -dev -client="{{GetPrivateIP}}" -bind='{{GetInterfaceIP "en0"}}'
```
2016-12-02 16:35:38 +11:00
Kyle Havlovitz
3649c18ef0
Fix race issue in monitor endpoint test
2016-12-01 13:40:00 -05:00
James Phillips
dc37498327
Merge pull request #2533 from mckennajones/bug2526
...
Fix for KV put command
2016-11-30 21:46:04 -08:00
James Phillips
bd5adea5ba
Merge pull request #2555 from hashicorp/pr-2497-slackpad
...
Updates Circonus library and adds support for custom display name and tags.
2016-11-30 21:42:01 -08:00
Kyle Havlovitz
dd05afb32e
Add reload/leave http endpoints ( #2516 )
2016-11-30 13:29:42 -05:00
mckennajones
33d97a9b9a
ignore sigpipe signals to fix journalctl issue #2404
2016-11-30 09:42:10 -08:00
mckennajones
a99f840653
Unit test for kv_put with negative values
2016-11-29 22:29:31 -08: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
ccab51b07c
Add logWriter to agent Create() method
2016-11-28 18:36:26 -05:00
Kyle Havlovitz
d91854f3b0
Add monitor http endpoint
2016-11-28 18:36:26 -05:00
mckennajones
3b582db61d
Simple check to differentiate between stdin flag or value that contains
...
a -
2016-11-27 12:55:14 -08:00
James Phillips
147d6deea5
Updates static assets to pick up #2340 and and #2525 .
2016-11-22 17:47:50 -08: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
mckennajones
6a49edf128
check if data-dir is actually a directory
2016-11-22 13:33:51 -08:00
James Phillips
cf5134e4f0
Defaults to pretty JSON in dev mode.
2016-11-17 22:31:19 -08:00
James Phillips
b672fea37b
Merge pull request #2238 from hasyimibhar/master
...
Remove duplicated environment variables
2016-11-17 16:18:02 -08:00
Benjamin Farley
8adcd9577e
Operator docs update
2016-11-16 09:04:37 +00:00
James Phillips
60d0c66be0
Revert "Updates Circonus metrics library and adds support for display name and tags."
...
This reverts commit bd490ec937a5859ba43b07d9103b3cb8f037e9e5 from #2491 .
2016-11-09 16:21:02 -08:00
Kyle Havlovitz
9b6847d13f
Use uuids in persist temp files to avoid race ( #2494 )
2016-11-09 15:22:53 -08:00
Kyle Havlovitz
b170282d0f
Improve logging when deregistering a nonexistent service ( #2492 )
...
Log a warning instead of a success message when attempting to deregister a nonexistent service. In Consul 0.8 this can be changed to giving an error outright, but for now we can keep the idempotent delete behavior.
2016-11-09 16:56:54 -05:00
matt maier
c7f98fe988
Updates Circonus metrics library and adds support for display name and tags.
...
* Update circonus-gometrics
`vendor circonus-labs/circonus-gometrics`
`vendor circonus-labs/circonus-gometrics/api`
`vendor circonus-labs/circonus-gometrics/checkmgr`
`vendor circonus-labs/circonusllhist`
`vendor hashicorp/go-retryablehttp`
* Update Circonus integration expose Check Display Name and Check Tags configuration options.
* Adds version info to docs for new Circonus options.
2016-11-09 13:26:43 -08:00
matt maier
62fe94b3d6
Update Circonus integration expose Check Display Name and Check Tags configuration options.
2016-11-09 15:33:37 -05:00
James Phillips
739f91ad6a
Removes stale reference to reap lock which causes a panic. ( #2490 )
2016-11-09 09:52:07 -08:00
James Phillips
e01fde4007
Runs the static asset packaging inside the container; updates assets.
2016-11-08 15:14:08 -08:00
James Phillips
45def3e9ac
Updates embedded static assets.
2016-11-08 14:22:39 -08:00
Kyle Havlovitz
1ffdf04bd7
Set MaxStale default to 10 years and add a stale counter ( #2481 )
...
Default MaxStale to 10 years and add a counter at `consul.dns.stale_queries` that tracks when an agent serves a query that's stale by at least 5 seconds. Previously, MaxStale defaulted to 5 seconds and DNS would become unavailable after a short period of time with no leader. This new default allows DNS requests to still be served in the event of a long outage.
Fixes #2460 .
2016-11-08 14:45:12 -05:00
Brian Hays
9384c3a797
Lowercase ACL Datacenter ( #2478 )
...
* Lowercase ACL Datacenter
* move lowercasing of ACLDatacenter to command.go and add validation
* Tweaks error message about bad ACL datacenter.
2016-11-07 18:41:23 -08:00
Kyle Havlovitz
d71cdf9dc2
Merge pull request #2480 from hashicorp/b-atomic-writes
...
Atomic writes for persisting service/check state
2016-11-07 15:36:35 -05:00
Kyle Havlovitz
06fac8a918
Add a note about not calling sync for persistCheckState
2016-11-07 15:24:31 -05:00
Kyle Havlovitz
6b6601093c
Call fsync() for saving check/service state
2016-11-07 13:51:03 -05:00
Kyle Havlovitz
5a3996af61
Add WaitForResult to some flaky tests ( #2477 )
...
This replaces some hard sleeps with testutil.WaitForResult retry
logic in some recently added tests around TLSSkipVerify in checks.
2016-11-04 21:55:55 -07:00
James Phillips
be4056789f
Moves the snapshot package up one level. ( #2472 )
2016-11-03 21:36:25 -07:00
James Phillips
ea95e8f40d
Moves logger setup into its own package. ( #2471 )
...
* Moves logger setup into its own package.
* Removes a stray regex mark in the test locator.
2016-11-03 21:14:56 -07:00
James Phillips
8d94e5dc15
Finishes move of datacenter into client vs. options. ( #2470 )
2016-11-03 14:21:02 -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
James Phillips
18926728d4
Supports WAN and LAN Serf Bind Addresses. ( #2468 )
...
* * adding cli config and config file support for specifying the serf wan and lan bind addresses
* updating documentation for serf wan and lan options
Fixes #2007
* Cleans up some small things from #2380 .
* Uses the bind default for the agent test for Serf WAN and LAN.
2016-11-03 12:58:58 -07:00
James Phillips
1d35ff27ef
Removes unnecessary clause in unit test check.
2016-11-03 12:26:48 -07:00
James Phillips
42de8f9800
Adds support for DNS recurse truncation. ( #2467 )
...
* Return message from recurse even if truncated
Signed-off-by: Evan Farrar <efarrar@pivotal.io>
* Tweaks unit test.
2016-11-03 12:21:16 -07:00
James Phillips
3d8f6ef1a0
Adds missing datacenter arg to API client for snapshot commands. ( #2466 )
2016-11-03 11:01:09 -07:00
Kyle Havlovitz
a8215f4e2f
Merge pull request #2459 from hashicorp/f-aws-autodiscovery
...
AWS -retry-join-ec2 option
2016-11-03 13:27:23 -04:00
Kyle Havlovitz
1e2ca107c2
Small tweaks to docs and syntax
2016-11-03 13:04:42 -04:00
Kyle Havlovitz
169cae2203
Disallow -bootstrap-expect flag in dev mode ( #2464 )
2016-11-03 01:54:43 -04:00
James Phillips
03f623f89b
Builds static assets to pick up #2456 (redux).
...
Built this time using the same container that the dist build uses so
it won't see a difference and fail the build.
2016-11-02 15:54:53 -07:00
Kyle Havlovitz
a3af480c42
Add support for ECS task roles as an auth mechanism
2016-11-02 18:48:15 -04:00
Kyle Havlovitz
b9aa912e4c
Move EC2 discovery logic into retryJoin for robustness
2016-11-02 14:35:37 -04:00
Kyle Havlovitz
f212329cc6
Support more forms of EC2 authentication
2016-11-01 21:24:18 -04:00
Kyle Havlovitz
d615141c16
Add testing around EC2 discovery config
2016-11-01 18:26:15 -04:00
Kyle Havlovitz
0499784b94
Fixed up config structure for EC2 discovery
2016-11-01 17:58:51 -04:00
Kyle Havlovitz
9aa0261c1c
Merge branch 'master' of github.com:hashicorp/consul into aws_autodiscovery
2016-11-01 11:19:52 -04:00
James Phillips
9768b2ea2f
Builds static assets to pick up #2456 .
2016-10-31 18:20:36 -07:00
Kyle Havlovitz
10c5f11315
Retry periodically for 60s if syslog setup fails ( #2455 )
2016-10-31 17:24:00 -07:00
Kyle Havlovitz
440611f9f7
Add snapshot inspect subcommand ( #2451 )
2016-10-31 19:37:27 -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
Kyle Havlovitz
efb8f84922
Added tests for lookups on the 'addr.consul' domain
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
9069deb792
Add a service address SRV lookup test for IPv6
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
5888b4f7bf
Fix test cases
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
b72bccc1c4
Give the service address in SRV lookup when it differs from the node's
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
de308e75e1
Resolve Consul CNAME records on external services ( #2444 )
2016-10-26 19:23:51 -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
107f4ff878
Agent anti-entropy test fixes
2016-10-25 17:48:11 -07:00
Kyle Havlovitz
61311cff80
Test fixes ( #2434 )
...
* Test fixes in health_endpoint_test.go, agent_endpoint_test.go and rtt_test.go
* Don't reuse the same agent config in TestAgent_ReconnectConfigSettings
2016-10-25 13:46:54 -07:00
James Phillips
dace771f06
Merge pull request #2389 from hashicorp/jbs-2019
...
Lower Service tag DNS warning to DEBUG for #2019
2016-10-24 17:05:02 -07:00
Seth Vargo
6f01227963
Centralize command-line parsing
2016-10-13 18:03:29 -04:00
James Phillips
377ce12e53
Removes reap config option.
2016-10-06 21:45:18 -07:00
Brian Shumate
36e1a194c2
Lower Service tag DNS warning to DEBUG for #2019
2016-10-05 08:45:01 -04:00
Adam Wolfe Gordon
ae5bd0f2cc
agent: Stop reaping child processes ( resolves #1988 )
...
The consul docker image now uses dumb-init to reap child processes, so
there's no need to reap them ourselves.
2016-10-04 09:36:41 -06:00
Seth Vargo
74e35b1f48
Fix kv put flags
2016-09-26 16:13:39 -07:00
Seth Vargo
90f4953b47
Fix up kv put help output
2016-09-26 16:11:23 -07:00
Seth Vargo
8ac6877f20
Remove debugging code
2016-09-26 16:09:35 -07:00
Seth Vargo
70fd7efde9
Fix CAS operations for put
2016-09-26 16:06:56 -07:00
Seth Vargo
46f4093f14
Change delete CAS behavior to require ModifyIndex
2016-09-26 16:06:55 -07:00
Seth Vargo
738f12329a
Fix copy-paste comments
2016-09-26 16:06:54 -07:00
Seth Vargo
ce5c820c4a
Add kv delete command
2016-09-26 16:06:53 -07:00
Seth Vargo
d5dd8ef7a1
Add kv put command
2016-09-26 16:06:53 -07:00
Seth Vargo
a8dc0f86b6
Add kv get
2016-09-26 16:06:53 -07:00
Seth Vargo
cd8ac28a87
Add kv command stubs
2016-09-26 16:06:53 -07:00
Seth Vargo
ec16f75124
Add test function for returning an API client
2016-09-26 16:06:52 -07:00
James Phillips
5eb4c94bde
Runs go-fmt (incidental to this PR).
2016-09-23 17:44:14 -07:00
James Phillips
36db92932a
Makes string search for Windows case-insensitive.
...
Fixes #2356 .
2016-09-23 17:43:40 -07:00
James Phillips
a477481ad3
Merge pull request #2353 from hashicorp/b-local-panic
...
Cleans up state management for remote deletes from local state.
2016-09-22 12:56:08 -07:00
James Phillips
6f1050a181
Calls remove on checks and services in the local test.
2016-09-22 11:41:17 -07:00
James Phillips
434233a131
Cleans up state management for remote deletes from local state.
...
Fixes #2125 .
2016-09-21 16:52:43 -07:00
James Phillips
41b0115ee6
Merge pull request #2262 from WIZARD-CXY/master
...
Fixes go race bug in startup log buffering.
2016-09-20 17:24:52 -07:00
Felix
f9e001cb6e
return an error if no logOutput is provided
...
Otherwise the code will panic at a later stage where it is more complicated to figure out what’s actually going on.
2016-09-17 17:46:13 +09:00
James Phillips
aed72ccc60
Merge pull request #2263 from sweeneyb/dnsPort
...
Add support for dns port as a command line option
2016-09-01 22:16:15 -07:00
James Phillips
4819cf3a52
Does some go fmt cleanup.
2016-09-01 22:14:19 -07:00
James Phillips
1924eccf71
Merge pull request #2322 from hashicorp/pr-2321-slackpad
...
Adds a configurable timeout for DNS recursor client.
2016-09-01 22:11:54 -07:00
James Phillips
314bd1363c
Adds a recursor timeout line to the merge test.
2016-09-01 21:53:33 -07:00
James Phillips
3f3bb444fa
Fixes a typo in a test error message.
2016-09-01 21:52:29 -07:00
Pivotal DX129
2682410059
Merge remote-tracking branch 'upstream/master'
2016-09-01 10:15:32 -04:00
James Phillips
d419a0ae0d
Changes default for `leave_on_terminate` based on server or client mode.
2016-08-31 23:39:11 -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
3304352272
Changes default DNS allow_stale to true.
2016-08-30 13:55:19 -07:00
James Phillips
6be1e07fec
Makes the Raft configuration API easier to consume.
2016-08-30 11:30:56 -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
Pivotal DX129
6acb742c08
Fixed code formatting
2016-08-29 17:29:23 -04:00
Pierre Delagrave
b97500234d
Made the dns recursor timeout test more reliable
2016-08-29 13:23:14 -04:00
Pierre Delagrave
3d5c2609e7
Renamed dns config parameter internal_client_timeout for recursor_timeout
2016-08-26 15:22:04 -04:00
Pierre Delagrave
0895e48106
Merge remote-tracking branch 'pierre/master'
2016-08-26 15:12:38 -04:00
James Phillips
6f030a1167
Tweaks formatting of Consul version.
2016-08-25 17:12:55 -07:00
James Phillips
5df4fffd09
Merge pull request #2303 from hashicorp/f-tunes
...
Adds performance tuning capability for Raft, detuned defaults, and supplemental docs.
2016-08-25 15:45:49 -07:00
James Phillips
2f4c237cff
Adds a max raft multiplier and tweaks documentation.
2016-08-25 15:36:05 -07:00
James Phillips
5df36fbd82
Stops scaling the commit timeout.
2016-08-25 15:05:40 -07:00
James Phillips
40f3470696
Redacts the Circonus API token from stats JSON.
2016-08-24 23:27:25 -07:00
James Phillips
b339b0d2fc
Adds performance tuning capability for Raft, detuned defaults, and supplemental docs.
2016-08-24 21:58:37 -07:00
Pierre Delagrave
17b6a18c37
Added a configurable timeout to the client making DNS queries to downstream name servers
2016-08-23 16:59:38 -04:00
James Phillips
2aeaf35c41
Removed bad error message for health check status.
2016-08-17 17:54:09 -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
5f5e0b3e76
Makes protocol version a little clearer.
2016-08-17 11:29:09 -07:00
James Phillips
db9a72dde1
Merge branch 'master' into f-deregister-critical
2016-08-16 12:53:21 -07:00
James Phillips
607595f99e
Cleans up based on code review feedback.
2016-08-16 12:52:30 -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
817d7e93e4
Adds an "lan" tagged address so we have a way to get them all.
...
If we didn't have this, then there would be no way to know the LAN
address if address translation was turned on.
2016-08-16 10:49:03 -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
James Phillips
12e6db464b
Tweaks the WAN address translation unit tests.
2016-08-15 15:34:11 -07:00
James Phillips
c066c2e70a
Factors translate out into a separate file and makes safe for in-memory RPCs.
2016-08-15 15:05:02 -07:00
Xingyu Chen
07d141570c
Update gated_writer.go
2016-08-14 16:36:21 +08:00
David van Geest
360e196c93
Translate Address to tagged WAN address in HTTP API when appropriate.
2016-08-12 18:25:36 -07:00
James Phillips
8e8f840169
Updates built-in UI static assets to latest.
2016-08-12 18:01:59 -07:00
James Phillips
4915790bdc
Runs `go fmt`.
2016-08-12 17:26:23 -07:00
James Phillips
6c4a8d8383
Tweaks DNS prepared query failover unit test.
2016-08-12 17:16:08 -07:00
Max Timchenko
90f49354d6
Corrects two issues with DNS prepared query failover
...
When DNS prepared query fails over to another datacenter and the datacenter
returns some nodes, the DNS result does not translate WAN addresses even when
translation is enabled for SRV and A queries, and returns the wrong datacenter
(the one that failed over) for SRV queries.
2016-08-12 17:06:43 -07:00
James Phillips
a379078e3e
Merge pull request #2267 from hashicorp/b-srv-trim
...
Fixes bug when trimming DNS SRV records.
2016-08-12 14:57:20 -07:00
James Phillips
a666dc44b3
Passes the index by reference so we can control the allocation.
2016-08-12 14:51:50 -07:00
James Phillips
de95fe8638
Makes name compares case-insensitive.
2016-08-12 12:16:21 -07:00
R.B. Boyer
291a468c87
Validate gossip encryption key before made persistent in local.keyring
2016-08-12 11:42:45 -07:00
James Phillips
45e2879eb5
Avoids allocations and function calls if no extra data is present.
2016-08-12 10:29:57 -07:00
James Phillips
e05c77b9bf
Renames "seen" to "resolved".
2016-08-11 22:01:57 -07:00
James Phillips
6c22c48326
Fixes the DNS SRV trim bug.
2016-08-11 21:46:14 -07:00
James Phillips
086a5af5ff
Finishes up DNS compression by adding opt-out, tests, and documentation. Fixes trim routine.
2016-08-11 16:27:08 -07:00
epipho
f31f1c04e9
Fix panic where r.Compress would be set before checking for errors.
2016-08-11 16:27:08 -07:00
epipho
6d17b4eb67
Compress all DNS responses to prevent them from going over the 512 byte
...
limit from RFC 1035
2016-08-11 16:27:08 -07:00
James Phillips
f471c6e2ad
Merge pull request #2264 from hashicorp/pr-2045-slackpad
...
Enables stale mode for watchers.
2016-08-10 15:58:34 -07:00
James Phillips
32cf81e59c
Fixes a typo and adds stale documentation to website.
2016-08-10 15:46:28 -07:00
sweeneyb
e8117ba622
Add support for dns port as a command line option
2016-08-10 04:05:56 +00:00
chenxingyu
53009f2466
fix go race bug
2016-08-10 10:44:20 +08:00
James Phillips
b566c094bb
Updates bindata after vendor update.
2016-08-09 19:03:10 -07:00
James Phillips
f00e49112a
Installs a wrapper around HTTP endpoints that generate metrics.
2016-08-09 15:41:15 -07:00
James Phillips
3585b5a4cb
Merge pull request #2237 from hashicorp/f-acl-replication
...
Adds ACL replication.
2016-08-09 11:42:16 -07:00
James Phillips
2acb287690
Fixes JS exception when there are no coordinates present.
2016-08-08 17:38:22 -07:00
James Phillips
4a931ae12e
Adds an ACL replication status endpoint.
2016-08-04 23:30:16 -07:00
James Phillips
c4ae68010b
Hides the acl_replication_token from JSON output, like in /v1/agent/self.
2016-08-03 21:24:09 -07:00
James Phillips
9cece515c0
Adds basic ACL replication plumbing.
2016-08-03 21:24:04 -07:00
Cameron Davison
40d1c279dd
atomic write service state and checks files, fixes #1221
2016-08-03 10:34:12 -05: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
Abhinav Dahiya
9dc52449e3
Fixes #1775 ; Removes 'unknown' state
...
Signed-off-by: Abhinav Dahiya <abhinavdtu2012@gmail.com>
2016-07-30 19:33:14 +05:30
James Phillips
72208b6929
Merge pull request #2207 from grange74/leave-command-args-check
...
add extra check for unexpected args to leave command
2016-07-23 14:52:13 -07:00
nick.grange
63ec2dd465
add extra check for unexpected args to leave command
2016-07-24 00:36:59 +10:00
James Phillips
5d83d507b4
Adds consul info data into /v1/agent/self endpoint.
2016-07-20 15:12:26 -07:00
James Phillips
4a7b55c8cb
Fixes startup version print to show the human version.
2016-07-20 08:09:05 -07:00
James Phillips
9816c995bd
Adds version info back into the config.
...
In #2191 I accedentally broke SCADA by not populating the agent's version
information into the config structure. This adds it back, and makes the
distinction between the raw parts we send to APIs and the human form of
the version that we display.
2016-07-19 18:38:15 -07:00
James Phillips
51fbad91fd
Merge pull request #2193 from hashicorp/pr-2188-slackpad
...
Adds Circonus support for telemetry metrics.
2016-07-19 17:15:29 -07:00
James Phillips
ca5f42d61d
Tweaks the docs a bit.
2016-07-19 15:54:52 -07:00
James Phillips
9b36671fd6
Removes top-level key support for Circonus configs.
...
This was a feature to help migrate to the new telemetry sub-structure,
but since this is all new we don't need it.
2016-07-19 15:46:57 -07:00
James Phillips
53877aa260
Makes sure version is always displayed consistently.
2016-07-19 15:06:32 -07:00
richard.hulm
f11a0145ab
RH: Add revision (if it exists)
2016-07-19 10:04:56 +01:00
matt maier
87e29fd709
fix: typo coupled, default token app to "consul", switch submit_interval/SubmitInterval to submission_interval/SubmissionInterval
2016-07-18 15:46:11 -04:00
matt maier
c5a6cb8b4c
Add Circonus support for Telemetry metrics
2016-07-18 09:34:43 -04:00
richard.hulm
c2b78eac7d
Add the version (from config) to the Starting Consul Agent printout
2016-07-18 10:01:16 +01:00
Evan Gilman
c5b30cba6f
Merge branch 'master' into let-watches-be-stale
...
Attempt to let the tests pass
2016-07-13 11:20:44 -07:00
Ryan Uber
62d0edbdd4
Merge pull request #1847 from mssola/dc-to-datacenter
...
[proposal] command: deprecated the -dc flag in the agent CLI
2016-07-05 13:01:51 -07:00
Ryan Uber
e9960e6c85
Merge pull request #2137 from hashicorp/f-pq-near
...
Support "near" parameter in prepared query service block
2016-07-01 12:28:48 -07:00
Ryan Uber
134f66e3d4
agent: parseSource still subs for _agent
2016-07-01 10:04:58 -07:00
Ryan Uber
5089561b1b
agent: test that DNS passes the agent data through
2016-07-01 09:46:26 -07:00
Ryan Uber
ebacaa2d67
consul: send agent source data as separate query source
2016-06-30 16:51:18 -07:00
Ryan Uber
ec8ade1800
agent: always pass local agent query source, allow override
2016-06-30 12:11:48 -07:00
Ryan Uber
aae9c2eb30
agent: fix test
2016-06-21 16:28:26 -07:00
Ryan Uber
270270a33a
consul: send origin node + dc when executing prepared queries
2016-06-21 15:34:26 -07:00
Ryan Uber
114e57fff1
consul: use the Near field instead of PreferLocal
2016-06-21 12:39:40 -07:00
James Phillips
f9e2900692
Merge pull request #2131 from hashicorp/b-misc-microoptimizations
...
Misc micro optimizations
2016-06-21 09:59:01 -07:00
Sean Chittenden
949829295a
Pack Port to be slightly more optimal in terms of struct memory usage.
2016-06-20 15:31:17 -07:00
Sean Chittenden
c90fc057d4
Give log reviewers a hint as to which check is failing
2016-06-20 15:25:21 -07:00
Sean Chittenden
8baf0d7a95
Use stable, monotonically increasing port numbers for tests
2016-06-20 14:33:46 -07:00
Ryan Uber
89660879a0
agent: set origin during PQ execution
2016-06-20 14:24:42 -07:00
Sean Chittenden
7482a9207d
Chase casting types.CheckID to a string into the state_store.
...
It turns out the indexer can only use strings as arguments when
creating a query. Cast `types.CheckID` to a `string` before calling
into `memdb`.
Ideally the indexer would be smart enough to do this at compile-time,
but I need to look into how to do this without reflection and the
runtime package. For the time being statically cast `types.CheckID`
to a `string` at the call sites.
2016-06-07 16:59:02 -04:00
Sean Chittenden
ff45f8c8ff
Revert "Move `structs.CheckID` to a new top-level package, `types`."
...
This reverts commit 2bbd52e3b44ff1b60939a8400264d534662d6d51.
2016-06-07 16:59:02 -04:00
Sean Chittenden
a4554b945c
Move `structs.CheckID` to a new top-level package, `types`.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
cd68cd3868
Move `structs.CheckID` to a new top-level package, `types`.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
0857e93d0b
Float a type balloon. Some strings are square pegs in round holes.
...
This experiment was brought about because of variable naming
confusion where name and checkIDs were interchanged. Gave CheckID
an Qualified Type Name and chased downstream changes.
2016-06-07 16:59:02 -04:00
James Phillips
1955eadc12
Updates web assets to pull in RTT viz.
2016-06-07 09:32:44 -07:00
James Phillips
5f334d94fa
Removes stale scada client and test sections that use (now) unexported fields.
...
Fixes #2092 .
2016-06-06 19:18:31 -07:00
Jeff Mitchell
e061d89fe9
Use upstream high-level SCADA provider
2016-06-01 18:25:39 -04:00
Nathan Zadoks
53c14e139f
Parse ACL tokens for the catalog register/deregister endpoints
...
Fix #1738
2016-05-17 13:16:33 -04:00
James Phillips
ffcba3df58
Merge pull request #2028 from hashicorp/f-atomic-kv
...
Adds support for atomic transactions spanning multiple KV entries.
2016-05-15 13:46:05 -07:00
Sean Chittenden
d25ab4440d
Remove completely unused structs
2016-05-15 09:14:36 -07:00
Sean Chittenden
b20f86b4c7
Speling police
2016-05-15 09:13:52 -07:00
James Phillips
c786e1d457
Reduces the number of operations in a transaction to 64.
2016-05-14 21:40: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
77ae55c692
Adds some size limiting features to transactions to help prevent abuse.
2016-05-13 13:39:01 -07:00
James Phillips
2649a6336e
Adds a read-only optimized path for transactions.
2016-05-13 00:34:05 -07:00
James Phillips
2ed48480e9
Hoists KV processing helper functions up as static functions.
2016-05-12 16:10:06 -07:00
Justin Lambert
1c8d20ba6a
allow automatically discovering aws ec2 consul servers
2016-05-11 19:41:41 -06: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
54b930103c
Terminates pretty responses with a newline.
2016-05-10 20:02:36 -07:00
James Phillips
15a331d36c
Adds unit tests for HTTP endpoint.
2016-05-10 12:59:34 -07:00
Evan Gilman
bf2760ac18
Enable Stale mode for watchers
...
Solves https://github.com/hashicorp/consul/issues/917 by giving consul
watch a `-stale` flag
2016-05-10 00:09:15 -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
b34b1f85aa
Include the current version along side the available version.
...
When checkpoint emits a log message indicating an agent is out of
date, include the current version along with the available version
according to checkpoint.
Inspired by: log output in #993
2016-05-04 22:57:44 -07:00
James Phillips
0f7f07d2f5
Fixes some bad error returns in the persist service and check paths.
2016-04-26 15:03:26 -07:00
James Phillips
03b0c196e0
Merge pull request #1762 from mshean/script-timeout
...
Add Timeout field to CheckMonitor
2016-04-24 23:08:06 -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
6182a34600
Merge pull request #1935 from hashicorp/f-reap-time
...
Makes reap time configurable for LAN and WAN.
2016-04-20 13:50:21 -07:00
James Phillips
bc6efbae18
Sets an anti-footgun floor for the configurable reap time.
2016-04-20 13:49:51 -07:00
Matt Shean
7e617d6086
add Timeout field to CheckMonitor
2016-04-20 11:41:30 -07:00
Ryan Uber
9e82074f49
agent: limit HTTP check output to 4k
2016-04-14 14:28:07 -07:00
James Phillips
79153c3014
Merge pull request #1884 from mtchavez/1541-data-dir-perms
...
command: Data directory permission error message
2016-04-12 22:06:49 -07:00
James Phillips
422adaf168
Makes a detached copy of the tags when doing the override.
2016-04-11 14:53:18 -07:00
James Phillips
50e1d661ad
Tweaks comment about side effects.
2016-04-11 08:58:17 -07:00
James Phillips
32389a9822
Makes reap time configurable for LAN and WAN.
2016-04-11 00:38:25 -07:00
James Phillips
c1c8a0b70c
Merge pull request #1934 from hashicorp/b-check-output
...
Syncs a check's output with the catalog when output rate limiting isn't in effect.
2016-04-11 00:37:50 -07:00
James Phillips
9773cc28ca
Uses the HealthCheck Clone() method in local_test.go.
2016-04-11 00:20:24 -07:00
James Phillips
3f340716fd
Adds a clone method to HealthCheck and uses that in local.go.
2016-04-11 00:05:39 -07:00
James Phillips
f6fe6a2197
Syncs a check's output with the catalog when output rate limiting isn't in effect.
2016-04-10 21:20:39 -07:00
Alex Myasoedov
b89c2063bd
#1878 Set default bind address to 127.0.0.1 in development mode
2016-04-07 21:25:33 +03:00
James Phillips
07e7d551f9
Removes a bogus warning for Windows.
2016-04-05 18:04:23 -07:00
James Phillips
419a90031f
Updates static assets to pull in #1702 .
2016-04-04 12:21:23 -07:00
Sean Chittenden
80cfe3d1ab
Clean up verifyUniqueListners
...
The first pass over this was a hackjob in the sense that it was not elegant. Fixed.
Pointed out by: subcionscious in the middle of the night
2016-04-04 11:03:49 -07:00
Chavez
f75c0f4390
Retry http server connecting in agent/http_test
2016-04-01 19:17:38 -07:00
Chavez
09f962a75b
Test agent RPC client connection retries
2016-04-01 19:17:38 -07:00
Chavez
10f297e8fc
command: Data directory permission error message
...
* Check for invalid data directory permissions
* Display appropriate permissions error message
* Add command test for bad data directory permissions
2016-04-01 19:17:38 -07:00
Sean Chittenden
fca71e1974
Rely exclusively on error to signal failure
...
Pointed out by: slackpad
2016-04-01 10:34:45 -07:00
Sean Chittenden
4660cb969f
Print a helpful message re: duplicate addresses
...
IP sockets provide nice endpoints where the kernel will fail to bind and will error out saying socket already in use. UNIX sockets, however, don't enjoy this nice property when cleaning up stale sockets on listen. Given the number of addresses in Consul, provide operators with a helpful message that indicates the source of the reused address.
Before this fix, it was possible for the HTTP socket to unlink the RPC socket, leading to confusing blocked behavior when running commands like `consul info`.
```
% cat tmp.config.json
{
"addresses": {
"http": "unix:///tmp/.consul.sock",
"rpc": "unix:///tmp/.consul.sock"
},
"unix_sockets": {
"mode": "0700"
}
}
% consul agent -config-file tmp.config.json -advertise=127.0.0.1 -data-dir=/tmp/
==> All listening endpoints must be unique: HTTP address already configured for RPC
Exit 1
```
2016-04-01 10:20:45 -07:00
Sean Chittenden
9eaffc456f
skip_leave_on_int's default changes based on agent mode
...
`skip_leave_on_int`'s behavior now changes based on whether or not the agent is acting as a client or server.
Fixes: 1687
2016-03-31 17:45:14 -07:00
Sean Chittenden
08aa037dd3
Guard against a node name containing pure whitespace for real
2016-03-31 15:10:19 -07:00
Sean Chittenden
faa2aa4436
Guard against a node name containing pure whitespace
2016-03-31 15:02:58 -07:00
Sean Chittenden
c03d025903
Node names are not allowed to be empty
2016-03-31 14:47:55 -07:00
Sean Chittenden
85c1da796d
Change tests to accept an "at least this many" answers semantic
...
The size of answers vary based on the target platform. Accomodate this variance.
2016-03-30 11:48:32 -07:00
Sean Chittenden
12f1a71f00
Fix tests
...
I'm not sure how I thought this passed last night, it was obviously wrong.
2016-03-30 10:16:05 -07:00
Sean Chittenden
1bcf8d9b33
Editorialize the comment re: UDPAnswerLimit
...
Prodded by: slackpad & fusiondog
2016-03-30 01:15:40 -07:00
Sean Chittenden
9d7a6d895a
Use table-driven test for response limits
...
Much more exhaustive testing and shows where the limits are of the 512B limitation (quering by ID is less space efficient than querying by just a prepared query or service).
2016-03-30 01:05:49 -07:00
Sean Chittenden
49f8b147b8
Remove duplicate paste-o
...
Pointed out by: slackpad
2016-03-29 23:31:31 -07:00
Sean Chittenden
8f7bed30a6
Test services and PQT limits
2016-03-29 23:08:58 -07:00
Sean Chittenden
6392dfe0e3
Improve the use of constants across DNS tests
2016-03-29 23:08:40 -07:00
Sean Chittenden
b2e0baec4e
Use a non-default config value
2016-03-29 23:06:31 -07:00
Sean Chittenden
fbf1e5c939
Test missing config inputs
...
Alpha sort where appropriate to make it easier to keep in sync in the future.
2016-03-29 23:06:17 -07:00
Sean Chittenden
c3dcd9acfb
Correctly detect that an answer has been truncated
2016-03-29 19:52:31 -07:00
Sean Chittenden
0ad4fab7d4
Remove dead and incorrect code
...
This functionality is handled further upstream in `trimUDPAnswers()`
2016-03-29 19:38:26 -07:00
Sean Chittenden
d1166307aa
Trim UDP responses per configuration
2016-03-29 19:27:21 -07:00
Sean Chittenden
a29f6e8c8f
Allow adjusting the number of DNS records in a response...
...
Based on work done by @fusiondog in #1583 , extend the concept to use an integer instead of a boolean.
Fixes : #1583 && #1481
2016-03-29 19:23:56 -07:00
Patrick Feliciano
e533f9bce1
Adding singleton option to DNS for getaddrinfo bug.
2016-03-29 19:23:07 -07:00
Sean Chittenden
74c8da079e
Fix whitespace alignment in a comment
2016-03-23 16:00:39 -07:00
James Phillips
2c61c1d333
Merge pull request #1861 from hashicorp/b-flaky-test
...
Widens coordinate update sleeps in unit tests.
2016-03-21 18:24:05 -07:00
James Phillips
4629871f57
Widens coordinate update sleeps in unit tests.
2016-03-21 18:23:11 -07:00
Hrishikesh Barua
bcca7efe83
Added help text for -dev option #1804
2016-03-21 17:27:57 +05:30
James Phillips
13b8ce0adc
Merge pull request #1851 from hashicorp/f-ipv6-bind
...
Allow [::] as a bind address (binds to first public IPv6 address)
2016-03-19 16:16:19 -07:00
Wim
508bc796a8
Allow [::] as a bind address (binds to first public IPv6 address)
2016-03-18 23:59:44 +01:00
Miquel Sabaté Solà
79d49336a8
Used 'unconvert' to remove unneeded conversions
...
I've removed unneeded conversions by performing the following commands:
$ go get -u github.com/mdempsky/unconvert
$ go list ./... | grep -v vendor | xargs unconvert -apply
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
2016-03-18 16:12:56 +01:00
Miquel Sabaté Solà
314a0913e2
command: deprecated the -dc flag in the agent CLI
...
The `-dc` flag from the agent CLI command has been deprecated in favor of
`-datacenter`. This is done this way because:
- Other CLI commands used `-datacenter`. See: event, exec and watch.
- The agent configuration file uses `datacenter`.
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
2016-03-18 15:44:35 +01:00
James Phillips
dda84c0f58
Merge pull request #1819 from hashicorp/f-check-accept
...
Adds default set of accept headers for HTTP checks.
2016-03-09 21:12:25 -08:00
James Phillips
30dba02fa3
Adds default set of accept headers for HTTP checks.
2016-03-09 21:11:20 -08:00
James Phillips
b132e8f21b
Tweaks algorithm so it's safe with an empty list and adds a PQ test.
2016-03-08 23:09:09 -08:00
Igor Dubinskiy
f4edb28ef3
Make sure UDP DNS responses aren't larger than allowed
2016-03-07 16:41:17 -08:00
James Phillips
cb1bf35ce9
Updates to latest compiled ui assets.
2016-03-07 13:49:08 -08:00
James Phillips
275c84a0cc
Renames "debug" endpoint and structures to "explain".
2016-03-07 10:45:39 -08:00
James Phillips
8493640b09
Adds a prepared query debug endpoint.
2016-03-07 10:45:39 -08:00
Calvin Leung Huang
f6c1ffa943
Correct the rtt -wan error message
2016-03-04 16:27:30 -05:00
James Phillips
bfe6f073fe
Tweaks formatting of inline output messages.
2016-03-02 19:47:00 -08:00
James Phillips
d709ef537b
Retains the last output when a TTL check times out.
2016-03-02 17:58:01 -08:00
James Phillips
bd4f2ee6b7
Adds a new PUT-based TTL check update endpoint.
2016-03-02 17:54:01 -08:00
Stefan Engstrom
b20278cadc
add accept header */* for agent check
2016-02-19 10:31:00 -06:00
James Phillips
a29c1ee04e
Merge pull request #1703 from alistanis/fix-issue-#1661
...
fixes issue #1661 and adds supporting test
2016-02-16 20:13:36 -08:00
James Phillips
cbdff8296f
Fixes redirect from / to /ui when internal UI is enabled.
2016-02-12 16:11:32 -08:00
Chris Cooper
1327d9eff6
add missing test
2016-02-09 10:49:41 -05:00
Chris Cooper
a2533d5d76
fixes issue #1661 and adds supporting test
2016-02-09 10:35:39 -05:00
James Phillips
968bd6321c
Adds a sanity check to the local node info compare.
2016-02-07 15:07:23 -08:00
James Phillips
9fabd05157
Merge pull request #1698 from hashicorp/pr-1547-slackpad
...
Implements WAN address translation.
2016-02-07 14:26:04 -08:00
James Phillips
6797b3ee85
Adds a test to make sure we get the local address within the DC.
2016-02-07 14:16:15 -08:00
James Phillips
3be9f16030
Increases wait to account for random stagger.
2016-02-07 13:56:45 -08:00
James Phillips
a61a7403a7
Factors address translation into a single function.
2016-02-07 13:39:37 -08:00
James Phillips
f163522f0c
Moves tagged wan address to be managed by anti-entropy, not serf.
2016-02-07 13:12:42 -08:00
James Phillips
81e416e70b
Adds a test to make sure the local sync doesn't clobber tagged addresses.
2016-02-07 11:26:19 -08:00
James Phillips
79bd1fd4bb
Sets up config for more address tags down the road, renames struct members.
2016-02-07 10:37:34 -08:00
Evan Gilman
71cf39b5f8
Use a map for additional node addresses
2016-02-06 23:01:45 -08:00
Evan Gilman
a8fd9542dc
Add tests for consul WAN translation
2016-02-06 23:01:45 -08:00
Evan Gilman
28ce1b079f
Explicitly set advertise address in agent tests
...
Otherwise, the tests will fail when run on a machine with multiple
private addresses
2016-02-06 23:01:45 -08:00
Evan Gilman
d18dc81749
Consider WAN addresses during Node and SRV record lookup
2016-02-06 23:01:45 -08:00
Evan Gilman
0b741350b9
Implement `translate_wan_addrs` config option
...
This knob tells consul whether it should prefer the WAN address (if set)
when making service lookups in remote datacenters. This enables
reachability for remote services which are behind a NAT.
2016-02-06 23:01:45 -08:00
Evan Gilman
d123b4dece
Rectify value of `AdvertiseAddrWan` when set elsewhere
...
`AdvertiseAddrs` has been introduced as a configuration option, which
duplicates a few other options, namely `AdvertiseAddrWan`. We need to
use this value elsewhere, so rather than doing a precedence check every
time we need to access it, rectify the value of `AdvertiseAddrWan` to
match
2016-02-06 23:01:45 -08:00
James Phillips
1a828e3927
Store WanAddress during Service/Check sync
2016-02-06 23:01:45 -08:00
James Phillips
5aedfbac34
Merge pull request #1690 from alistanis/use-http-package-statuses
...
refactors http server error codes
2016-02-06 22:38:48 -08:00
James Phillips
a599e88507
Merge pull request #1284 from nbrownus/telemetry
...
Option to disable hostnames from telemetry
2016-02-06 22:00:14 -08:00
David Wittman
0b90de4d1b
Fix formatting in exec help
...
The description for `-node` was separated by tabs instead of spaces,
causing it to be incorrectly aligned.
2016-02-06 12:28:56 -06:00
James Phillips
7273fb0470
Merge pull request #1654 from ryanslade/invalid-check-message
...
Updated invalid check error message.
2016-02-05 17:21:29 -08:00
Chris Cooper
de4129fced
Merge branch 'master' of https://github.com/alistanis/consul into use-http-package-statuses
2016-02-05 17:30:43 -05:00
Chris Cooper
0ce79f8198
add comment codes
2016-02-05 17:06:42 -05:00
Chris Cooper
4890220929
refactors http server error codes to use the http statuses defined in the http package instead of literals
2016-02-05 16:51:31 -05:00
Sean Chittenden
5ac7b893cc
Use panic instead of returning a sentinel UUID values in unit tests
2016-02-01 16:42:04 -08:00
Sean Chittenden
c470553b6b
Factor out duplicate functions into a lib package
...
Consolidate code duplication and tests into a single lib package. Most of these functions were from various **/util.go functions that couldn't be imported due to cyclic imports. The consul/lib package is intended to be a terminal node in an import DAG and a place to stash various consul-only helper functions. Pulled in hashicorp/go-uuid instead of consolidating UUID access.
2016-01-29 16:57:45 -08:00
Nate Brown
541a98c9c7
Option to disable hostnames from telemetry
2016-01-29 13:44:48 -08:00
Ryan Slade
37c7a0e006
Updated invalid check error message.
...
Added some of the newer reasons this error could have occured.
2016-01-28 11:02:00 +02:00
James Phillips
0fcdd37107
Fixes the static asset generator for new pkg path, updates assets.
2016-01-15 10:21:42 -08:00
Seth Vargo
dc9131a732
Use HTTPS + www. where appropriate
2016-01-13 17:44:01 -05:00
James Phillips
b21ef7330f
Merge pull request #1592 from hashicorp/b-reap
...
Adds support for the reap lock.
2016-01-13 09:37:54 -08:00
James Phillips
d22fe5ba62
Adds support for the reap lock.
2016-01-12 21:10:25 -08:00
Matt McCoy
f8a6b6db83
Add consul agent help for advertise-wan
2016-01-11 14:27:54 -05:00
James Phillips
6dd0835319
Makes the timeout behavior more intuitive.
...
Previously, it would try once "up to" the timeout, but in practice it would
just fall through. This modifies the behavior to block until the timeout has
been reached.
2016-01-06 09:40:20 -08:00
James Phillips
87dd758199
Defaults monitor retries to 3 retries @ 1s for the consul lock command.
2016-01-05 18:34:22 -08:00
James Phillips
9323276b58
Adds monitor retries to the consul lock command.
2016-01-05 18:22:36 -08:00
James Phillips
3348cf4c0b
Adds "try" support to locks and semaphores.
2016-01-05 18:22:36 -08:00
James Phillips
df361afed5
Merge pull request #1550 from hashicorp/f-devmode
...
Add a `-dev` mode for easy prototyping
2016-01-05 10:01:41 -08:00
Philippe M. Chiasson
e308bc3733
remove address splitting
2016-01-05 11:49:40 -05:00
Philippe M. Chiasson
6f316138d3
Move logged client IP to the end of the log message
2015-12-30 15:39:34 -05:00
Philippe M. Chiasson
8e938d4d38
Merge branch 'master' of http://github.com/hashicorp/consul into issue/1447/http-access-logs
2015-12-30 15:38:30 -05:00
Ryan Uber
f37c0facbe
agent: enable ui for dev mode
2015-12-26 20:39:42 -05:00
Ryan Uber
ce4cf8a542
consul: dev mode works
2015-12-26 20:19:36 -05:00
Ryan Uber
b04510f934
agent: update assetfs output
2015-12-24 22:21:34 -05:00
Ryan Uber
52ad989405
agent: static UI is configurable
2015-12-24 22:21:34 -05:00
Ryan Uber
86f76205aa
agent: initial web assets
2015-12-24 22:21:34 -05:00
Ryan Uber
a262115679
agent: compile web assets into consul binary
2015-12-24 22:21:34 -05:00
Philippe M. Chiasson
b8f8861d97
Merge branch 'master' of http://github.com/hashicorp/consul into issue/1447/http-access-logs
2015-12-22 14:55:18 -05:00
James Phillips
4dd7a5fbaa
Adds a Bool helper function.
2015-12-22 10:43:32 -08:00
James Phillips
d71036c4f0
Moves logger down where it's used for reaping.
2015-12-22 10:29:55 -08:00
James Phillips
e1d456a079
Changes sense of option to "reap" and uses nil for "not set".
2015-12-22 10:28:10 -08:00
James Phillips
1e4aa28c9d
Adds child process reaping when Consul is running as PID 1.
2015-12-21 21:47:35 -08:00
James Phillips
874d491ade
Converts the DNS metric to a gauge which gives us a count and a time.
2015-12-21 18:25:09 -08:00
James Phillips
9e0ac674c3
Adds telemetry on number of DNS queries served, per-agent.
2015-12-21 17:01:28 -08:00
WangFenjin
dcecbf4653
Fix typo
2015-12-08 17:45:01 +08:00
James Phillips
b87aeec4e1
Removes the GOMAXPROCS warnings which are obsolete for Go 1.5+.
2015-11-25 17:59:16 -08:00
Philippe M. Chiasson
396df9a0c1
Add client ip to http access logs
...
Fixes #1447
2015-11-24 15:06:33 -05:00
James Phillips
23536f2b97
Adds Docker checks support to client API.
...
Also changed `DockerContainerId` to `DockerContainerID`, and updated the agent
API docs to reflect their support for Docker checks.
2015-11-18 07:40:02 -08:00
James Phillips
573f48ed3d
Breaks up huge HTTP endpoint functions.
2015-11-17 09:16:04 -08:00
James Phillips
a364a02da6
Avoids taking the length again when parsing DNS queries.
2015-11-17 08:40:47 -08:00
James Phillips
a1e02996e5
Moves conversion of nil slices up to HTTP layer for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
267c352c6d
Adds a test to make sure a stale retry terminates.
2015-11-15 17:06:00 -08:00
James Phillips
e6ccf5b9ed
Returns a 404 from a get or execute of a nonexistent query.
2015-11-15 17:06:00 -08:00
James Phillips
c9ef552385
Plumbs the service name back and uses agent-specific TTL settings as a fallback.
2015-11-15 17:06:00 -08:00
James Phillips
cad6938474
Adds unit tests for prepared queries and DNS, using existing tests for equivalence.
2015-11-15 17:06:00 -08:00
James Phillips
f9c91479ef
Adds DNS support for prepared queries (needs tests).
2015-11-15 17:06:00 -08:00
James Phillips
38daaea503
Adds a slightly more flexible mock system so we can test DNS.
2015-11-15 17:06:00 -08:00
James Phillips
978fb443a7
Adds a note about obfuscating query name/ID from the logs.
2015-11-15 17:06:00 -08:00
James Phillips
124410b66c
Adds an HTTP endpoint for prepared queries.
2015-11-15 17:06:00 -08:00
James Phillips
a33e35fcce
Moves DNS over to new shuffle and filter functions.
2015-11-15 17:06:00 -08:00
James Phillips
763d5ea8a7
Fixes nil slices from HTTP endpoints.
...
These would manifest in the HTTP output as Javascript nulls instead of
empty lists, so we had unintentionally changed the interface while
porting to the new state store. We added code to each HTTP endpoint to
convert nil slices to empty ones so they JSON-ify properly, and we added
tests to catch this in the future.
2015-11-14 21:05:37 -08:00
James Phillips
a384baf671
Merge pull request #1293 from talwai/master
...
Add options to send telemetry to DogStatsD
2015-11-13 09:51:50 -08:00
talwai
01ccad69a1
Kill unused import in command.go
2015-11-13 11:14:15 -05:00
James Phillips
67408fe477
Fixes unit test fail due to expected truncated message.
2015-11-12 18:16:44 -08:00
talwai
e6e842d9e7
Add DogStatsd configuration
2015-11-11 14:30:36 -05:00
James Phillips
9107521c17
Fixes a go vet finding.
2015-10-29 12:47:20 -07:00
James Phillips
eb4bfa3411
Prevents agents from considering Raft information when doing sync checks.
2015-10-28 14:32:00 -07:00
James Phillips
c1305a08ea
Makes the version upshift code look at the correct version field.
2015-10-27 14:44:34 -07:00
Diptanu Choudhury
3b5eefb713
Merge pull request #1343 from hashicorp/f-docker-check
...
Docker Support for Consul Health Checks
2015-10-26 21:00:48 -07:00
Diptanu Choudhury
fb0cae7320
Forcing the Env variable to empty while testing the default shell logic
2015-10-26 20:35:13 -07:00
Diptanu Choudhury
9070d12b2f
Added a test for selecting shell from env
2015-10-26 20:21:50 -07:00
Diptanu Choudhury
8af6ac8f16
Making an explicit check to test whether a check is of type Monitor
2015-10-26 19:52:32 -07:00
Diptanu Choudhury
f8a03508ad
Fixed the tests
2015-10-26 18:20:02 -07:00
Diptanu Choudhury
15ff470a79
Added a test to check if we are properly truncating docker exec outputs
2015-10-26 18:06:55 -07:00
Diptanu Choudhury
709b518d03
Added a test for exit code 1 with docker exec
2015-10-26 16:58:09 -07:00
Diptanu Choudhury
c8c08586f0
Fixed the Fake Docker client to simulate Exec start failures
2015-10-26 16:54:51 -07:00
Diptanu Choudhury
fd6d57ccac
Not adding the docker check if we couldn't create the client
2015-10-26 16:45:12 -07:00
Diptanu Choudhury
210b968037
Making sure the script is not empty if it's a docker check
2015-10-26 16:27:48 -07:00
Diptanu Choudhury
0a657b2602
Updated the comment for CheckType
2015-10-26 15:28:13 -07:00
Diptanu Choudhury
2276ebc978
Collect and truncate the output from docker exec
2015-10-26 15:19:35 -07:00
Diptanu Choudhury
0de0abcaec
Defaulting to Monitor check
2015-10-26 15:02:23 -07:00
Diptanu Choudhury
d2bd1b0c3f
Extracted the logic of figuring out the shell and fixing the logic to find out if the check is a Docker check
2015-10-26 15:00:34 -07:00
Diptanu Choudhury
f445318732
Added some tests for docker check
2015-10-26 12:59:40 -07:00
James Phillips
b50b0a8526
Merge pull request #1296 from hashicorp/f-fast-sync
...
agent: remove an N^2 check. See #1265
2015-10-26 11:37:52 -07:00
Diptanu Choudhury
d478fa9470
Marking the state of a service as critical if the Docker Daemon doesn't respond while running checks
2015-10-26 11:16:11 -07:00
Diptanu Choudhury
b35836fdad
Adding a debug log to indicate the exit code of failed check
2015-10-26 10:35:51 -07:00
Diptanu Choudhury
1b1518512c
Registering the Exec with Docker Daemon everytime the check is invoked
2015-10-26 10:23:57 -07:00
Diptanu Choudhury
c4b85010fb
Implemented Docker health checks
2015-10-26 10:23:57 -07:00
James Phillips
2a51d55ce3
Runs go fmt (sorts new go-cleanhttp imports).
2015-10-23 17:14:35 -07:00
James Phillips
b91e2d3a97
Completes rebase of network coordinates to new memdb.
2015-10-23 15:23:01 -07:00
James Phillips
b9732e3c39
Gives RTT class a more Go-like name.
2015-10-23 15:23:01 -07:00
James Phillips
c48e3e1179
Defaults second node to agent if not given. Removes -short option and tweaks output formatting.
2015-10-23 15:23:01 -07:00
James Phillips
a51e170eef
Cleans up after code review, adds a -short option to "consul rtt" command.
2015-10-23 15:23:01 -07:00
James Phillips
43df5c6784
Adds a "consul rtt" command.
2015-10-23 15:23:01 -07:00
James Phillips
aea2194ce3
Makes the default protocol 2 and lets 3 interoperate with 2.
2015-10-23 15:23:01 -07:00
James Phillips
baa223ab4a
Runs go fmt after latest rebase.
2015-10-23 15:23:01 -07:00
James Phillips
8e67c37398
Adds a test for the `DisableCoordinate` config.
2015-10-23 15:23:01 -07:00
James Phillips
3f11bfaea4
Adds coordinate of agent to self endpoint.
2015-10-23 15:23:01 -07:00
James Phillips
a74bdcba49
Moves sorting up into coordinate endpoint HTTP handlers.
2015-10-23 15:23:01 -07:00
James Phillips
0e7d5871c5
Installs a friendly handler for coordinate endpoints when coordinates are disabled.
2015-10-23 15:23:01 -07:00
James Phillips
def8c6087d
Fixes config merge fn for disabling coordinates and adds it to JSON.
2015-10-23 15:23:01 -07:00
James Phillips
a2bcef00a0
Adds endpoints for raw network coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
fecd639b02
Changes ?near=self to a safer ?near=_agent, which is also clearer about what it does.
2015-10-23 15:23:01 -07:00
James Phillips
ee1cf1e13b
Adds distance sorting to health endpoint. Cleans up unit tests.
2015-10-23 15:23:01 -07:00
James Phillips
1724b9a6be
Adds a magic "self" node name to distance queries.
2015-10-23 15:23:01 -07:00
James Phillips
59b710894d
Adds tests for HTTP interface. Removes a stray mark.
2015-10-23 15:23:01 -07:00
James Phillips
b63909cf67
Adds coordinate sorting support to catalog queries for nodes and service nodes.
2015-10-23 15:23:01 -07:00
James Phillips
d7bac0e808
Turns down the coordinate sync rate a bit more.
2015-10-23 15:23:01 -07:00
James Phillips
9ba9a708f6
Scales coordinate sends to hit a fixed aggregate rate across the cluster.
2015-10-23 15:23:01 -07:00
James Phillips
d8b8a3719f
Simplifies the batching function and adds some comments.
2015-10-23 15:23:01 -07:00
James Phillips
f71c79c53f
Does some small cleanups based on PR feedback.
...
* Holds coordinate updates in map and gets rid of the update channel.
* Cleans up config variables a bit.
2015-10-23 15:23:01 -07:00
James Phillips
1222772452
Hardens Consul from bad coordinates from other nodes.
2015-10-23 15:23:01 -07:00
James Phillips
acb0dce829
Moves batching down into the state store and changes it to fail-fast.
...
* A batch of updates is done all in a single transaction.
* We no longer need to get an update to kick things, there's a periodic flush.
* If incoming updates overwhelm the configured flush rate they will be dumped with an error.
2015-10-23 15:23:01 -07:00
James Phillips
b6c31bdf2f
Flips the sense of the coordinate enable option.
2015-10-23 15:23:01 -07:00
James Phillips
9c069c5031
Removes one more WAN leftover.
2015-10-23 15:23:01 -07:00
James Phillips
edb9a119e2
Does a clean up pass on the Consul side.
2015-10-23 15:23:01 -07:00
James Phillips
ac4185b888
Merges config changes after rebase.
2015-10-23 15:23:01 -07:00
Derek Chiang
139c9240ea
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
840474f170
Add a test case
2015-10-23 15:23:01 -07:00
Derek Chiang
23c08aeeb4
Use IndexedCoordinate instead
2015-10-23 15:23:01 -07:00
Derek Chiang
530e73212a
Some fixes
2015-10-23 15:23:01 -07:00
Derek Chiang
2ef802b8b3
Fix a comment
2015-10-23 15:23:01 -07:00
Derek Chiang
b2cff43bb5
Complete logic for sending coordinates
2015-10-23 15:23:01 -07:00
Derek Chiang
66b210afcb
Some fixes
2015-10-23 15:23:01 -07:00
Derek Chiang
b5bbe2bcfa
Adding tests and stuff
2015-10-23 15:23:01 -07:00
Armon Dadgar
d035dbd43b
Merge pull request #1318 from daveadams/f-http-header-token
...
Allow specifying Consul token in an HTTP request header
2015-10-22 13:33:47 -07:00
Jeff Mitchell
9267f956a2
Update cleanhttp repo location
2015-10-22 14:14:22 -04:00
Jeff Mitchell
06bb9d5f36
Use cleanhttp to get rid of DefaultTransport
2015-10-22 10:47:50 -04:00
David Adams
5f175add40
Add HTTP request header X-Consul-Token
...
Add support for an X-Consul-Token HTTP request header to specify the
token with which this request should be fulfilled. The header would have
precedence over the responding Agent's default token, but would have
lower precedence than a token specified in the query string.
2015-10-19 11:26:01 -05:00
James Phillips
263c7e3fd3
Deletes the old state store and all its accoutrements.
2015-10-15 14:59:09 -07:00
James Phillips
bcdabe4606
Knocks out the Raft indexes before doing compare.
2015-10-15 14:59:09 -07:00
James Phillips
cbcd977a39
Gets new structs changes to compile, adds some corner case handling and extra unit tests.
2015-10-15 14:59:09 -07:00
Ryan Uber
b46f878747
Merge pull request #1309 from hashicorp/f-remove-migrate
...
Removes consul-migrate for 0.6
2015-10-15 14:50:19 -07:00
Jeff Mitchell
9cddc187b5
Don't use http.DefaultClient
...
Two of the changes are in tests; the one of consequence is in the API.
As explained in #1308 this can cause conflicts with downstream programs.
Fixes #1308 .
2015-10-15 17:49:35 -04:00
Ryan Uber
aba1b26015
agent: consolidates data dir checker
2015-10-15 14:21:35 -07:00
Ryan Uber
8bc51eb237
agent: test mdb dir protection
2015-10-15 14:15:41 -07:00
Ryan Uber
2a7609d6bc
agent: remove migrator, refuse to start if mdb dir found
2015-10-15 14:15:08 -07:00
Armon Dadgar
0b77960349
agent: remove an N^2 check. See #1265
2015-10-12 20:30:11 -07:00
Michael Puncel
a94589ad67
Add http method to log output
2015-10-02 18:33:06 -07:00
James Phillips
26eadcd95c
Merge pull request #1235 from wuub/master
...
fix conflict between handleReload and antiEntropy critical sections
2015-09-17 07:28:39 -07:00
Wojciech Bederski
9a1b52171f
panic when unbalanced localState.Resume() is detected
2015-09-17 11:32:08 +02:00
Dale Wijnand
c5168e1263
Fix a bunch of typos.
2015-09-15 13:22:08 +01:00
James Phillips
b25797a808
Merge pull request #1187 from sfncook/enable_tag_drift_03
...
Enable tag drift 03
2015-09-11 15:35:32 -07:00
Anthony Scalisi
8d733b7fca
remove various typos
2015-09-11 12:29:54 -07:00
Wojciech Bederski
4cd1b09ad7
make Pause()/Resume()/isPaused() behave more like a semaphore
...
see: https://github.com/hashicorp/consul/issues/1173 #1173
Reasoning: somewhere during consul development Pause()/Resume() and
PauseSync()/ResumeSync() were added to protect larger changes to
agent's localState. A few of the places that it tries to protect are:
- (a *Agent) AddService(...) # part of the method
- (c *Command) handleReload(...) # almost the whole method
- (l *localState) antiEntropy(...)# isPaused() prevents syncChanges()
The main problem is, that in the middle of handleReload(...)'s
critical section it indirectly (loadServices()) calls AddService(...).
AddService() in turn calls Pause() to protect itself against
syncChanges(). At the end of AddService() a defered call to Resume() is
made.
With the current implementation, this releases
isPaused() "lock" in the middle of handleReload() allowing antiEntropy
to kick in while configuration reload is still in progress.
Specifically almost all services and probably all check are unloaded
when syncChanges() is allowed to run.
This in turn can causes massive service/check de-/re-registration,
and since checks are by default registered in the critical state,
a majority of services on a node can be marked as failing.
It's made worse with automation, often calling `consul reload` in close
proximity on many nodes in the cluster.
This change basically turns Pause()/Resume() into P()/V() of
a garden-variety semaphore. Allowing Pause() to be called multiple times,
and releasing isPaused() only after all matching/defered Resumes() are
called as well.
TODO/NOTE: as with many semaphore implementations, it might be reasonable
to panic() if l.paused ever becomes negative.
2015-09-11 18:28:06 +02:00
Wojciech Bederski
24ac26b3c1
failing test showing that nested Pause()/Resume() release too early
...
see: #1173 / https://github.com/hashicorp/consul/issues/1173
2015-09-11 17:52:57 +02:00
Shawn Cook
99be758411
Rename EnableTagOverride and update formatting
2015-09-11 08:35:29 -07:00
Shawn Cook
f448a62826
Remove debug lines
2015-09-11 08:32:59 -07:00
Shawn Cook
2f04917261
Merge remote-tracking branch 'hashicorp/master' into enable_tag_drift_03
2015-09-10 14:55:30 -07:00
James Phillips
d00889c3a4
Adds missing token to maint unit test.
2015-09-10 14:53:00 -07:00
Shawn Cook
8a86eee9fb
Add test cases TestAgentAntiEntropy_EnableTagDrift
2015-09-10 14:08:16 -07:00
Ryan Uber
08d12e978f
Merge pull request #1230 from hashicorp/f-maintfix
...
Respect tokens in maintenance mode
2015-09-10 12:30:07 -07:00
Ryan Uber
948bd57d6a
agent: testing node/service maintenance using tokens
2015-09-10 12:08:08 -07:00
Ryan Uber
e129a59316
agent: thread tokens through for maintenance mode
2015-09-10 11:43:59 -07:00
Wim
3d7c3725d8
Allow AAAA queries for nodeLookup
2015-09-08 16:54:36 +02:00
Ryan Breen
d63749b30e
Merge pull request #1217 from 42wim/fix-rfc2308-part3
...
No NXDOMAIN when the answer is empty
2015-09-04 10:42:38 -04:00
Armon Dadgar
56efa4958b
Merge pull request #1214 from zendesk/fix_lock_race_2
...
lock.go: fix another race condition
2015-09-02 16:04:55 -07:00
Wim
2336c6a4bd
No NXDOMAIN when the answer is empty
2015-09-02 16:12:22 +02:00
Ryan Breen
a013095f62
Merge pull request #1167 from railsguru/master
...
Add -http-port option to change the HTTP API port
2015-09-02 01:15:55 -04:00
Armon Dadgar
655666170a
agent: Always enable the UI endpoints
2015-09-01 18:28:32 -07:00
Michael S. Fischer
01ec256c7e
lock.go: fix another race condition
...
The previous fix to `consul lock` (commit 6875e8d) didn't completely
eliminate the race that could occur if the lock was acquired around the
same time SIGTERM was received: It was still possible for
Run() to spawn the process via startChild() after killChild() had
released the shared mutex.
Now, when SIGTERM is received, we acquire a mutex that prevents
spawning a new process and never release it.
We've tested this fix pretty thoroughly and believe it completely
resolves the issue.
2015-09-01 14:27:23 -07:00
Wim
e97973c1e1
Limit the DNS responses after getting the NodeRecords
2015-09-01 23:23:05 +02:00
Ryan Breen
56d2fa4c17
Merge pull request #1195 from 42wim/fix-rfc2308-part2
...
Return SOA/NXDOMAIN when the answer is empty
2015-09-01 17:08:31 -04:00
Wim
b806aceef4
Return SOA/not found when the answer is empty
2015-09-01 22:28:12 +02:00
James Phillips
0f49e1c3a9
Merge pull request #1200 from ryotarai/lock-pass-stdin
...
command/lock: Pass stdin to child process when -pass-stdin passed.
2015-08-31 21:14:45 -07:00
Ryan Uber
d6b71de3f4
agent: reload SCADA client if endpoint changes
2015-08-27 13:29:07 -07:00
Ryan Uber
5bd7a5f239
command: atlas endpoint can be passed
2015-08-27 11:11:05 -07:00
Ryan Uber
cda2bf6975
agent: atlas_endpoint is configurable
2015-08-27 11:08:01 -07:00
Ryota Arai
c45f2971e7
command/lock: Pass stdin to child process when -pass-stdin passed.
2015-08-26 16:27:21 +09:00
Ryan Uber
00d78963bf
agent: log a message when making a new scada connection
2015-08-25 21:03:16 -07:00
Ryan Uber
33cadcf925
agent: don't reload scada client if there is no config change
2015-08-25 20:43:57 -07:00
Ryan Uber
8eea77d58f
agent: testing scada client creation in command
2015-08-25 20:22:22 -07:00
Ryan Uber
495cc41ba4
agent: test scada HTTP server creation
2015-08-25 18:51:04 -07:00
Ryan Uber
e3cd2f2c0d
agent: clean up scada connection manager
2015-08-25 18:27:07 -07:00
Ryan Uber
bc96c14a6f
agent: document the scada http creation func
2015-08-25 17:19:11 -07:00
Ryan Uber
1378fd93b0
agent: scada client and HTTP server are tracked separately
2015-08-25 16:59:53 -07:00
Andy Lo-A-Foe
325b54649a
Remove duplicate code
2015-08-20 20:46:20 +02:00
Andy Lo-A-Foe
3d133ab78c
Use Ports.HTTP directly
2015-08-20 20:27:20 +02:00
Andy Lo-A-Foe
7e2ecf6a3c
Add documentation for http-port option
2015-08-20 20:19:35 +02:00
Shawn Cook
d4ec6aa630
Update tests - NodeService init needs bool
2015-08-20 09:09:26 -07:00
Shawn Cook
854ff1eb41
Add EnableTagDrift logic to command/agent/local.go
2015-08-18 14:03:48 -07:00
Shawn Cook
3a740ac07b
Remove from command/agent/config_test.go
2015-08-18 10:42:25 -07:00
Shawn Cook
f6814c89ed
EnableTagDrift in NodeService struct
2015-08-18 10:34:55 -07:00
Ryan Uber
5024e7c3c7
Merge pull request #1166 from hashicorp/f-dns-log
...
Log network address of DNS clients
2015-08-13 18:32:32 -07:00
Ryan Uber
07299a61dc
agent: log network address of DNS clients
2015-08-11 10:33:27 -07:00
Andy Lo-A-Foe
7a3da7db26
Add -http-port option to change the HTTP API port
...
This is useful when pushing consul to PaaS like
Cloud Foundry making the HTTP API easily routable.
2015-08-11 14:14:21 +02:00
Armon Dadgar
c2a865686c
Merge pull request #1158 from mfischer-zd/fix_1155
...
lock.go: fix race condition
2015-08-05 14:56:13 -07:00
Michael S. Fischer
9e0e9e389d
lock.go: fix race condition
...
Fix a race condition between startChild() and killChild() that could
lead to an orphaned managed process.
Fixes #1155
2015-08-05 09:06:51 -07:00
J.R. Garcia
f95ba4b8eb
Remove trailing slash from lock
...
Lock command will remove trailing slash from path (as it is invalid).
Fixes #1136 .
2015-07-30 12:14:17 -05:00
Ryan Breen
b13ba78651
Merge pull request #1143 from hashicorp/GH-1142
...
Check NXDOMAIN after filtering nodes
2015-07-29 18:56:08 -04:00
Ryan Breen
20f17a0cc8
Test for GH-1142.
2015-07-29 18:21:16 -04:00
Armon Dadgar
0a853bca2e
Merge pull request #1137 from 42wim/fix-1124
...
Recurse when PTR answer is empty
2015-07-29 14:39:04 -07:00
Ryan Breen
dbb5ad1316
Check NXDOMAIN after filtering nodes
...
Move the check for NXDOMAIN below the service health filter.
2015-07-29 17:16:48 -04:00
Ryan Uber
6e38497ce9
Merge pull request #1141 from hashicorp/f-travis
...
Try moving to newer Travis-CI infrastructure
2015-07-28 10:42:56 -07:00
Ryan Uber
f48bc65e62
travis-ci: skip syslog tests for container-based travis infra
2015-07-28 09:58:43 -07:00
Wim
a6734ab4b8
Recurse when PTR answer is empty
2015-07-27 23:22:36 +02:00
Armon Dadgar
2017c95d13
Merge pull request #1130 from pdf/check_socket
...
Add Socket check type
2015-07-27 14:21:24 -07:00
Ryan Uber
6d38027689
Merge pull request #1090 from hashicorp/f-keyring-acl
...
Keyring ACLs
2015-07-24 10:23:18 -07:00
Peter Fern
86edd7169c
Add TCP check type
...
Adds the ability to simply check whether a TCP socket accepts
connections to determine if it is healthy. This is a light-weight -
though less comprehensive than scripting - method of checking network
service health.
The check parameter `tcp` should be set to the `address:port`
combination for the service to be tested. Supports both IPv6 and IPv4,
in the case of a hostname that resolves to both, connections will be
attempted via both protocol versions, with the first successful
connection returning a successful check result.
Example check:
```json
{
"check": {
"id": "ssh",
"name": "SSH (TCP)",
"tcp": "example.com:22",
"interval": "10s"
}
}
```
2015-07-24 14:06:05 +10:00
Ryan Uber
a339ca19a6
agent: disable ACLs for RPC client tests
2015-07-23 17:09:33 -07:00
Armon Dadgar
6f42f6640c
command/lock: Check for shutdown during lock acquisition. Fixes #800
2015-07-22 16:07:44 -07:00
Benjamin Abbott-Scott
eece6e4848
Return every time lock acquisition fails
2015-07-22 10:44:47 -07:00
Ryan Uber
f424f94d45
agent: vet fixes
2015-07-14 11:42:51 -07:00
Ryan Uber
8e834ba976
Merge pull request #995 from 42wim/rfc2308-soa-ttl
...
Send SOA with negative responses (RFC2308)
2015-07-13 08:49:25 -07:00
Ryan Uber
0a09b11cba
agent: testing keyring ACLs
2015-07-07 15:14:06 -06:00
Ryan Uber
e764eb62bd
agent: write-level keyring ACLs work
2015-07-07 10:36:51 -06:00
Ryan Uber
665551a182
agent: read-level keyring ACLs work
2015-07-07 10:30:34 -06:00
Ryan Uber
503fa1eed1
Merge pull request #1046 from hashicorp/f-event-acl
...
Event ACLs
2015-07-02 07:02:07 -07:00
Ryan Uber
715f69cce8
Merge pull request #1004 from i0rek/advertise_addrs
...
Add advertise_addrs.
2015-06-23 12:32:07 -07:00
Hans Hasselberg
4598087df3
Implement advertise_addrs for SerfLan, SerfWan and RPC.
...
Fixes #550 .
This will make it possible to configure the advertised adresses for
SerfLan, SerfWan and RPC. It will enable multiple consul clients on a
single host which is very useful in a container environment.
This option might override advertise_addr and advertise_addr_wan
depending on the configuration.
It will be configureable with advertise_addrs. Example:
{
"advertise_addrs": {
"serf_lan": "10.0.120.91:4424",
"serf_wan": "201.20.10.61:4423",
"rpc": "10.20.10.61:4424"
}
}
2015-06-23 21:23:45 +02:00
Ryan Uber
5866588d68
command: remote exec takes -token parameter
2015-06-22 17:16:28 -07:00
Ryan Uber
1f68b5268b
command: event command supports -token arg
2015-06-22 16:59:41 -07:00
Ryan Uber
5c9cf8cc69
agent: avoid masking errors when ACLs deny a request
2015-06-18 18:13:29 -07:00
Ryan Uber
4a95f29e03
agent: testing user event endpoint ACLs
2015-06-18 18:13:29 -07:00
Ryan Uber
e6923a4832
consul: always fire events from server nodes
2015-06-18 18:13:29 -07:00
Ryan Uber
713f1781c8
agent: enforce event policy during event fire
2015-06-18 18:13:29 -07:00
Wim
e70e57a0dc
Send SOA with negative responses
2015-06-14 00:03:44 +02:00
Ryan Uber
b7674a2d35
Merge pull request #1028 from sebastianmarkow/master
...
Remove unreachable error handling in AgentRPC.listen()
2015-06-12 22:28:10 -07:00
Ryan Uber
b2556bd4d0
agent: testing dns when acls are in use
2015-06-12 16:01:57 -07:00
Ryan Uber
48cb636e8d
agent: dns uses the configured token during queries
2015-06-12 16:01:57 -07:00
Sebastian Klatt
34611c8599
consul: Remove unreachable error handling
2015-06-12 20:21:32 +02:00
Ryan Uber
47073c87c1
agent: don't replace empty tokens in the logs, fixes #1020
2015-06-12 00:11:37 -07:00
Ryan Uber
b5fff74c8a
agent: fix failing test
2015-06-11 15:13:10 -07:00
Ryan Uber
e4f937f71d
agent: use persist/load/purge convention for function names
2015-06-08 09:35:10 -07:00
Ryan Uber
08a12ffd5b
agent: test check state restoration from AddCheck
2015-06-05 17:33:34 -07:00