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
Ryan Uber
bd448d27fe
agent: check state is purged if expired
2015-06-05 16:59:41 -07:00
Ryan Uber
7d8993e0f0
agent: purge check state when checks are deregistered
2015-06-05 16:57:14 -07:00
Ryan Uber
8c9facbff0
agent: testing state persistence, recovery, and expiration
2015-06-05 16:45:05 -07:00
Ryan Uber
f1eb739949
agent: first stab at persisting check state
2015-06-05 16:17:07 -07:00
Ryan Uber
7e82b3c32c
agent: refactor loadChecks/loadServices, fixes a few minor bugs
2015-06-04 14:33:30 -07:00
Ryan Uber
359abdb9a8
agent: don't replace config on SIGHUP if parsing fails
2015-05-30 22:50:24 -07:00
Emil Hessman
c746d218f4
command/agent: skip unix file permissions test on windows
2015-05-29 21:12:45 +02:00
Adam Renberg
263fae2292
Sort members in by name for consul members
2015-05-22 10:37:54 +02:00
Adam Renberg
bec5ce6af9
Sort tags in consul members -detailed output
2015-05-22 10:27:47 +02:00
Ryan Uber
b5cd115795
agent: flush progress info to console during migrations
2015-05-19 18:47:44 -07:00
Anton Lindström
74dd2270af
Set the User Agent for HTTP health checks
2015-05-18 19:12:10 +02:00
Adam Renberg
450f66fd3c
Include DC in the members command output
2015-05-15 23:26:34 +02:00
Ryan Uber
704f6343c3
agent: log a message when data migrations start
2015-05-12 12:58:44 -07:00
Ryan Uber
3ce3c663ad
Fix tests after merge
2015-05-11 18:53:09 -07:00
Armon Dadgar
430100a0c8
Merge pull request #927 from hashicorp/f-tls
...
Add new `verify_server_hostname` to mitigate possibility of MITM
2015-05-11 18:15:16 -07:00
Armon Dadgar
f797130228
Fixing merge conflict
2015-05-11 16:48:10 -07:00
Armon Dadgar
1952083354
agent: copy config into consul config
2015-05-11 15:16:13 -07:00
Armon Dadgar
c8fb9ab369
agent: Adding new VerifyHostname config
2015-05-11 15:13:58 -07:00
Cameron Ruatta
0b9bc7d2f5
Adding documentation about specifying multiple configuration directories
2015-05-11 10:19:04 -07:00
Ryan Uber
d4f805e800
command: fix configtest help format
2015-05-11 09:42:26 -07:00
Ryan Uber
27a4dc868c
Merge pull request #904 from josephholsten/configtest-clean
...
add minimal configtest command
2015-05-11 09:01:54 -07:00
Joseph Anthony Pasquale Holsten
ae3e8d24c4
command/configtest: add
2015-05-08 13:09:50 -07:00
Ryan Uber
d0a28482ff
agent: use service ID field to determine associated health checks during deregister
2015-05-07 15:30:01 -07:00
Ryan Uber
e7b00723f4
agent: restore check status when re-registering (updating) services
2015-05-06 12:28:42 -07:00
Armon Dadgar
e474e34528
Merge pull request #909 from hashicorp/f-create
...
Support ACL upsert behavior
2015-05-06 11:22:11 -07:00
Ryan Uber
ed067fd03c
agent: allow persisted services to be updated on disk
2015-05-05 22:36:45 -07:00
Ryan Uber
9acc42b86e
Merge pull request #891 from hashicorp/f-token
...
ACL tokens for service/check registration
2015-05-05 22:17:31 -07:00
Armon Dadgar
b0fb010c2d
agent: Support ACL upserting
2015-05-05 19:25:10 -07:00
Armon Dadgar
c457b6cb75
agent: Adding test for DNS enable_truncate
2015-05-05 14:14:41 -07:00
Armon Dadgar
0e9718247d
command/agent: Lowercase DC. Fixes #761
2015-05-05 13:56:37 -07:00
Ryan Uber
3c577a0069
agent: use an additional parameter for passing tokens
2015-05-04 17:48:05 -07:00
Armon Dadgar
efaed93b91
Merge pull request #816 from pepov/master
...
Support different advertise address for WAN gossip
2015-05-04 15:40:25 -07:00
Armon Dadgar
bcaca06650
Merge pull request #902 from hashicorp/f-stats-prefix
...
Allow configuring the stats prefix
2015-05-04 15:19:47 -07:00
Armon Dadgar
9498aa9a78
Merge pull request #862 from hashicorp/f-recurse-cname
...
Return all CNAME's during service DNS resolution
2015-05-04 15:19:13 -07:00
Ryan Uber
94f0834d8f
agent: allow configuring the stats prefix
2015-05-03 16:46:20 -07:00
Ryan Uber
2496a70452
agent: more tests
2015-04-28 13:06:02 -07:00
Ryan Uber
67e9a04f48
agent: restore tokens for services and checks in config
2015-04-28 12:44:46 -07:00
Ryan Uber
802b4793df
agent: backwards compat for persisted services from pre-0.5.1
2015-04-28 12:18:41 -07:00
Ryan Uber
f069db21e3
agent: safer read methods for tokens
2015-04-28 11:53:53 -07:00
Ryan Uber
54b5f17629
agent: test coverage loading service/check tokens from persisted files
2015-04-27 22:46:01 -07:00
Ryan Uber
23eab5ebcc
agent: fix deadlock reading tokens from state
2015-04-27 22:26:03 -07:00
Ryan Uber
75d182296f
agent: add service/check token methods to reduce invasiveness
2015-04-27 22:01:01 -07:00
Ryan Uber
30f6f1142e
agent: persist tokens from API registrations
2015-04-27 19:01:02 -07:00
Ryan Uber
545f3db3fe
agent: initial pass threading through tokens for services/checks
2015-04-27 18:33:46 -07:00
artushin
68cb8fda58
remove config
2015-04-24 09:51:40 -05:00
artushin
88bfdd45ef
use existing randomStagger
2015-04-23 17:08:17 -05:00
artushin
1ebc1cf916
add CheckUpdateStagger to MergeConfig
2015-04-23 16:56:20 -05:00
artushin
1e13acba68
adding check_update_stagger
2015-04-23 16:27:42 -05:00
Ryan Uber
cd65aaa2e0
agent: re-work DNS tests to not rely on the external network
2015-04-14 12:52:26 -07:00
Ryan Uber
ed4de526f1
agent: pass through CNAME types for service resolution
2015-04-14 12:52:26 -07:00
Ryan Uber
05194033f8
agent: Add test for CNAME recursion
2015-04-14 12:52:26 -07:00
Ryan Uber
34fc9a37fd
agent: parse raw query URL to avoid closing the request body early
2015-04-13 17:31:53 -07:00
Ryan Uber
adbc5c92c6
agent: hide tokens from logs and monitor
2015-04-12 11:17:31 -07:00
Ryan Mills
370853d7ff
Allow specifying a status field in the agent/service/register and agent/check/register endpoints.
...
This status must be one of the valid check statuses: 'passing', 'warning', 'critical', 'unknown'.
If the status field is not present or the empty string, the default of 'critical' is used.
2015-04-12 02:00:31 +00:00
Ryan Uber
1fad389f23
agent: Don't attempt migration on new server
2015-04-10 19:41:09 -07:00
Ryan Uber
8ebee678cc
Merge pull request #857 from hashicorp/f-boltdb
...
Raft uses BoltDB
2015-04-10 18:30:07 -07:00
Ryan Uber
8af963348c
agent: handle nil node services in anti-entropy
2015-04-10 11:15:31 -07:00
Ryan Uber
4f4f5fa7d5
command: automatically migrate raft data on start
2015-04-09 23:00:20 -07:00
Ryan Uber
c3820b4c28
agent: fix anti-entropy check sync
2015-04-09 10:40:05 -07:00
Ryan Uber
a49fe8931a
agent: test anti-entropy sync
2015-04-08 12:36:53 -07:00
Ryan Uber
80a6d7caca
agent: anti-entropy sync services/checks if they don't exist in the catalog
2015-04-08 12:21:01 -07:00
Ryan Uber
4d950f91cb
agent: fix dns test
2015-04-01 10:58:05 -07:00
Matt Good
755522fa48
Remove unnecessary DNS test entry
...
By using the startup callbacks, the DNS test entry is not needed to check that
the server is alive.
2015-03-31 16:50:44 -07:00
Matt Good
f5d27daf63
Use DNS server startup callbacks
...
Simplify waiting for the DNS server to start with the newer "NotifyStartedFunc"
callback.
2015-03-31 16:48:48 -07:00
pepov
8da6d4f065
add and test -advertise-wan cli flag
2015-03-28 16:08:19 +01:00
pepov
0a04003e16
add AdvertiseAddrWan to TestMergeConfig and use different values for Addr values in b than in a
2015-03-28 16:08:19 +01:00
pepov
e66301ab99
Add configuration option to specify a separate address for advertising on the wan
2015-03-28 16:08:19 +01:00
Michael Fraenkel
c00c4ebaaa
Support SesionTTLMin configuration
...
- Allow setting SessionTTLMin
- Validate on the Server
2015-03-27 05:13:57 -07:00
Johannes 'fish' Ziemke
78cde71a22
Add -domain command line flag to agent
...
This makes it possible to configure the domain on the command line
additionally to the config file.
2015-03-20 16:05:41 +01:00
Ryan Uber
589a4cc4c7
agent: disable HTTP keepalives for checks
2015-03-15 13:30:50 -07:00
Ryan Uber
66d89ab4df
agent: warn and purge checks which cannot be restored from agent state
2015-03-11 16:13:31 -07:00
Ryan Uber
9441b46116
Merge pull request #723 from hashicorp/f-agent-block
...
Block until service/check sync is attempted from /v1/agent API's
2015-02-23 10:56:41 -08:00
Ryan Uber
f7d1397bba
command: clarify -recursor agent arg
2015-02-23 09:33:45 -08:00
Mohammad Zolfaghari
fec46d0559
Support multiple recursor flag
2015-02-21 10:15:52 +03:30
Ryan Uber
4f4b4b0f3e
agent: write API's on /v1/agent block for anti-entropy
2015-02-20 19:43:33 -08:00
Ryan Uber
92794ded6e
agent: fix test compilation
2015-02-20 18:17:12 -08:00
Ryan Uber
a9f23a9154
agent: Better warning for keyring with -encrypt option. Fixes #718 .
2015-02-19 18:51:42 -08:00
Ryan Breen
53afd77e2d
s/data center/datacenter/g
2015-02-19 17:45:47 -05:00
Armon Dadgar
d6e76e5dd4
agent: Cleanup a comment
2015-02-18 16:54:44 -08:00
Armon Dadgar
aadec620ff
agent: Fixing blocking queries on internal endpoints
2015-02-18 15:15:02 -08:00
Armon Dadgar
a446fbd098
agent: Enable UI endpoints for SCADA
2015-02-18 15:15:02 -08:00
Armon Dadgar
760bbd14a5
agent: Do not expose AtlasToken or AtlasACLToken
2015-02-18 15:15:02 -08:00
Armon Dadgar
1738a6b171
agent: Updating for new client API
2015-02-18 15:15:02 -08:00
Armon Dadgar
0c2951c5f9
agent: Test ACL token resolution
2015-02-18 15:12:15 -08:00
Armon Dadgar
8fb86d14ab
agent: Adding SCADA tests
2015-02-18 15:12:15 -08:00
Armon Dadgar
6ee6f67695
agent: Use AtlasACLToken
2015-02-18 15:12:15 -08:00
Armon Dadgar
7ddf87eb54
agent: Rename AtlasCluster to AtlasInfrastructure
2015-02-18 15:12:15 -08:00
Armon Dadgar
269153705b
agent: Fixing setup of SCADA HTTP listener
2015-02-18 15:12:15 -08:00
Armon Dadgar
d9f95e2983
agent: Fixing panic on shutdown
2015-02-18 15:12:15 -08:00
Armon Dadgar
75849d643e
agent: Provide auto-join metadata to SCADA
2015-02-18 15:12:14 -08:00
Armon Dadgar
524bfccc5a
agent: Adding atlas_join configuration
2015-02-18 15:12:14 -08:00
Armon Dadgar
b714144685
agent: SCADA HTTP integration
2015-02-18 15:12:14 -08:00
Armon Dadgar
948f9a0d00
agent: SCADA HTTP listener
2015-02-18 15:12:14 -08:00
Armon Dadgar
08895ce325
agent: Starting SCADA integration
2015-02-18 15:12:14 -08:00
Armon Dadgar
49d11e37f7
agent: Adding Atlas CLI flags
2015-02-18 15:12:14 -08:00
Armon Dadgar
5713006297
agent: Adding new Atlas configs
2015-02-18 15:12:14 -08:00
Armon Dadgar
60f69224ea
agent: Snapshot and restore health state on reload. Fixes #693
2015-02-17 12:00:04 -08:00
Armon Dadgar
ec5ed93c5b
command/exec: Handle a missing key during cancelation. Fixes #626
2015-02-16 14:32:50 -08:00
artushin
ed2837d7d5
oops. DefaultTransport being used.
2015-02-12 10:11:22 -06:00
artushin
4cbf3a037a
close idle connections after stopping http checks to service
2015-02-11 18:29:51 -06:00
Ryan Uber
60dd1a073e
agent: clarify the valid characters for dns
2015-02-09 09:59:27 -08:00
Ryan Uber
5da078f989
agent: warn on service tags with invalid chars
2015-02-09 09:30:06 -08:00
Ryan Uber
fe80d28664
agent: Warn on dns-incompatible characters during service registration. Fixes #683 .
2015-02-09 09:23:17 -08:00
lalyos
865e97c340
fixing version numbers RCs should be labeled x.x.x-rcx
...
see conversation with ryanuber: https://github.com/hashicorp/go-checkpoint/issues/2#issuecomment-73199209
2015-02-09 08:17:30 +01:00
Ryan Uber
d1854d1d91
agent: fix test case examples
2015-02-05 23:29:04 -08:00
Ryan Uber
e6858f158a
Merge pull request #654 from arnaudbriche/http-check-timeout
...
Configurable CheckHTTP timeout
2015-02-05 23:03:39 -08:00
arnaud briche
49a9836be3
- add tests for CheckHTTP with new timeout parameter && CheckType.Timeout parsing
2015-02-02 15:30:44 +07:00
arnaud briche
de96094cb0
- add proper parsing of CheckType.Timeout from string
2015-02-02 15:29:42 +07:00
Ryan Uber
029a6025aa
agent: http checks work inside of service definitions
2015-01-29 12:11:42 -08:00
Ryan Uber
6ecca376e4
agent: pass locally configured token during remote exec
2015-01-29 10:42:46 -08:00
arnaud briche
4d105487a8
- add Timeout field to CheckType and CheckHTTP to make http request timeout configurable by the client
2015-01-29 13:37:48 +07:00
Ryan Uber
9efda655a1
agent: test service/check deletion with empty ID
2015-01-27 21:47:59 -08:00
Ryan Uber
6d27dc3548
Merge pull request #644 from foostan/add_validation_of_deregistration
...
Validate ServiceID/CheckID when deregistering.
2015-01-27 21:39:35 -08:00
foostan
a75b727391
Validation ServiceID/CheckID when deleting in deleteService() in local.go
2015-01-27 18:11:57 +09:00
foostan
99659e9014
Add tests to remove service/check without an ID
2015-01-27 18:10:56 +09:00
foostan
524cb0d0c3
Validate ServiceID/CheckID when deregistering.
2015-01-27 01:06:57 +09:00
Emil Hessman
2a80aacb86
docs: describe child process handling on Windows for lock command
...
Add website documentation for how the lock command handles child
process termination on Windows.
2015-01-25 11:42:29 +01:00
Emil Hessman
c8224b3f94
command: fix Windows build
...
Add a per GOOS implementation to send signals to PIDs
since syscall.Kill does not exist on Windows.
It will always send a SIGKILL on Windows since there
seems to be no POSIX compatible notion.
Fixes build on Windows.
2015-01-25 05:00:52 +01:00
Ryan Uber
dd0c9dfbbc
agent/http: fix service registration with nil checks value
2015-01-23 18:50:51 -08:00
Ryan Uber
068c4137cb
agent/http: clean up socket setup
2015-01-23 17:57:04 -08:00
Ryan Uber
adb3bd4c5e
agent: make check tests more reliable
2015-01-23 16:07:20 -08:00
Ryan Uber
26c9d96ccb
agent: error from KVS endpoint if incompatible flags are passed. Fixes #432
2015-01-23 12:48:39 -08:00
Ryan Uber
15de24c844
agent: more lenient dns response test
2015-01-22 15:31:12 -08:00
Armon Dadgar
e5e519df4b
Merge pull request #625 from hashicorp/f-maintcmd
...
New "maint" command
2015-01-22 11:56:49 -08:00
Ryan Uber
ae672b32f6
command/maint: better arg conflict checking
2015-01-22 11:20:32 -08:00
Ryan Uber
17d2443f91
command/maint: clean up
2015-01-22 11:14:28 -08:00
Ryan Uber
fa19d09390
command/maint: display active maintenance when no args are passed
2015-01-22 10:26:17 -08:00
Armon Dadgar
14d55cb40a
Merge pull request #622 from hashicorp/f-sockets
...
Unix domain sockets
2015-01-21 16:30:03 -08:00
Ryan Uber
8c1c230ce3
agent: use const for default maintenance reason strings
2015-01-21 14:53:52 -08:00
Ryan Uber
5cd8800b60
agent: fix test
2015-01-21 14:12:18 -08:00
Ryan Uber
a51ab988a3
command: more maint command tests
2015-01-21 13:49:10 -08:00
Ryan Uber
a96cfc9cc3
command: test maint command
2015-01-21 13:37:32 -08:00
Ryan Uber
718cd94b50
agent: prevent duplicate error messages for maintenance api
2015-01-21 13:28:26 -08:00
Ryan Uber
8081403ad9
command: maint command works
2015-01-21 13:11:23 -08:00
Ryan Uber
515ef304e0
command: starting maint command
2015-01-21 13:00:14 -08:00
Ryan Uber
d65f4035b9
agent: support passing ?reason= for custom notes field values on maintenance checks
2015-01-21 12:21:57 -08:00
Ryan Uber
40cfd527cb
agent: fix maintenance check ID
2015-01-21 11:03:42 -08:00
Ryan Uber
b71ffb1fa3
agent: change node maintenance endpoint
2015-01-21 10:57:44 -08:00
Ryan Uber
a498433078
agent: use strconv.ParseBool for parsing maintenance enable flag
2015-01-21 09:53:31 -08:00
Ryan Uber
ced676ffc2
agent: comments for new anti-entropy functionality
2015-01-20 21:48:46 -08:00
Ryan Uber
72e750fb00
agent: simplify anti-entropy of services with multiple checks, add tests
2015-01-20 21:48:46 -08:00
Ryan Uber
001d2e246d
agent: only send service with check sync if it is out of sync
2015-01-20 21:48:46 -08:00
Ryan Uber
3b2e9d1b90
agent: refactor syncChecks
2015-01-20 21:48:46 -08:00
Ryan Uber
684474af1d
agent: support adding multiple checks during service registration from the API
2015-01-20 21:48:45 -08:00
Ryan Uber
27de0adf3b
agent: support multiple checks per service
2015-01-20 21:48:42 -08:00
Ryan Uber
9fe1b68f26
agent: use squash mapstructure tag to properly decode embedded structs
2015-01-20 21:10:58 -08:00
Ryan Uber
c669a17fa6
agent: use interface for file permissions
2015-01-20 18:53:18 -08:00
Ryan Uber
1e0cd2e499
agent: test permissions are set on rpc socket
2015-01-20 16:57:00 -08:00
Ryan Uber
88af31507f
agent: fix tests
2015-01-20 16:50:21 -08:00
Ryan Uber
aa58218dfd
agent: re-add support for user name in socket perms
2015-01-20 16:21:23 -08:00
Ryan Uber
77c6b86b1e
agent: test Unix domain socket permission settings
2015-01-20 14:32:15 -08:00
Ryan Uber
73a111b35d
agent: adjusting tests for new behavior of sockets
2015-01-20 14:13:36 -08:00
Ryan Uber
c01277725a
agent: beginning socket user/group/mode support as discussed in #612
2015-01-20 13:44:27 -08:00
Armon Dadgar
a9819e71a8
Fixing merge conflict
2015-01-20 13:01:13 -08:00
Armon Dadgar
2502398481
command/lock: Fixing mixed spaces and tabs
2015-01-20 12:58:29 -08:00
Armon Dadgar
c6dbb7e76c
command/lock: Adding simple test
2015-01-19 15:47:17 -10:00
Armon Dadgar
b52c14d1b2
command/lock: Calculate name, use provided token
2015-01-19 15:38:00 -10:00
Armon Dadgar
cdfaaac3ac
command/lock: Ensure a conflict between lock and semaphore with shared prefix
2015-01-19 15:26:17 -10:00
Armon Dadgar
1aa8b0fc23
command/lock: First pass at lock
2015-01-19 14:37:48 -10:00
Ryan Uber
9ee9c5acd5
agent: test agent rpc unix socket create failure
2015-01-19 09:56:59 -08:00
Emil Hessman
73ad8fcb84
command: address vet report in test
...
Fixes the following vet report:
command/rpc_test.go:61: missing argument for Fatalf(%s): format reads arg 3, have only 2 args
2015-01-17 07:57:11 +01:00
Ryan Uber
059866cce6
command: fix up env var/cli arg precedence and tests
2015-01-16 17:45:13 -08:00
Ryan Uber
49127722ec
Merge pull request #610 from dave-tucker/bug/609
...
Don't forget to Shutdown the DNS Server!
2015-01-16 16:46:37 -08:00
Dave Tucker
f026b8781e
Don't forget to Shutdown the DNS Server!
...
Fixes #609
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2015-01-17 00:30:53 +00:00
Ryan Uber
f29ea9f637
agent: maintenance logging + unique service check IDs
2015-01-16 15:38:13 -08:00
Ryan Uber
6d284052fc
agent: test node maintenance mode
2015-01-16 15:38:13 -08:00
Ryan Uber
8ea9eb87ea
agent: node maintenance mode works
2015-01-16 15:38:13 -08:00
Ryan Uber
3b815cd0aa
agent: maintenance mode api's are idempotent
2015-01-16 15:37:52 -08:00
Ryan Uber
8a4a8eb023
agent: maintenance mode is persistent
2015-01-16 15:37:52 -08:00
Ryan Uber
9ceb0f19d8
agent: test http endpoints for maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
7d4801db29
agent: test agent service maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
4f4eb204f6
agent: first pass at service maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
952fac6552
command: fix env var reader for HTTP addr
2015-01-16 14:01:20 -08:00
Ryan Uber
263614d596
agent: error if binding to existing socket file
2015-01-16 12:39:15 -08:00
Ryan Uber
328204f535
agent: test socket file overwrite
2015-01-16 10:37:13 -08:00
Ryan Uber
208b6c0677
command: style fixes for env addr reading
2015-01-16 10:19:04 -08:00
Ryan Uber
705801ccca
agent: fixing up tests
2015-01-16 09:58:37 -08:00
Ryan Uber
61d2f71d14
agent: only ignore errors on IsNotExist()
2015-01-16 09:14:52 -08:00
Ryan Uber
ad19c0afc2
agent: beginning refactor
2015-01-16 00:45:03 -08:00
Jeff Mitchell
9bd66c70e5
Ensure a socket is created for permissions adjustment tests and fix some
...
items pointed out in the code review
This code is copyright 2014 Akamai Technologies, Inc. <opensource@akamai.com>
2015-01-15 14:33:44 +00:00
Jeff Mitchell
c3707d3ee5
Add a Unix socket RPC test. I modified some code in the testing library to not make assumptions about the listening socket; all RPC tests still pass. Still to do: Unix socket HTTP test.
...
This code is copyright 2014 Akamai Technologies, Inc. <opensource@akamai.com>
2015-01-14 19:31:21 +00:00
Jeff Mitchell
f88536f192
Remove unnecessary ClientListenerAddr function. Rework config test functions to be cleaner. Start of runtime tests.
...
This code is copyright 2014 Akamai Technologies, Inc. <opensource@akamai.com>
2015-01-14 19:31:21 +00:00
Jeff Mitchell
4838beec4e
Tests for populateUnixSocket. Still need to write tests for the other major function, and basic socket listening tests.
...
This code is copyright 2014 Akamai Technologies, Inc. <opensource@akamai.com>
2015-01-14 19:31:21 +00:00
Jeff Mitchell
400eadd671
RPC and HTTP interfaces fully generically-sockified so Unix is supported.
...
Client works for RPC; will honor CONSUL_RPC_ADDR. HTTP works via consul/api;
honors CONSUL_HTTP_ADDR.
The format of a Unix socket in configuration data is:
"unix://[/path/to/socket];[username or uid];[gid];[mode]"
Obviously, the user must have appropriate permissions to create the socket
file in the given path and assign the requested uid/gid. Also note that Go does
not support gid lookups from group name, so gid must be numeric. See
https://codereview.appspot.com/101310044
When connecting from the client, the format is just the first part of the
above line:
"unix://[/path/to/socket]"
This code is copyright 2014 Akamai Technologies, Inc. <opensource@akamai.com>
2015-01-14 19:31:21 +00:00
Armon Dadgar
f3baa0a113
command/agent: Minor cleanups
2015-01-13 12:18:18 -08:00
Armon Dadgar
d80588f780
Merge pull request #592 from nicholascapo/check-http
...
command/agent: Add simple HTTP check type
2015-01-13 12:11:50 -08:00
Armon Dadgar
1bfe8efbac
Merge pull request #595 from ebroder/dns-only-passing
...
Add "only_passing" option to DNS config
2015-01-13 12:07:22 -08:00
Evan Broder
a9ce71e304
Add more thorough testing for only_passing behavior
2015-01-13 14:59:24 +01:00
Nicholas Capo
b631c74ac2
command/agent: Add tests for HTTP Check
2015-01-13 00:09:42 +00:00
Ryan Uber
793a7b74aa
agent: make dns randomization test more reliable
2015-01-12 16:05:41 -08:00
Nicholas Capo
e116c03f86
command/agent: HTTP Check: Create httpClient in Start()
...
For long (>10s) interval checks the http timeout is 10s, otherwise thetimeout is the interval. This means that a check *should* return
before the next check begins.
2015-01-13 00:01:15 +00:00
Nicholas Capo
27fe823fd2
command/agent: HTTP Check: Include response in check status
2015-01-12 22:35:28 +00:00
Nicholas Capo
f26a79c325
command/agent: Stop HTTP checks when the check is removed
2015-01-12 22:34:39 +00:00
Nicholas Capo
1918f39020
command/agent: HTTP check: Any 2xx is OK, 429 is WARNING
2015-01-12 21:58:57 +00:00
Evan Broder
b5e1de165b
Add "only_passing" option to DNS config
...
This excludes nodes from DNS results if their healthchecks are in any
non-passing state, not just if they're critical.
2015-01-10 13:17:11 +01:00
Ryan Uber
44efa3cca4
agent: fix local_test.go
2015-01-09 16:44:12 -08:00
Ryan Uber
12cd27e588
agent: wrap deferred anti-entropy sync test in WaitForResult
2015-01-09 16:42:44 -08:00
Nicholas Capo
f2649edcfc
command/agent: Add simple HTTP check type
...
These checks make an `HTTP GET` request every Interval to the specified URL.
The status of the service depends on the HTTP Response Code.
`200` is passing, `503` is warning and anything else is failing.
2015-01-09 16:43:24 -06:00
Armon Dadgar
0b9f4d7153
agent: Testing the KV DELETE with cas
2015-01-08 17:31:32 -08:00
Armon Dadgar
7ec294597e
agent: Support the ?cas parameter to KV DELETE
2015-01-08 17:08:58 -08:00
Armon Dadgar
04d89d8ce2
agent: Testing anti-entropy with service address
2015-01-08 12:02:04 -08:00
Armon Dadgar
3689b82cf4
agent: Adding test for DNS lookup with service address
2015-01-08 11:58:32 -08:00
Armon Dadgar
0164de5f44
agent: Fix de-duplication of SRV with service address
2015-01-08 10:47:41 -08:00
Armon Dadgar
957fa1f5ec
consul: Fixing merge conflict
2015-01-08 10:42:19 -08:00
Armon Dadgar
7d9697dcf3
agent: Testing reverse lookup with custom TLD
2015-01-08 10:24:49 -08:00
dankennedy
3c43e0440f
replaced consul domain with configured domain. Fixes #582
2015-01-08 10:16:05 +00:00
Ryan Uber
86bcef81b5
agent: test service and check unloading
2015-01-07 22:32:14 -08:00
Ryan Uber
770bb60af8
agent: consolidate service loading code, better logging
2015-01-07 22:01:43 -08:00
Ryan Uber
33bd157a61
agent: separate service and check loading/unloading concerns
2015-01-07 22:01:20 -08:00
Ryan Uber
dea0070a39
agent: persist service/check data using hashed service/check IDs ( fixes #573 )
2015-01-07 19:11:21 -08:00
Ryan Uber
7ecd015fc0
command: check LastIndex is not zero while waiting for leader
2015-01-07 15:18:00 -08:00
Armon Dadgar
b429c22bfb
command/exec: Use TTL for local and foreign
2015-01-07 14:27:29 -08:00
Armon Dadgar
615b0d6b97
command/exec: Support foreign datacenters
2015-01-07 14:22:40 -08:00
Ryan Uber
babce89299
Merge pull request #581 from hashicorp/f-consulapi
...
Bring in consulapi
2015-01-07 12:09:44 -08:00
Ryan Uber
5172b21ee8
api: initial import from armon/consul-api
2015-01-06 10:40:00 -08:00
Ryan Uber
26d6ae0386
Merge pull request #576 from hashicorp/f-verify-config
...
agent: reject config with invalid options
2015-01-05 14:51:28 -08:00
Daniel Malon
1889841acd
use the service specific address in SRV response
2015-01-05 22:48:30 +00:00
Ryan Uber
d9136d3411
agent: use mapstructure's Metadata.Unused to detect extraneous config
2015-01-05 14:41:19 -08:00
Ryan Uber
25fb18b1cf
agent: reject config with invalid options
2015-01-05 12:30:03 -08:00
Armon Dadgar
1088a5c170
Merge pull request #558 from ceh/http-api-response-headers
...
add ability to specify response headers on the HTTP API
2015-01-05 11:36:08 -08:00
Daniel Malon
e56b3861dc
advertise specific address for a service
...
Enable setting a specific address in a service definition for advertise. If no specific address is given it will fallback to the node address and reassemble the old behaviour.
2015-01-02 21:10:05 +00:00
Thordur Bjornsson
59d4f20e62
Test both ?pretty both bare and with value.
2015-01-02 09:15:41 +01:00
Thordur Bjornsson
8beb1bb848
handle ?pretty similarly to ?stale, ?consistent etc.
2015-01-02 08:00:08 +01:00
Ryan Uber
92e9e138b9
agent: test pretty printed json
2015-01-01 14:27:10 -08:00
Emil Hessman
db23a3f0e9
add ability to specify response headers on the HTTP API
...
Add an config object that allows adding HTTP header response fields to every
HTTP API response.
Each specified header is added to every response from all HTTP API endpoints.
Each individual endpoint may overwrite the specified header, which makes sure
that Consul headers such as 'X-Consul-Index' is enforced by the API.
2014-12-28 19:17:08 +01:00
Ryan Breen
b97a35234d
Clean up log line and reduce test time.
2014-12-18 09:00:51 -05:00
Ryan Breen
d415219cd5
Test that staggered checks run within the defined interval.
2014-12-17 22:39:11 -05:00
Ryan Breen
3b77bb7682
Well, that sure is cleaner.
2014-12-17 22:24:41 -05:00
Ryan Breen
3cb88d0a4f
Add a randomized start before running CheckMonitors.
2014-12-17 21:44:12 -05:00
lalyos
3823a931c6
Add default rpc address configuration option as CONSUL_RPC_ADDR env variable
...
Similar as in serf: https://github.com/hashicorp/serf/pull/210
2014-12-16 12:18:34 +01:00
Armon Dadgar
9b897d1134
consul: Ignore zero ttl on session
2014-12-12 19:17:04 -08:00
Armon Dadgar
8dbfe7c9a8
Merge pull request #524 from amalaviy/session_ttl
...
Consul Session TTLs
2014-12-12 14:42:25 -08:00
Atin Malaviya
5a76929ba4
Fixed clearSessionTimer, created invalidateSession, added invalid TTL test
2014-12-11 05:34:31 -05:00
Atin Malaviya
7ece29c3e0
Took out usage of snapshot SessionListTTL
2014-12-10 21:37:06 -05:00
Atin Malaviya
e84b26fcf5
Remove hardcoded wait time in session TTL tests
2014-12-10 21:04:09 -05:00
Atin Malaviya
8369b77204
Clean up code based on feedback from armon
2014-12-10 20:49:06 -05:00
Atin Malaviya
c992c18ef0
Added more tests. Also added return of 404 if the session id to renew is not found
2014-12-10 10:02:23 -05:00
Atin Malaviya
b623af776b
Consul Session TTLs
...
The design of the session TTLs is based on the Google Chubby approach
(http://research.google.com/archive/chubby-osdi06.pdf ). The Session
struct has an additional TTL field now. This attaches an implicit
heartbeat based failure detector. Tracking of heartbeats is done by
the current leader and not persisted via the Raft log. The implication
of this is during a leader failover, we do not retain the last
heartbeat times.
Similar to Chubby, the TTL represents a lower-bound. Consul promises
not to terminate a session before the TTL has expired, but is allowed
to extend the expiration past it. This enables us to reset the TTL on
a leader failover. The TTL is also extended when the client does a
heartbeat. Like Chubby, this means a TTL is extended on creation,
heartbeat or failover.
Additionally, because we must account for time requests are in transit
and the relative rates of clocks on the clients and servers, Consul
will take the conservative approach of internally multiplying the TTL
by 2x. This helps to compensate for network latency and clock skew
without violating the contract.
Reference: https://docs.google.com/document/d/1Y5-pahLkUaA7Kz4SBU_mehKiyt9yaaUGcBTMZR7lToY/edit?usp=sharing
2014-12-07 12:38:22 -05:00
Ali Abbas
154c4e93e4
since dns.TXT is an external dependency, it is safer to add keys to the fields to avoid some potential ordering issues if changes in this field occur with upstream
2014-12-06 13:13:35 +01:00
Ali Abbas
0117529781
remove control flow on errExit by switching from bool to int
2014-12-06 12:50:38 +01:00
Chavez
7c1aad7b1d
agent: agent test fixes
2014-12-05 10:36:44 -08:00
Veres Lajos
850d5bdc32
typofixes - https://github.com/vlajos/misspell_fixer
2014-12-04 23:25:06 +00:00
Armon Dadgar
b10159a87b
agent: Handle service ACLs when doing anti-entropy
2014-12-01 11:43:01 -08:00
Ryan Uber
42bad4af80
agent: fixup all check definitions from json config
2014-11-30 18:27:37 -08:00
Ryan Uber
9e52588cec
agent: persist CheckType with health checks
2014-11-29 12:54:37 -08:00
Ryan Uber
4f14ba6326
agent: allow config reload to modify checks/services persistence
...
This change consolidates loading services and checks from both config
and persisted state into methods on the agent. As part of this, we
introduce optional persistence when calling RemoveCheck/RemoveService.
Fixes a bug where config reloads would kill persisted services/checks.
Also fixes an edge case:
1. A service or check is registered via the HTTP API
2. A new service or check definition with the same ID is added to config
3. Config is reloaded
The desired behavior (which this implements) is:
1. All services and checks deregistered in memory
2. All services and checks in config are registered first
3. All persisted checks are restored using the same logic as the agent
start sequence, which prioritizes config over persisted, and removes
any persistence files if new config counterparts are present.
2014-11-26 12:46:42 -08:00
Ali Abbas
ecac719bb8
fix Sprintf formatting
2014-11-25 20:06:33 +01:00
Ali Abbas
73504a01e9
cleanup unreachable code
2014-11-25 19:54:30 +01:00
Ryan Uber
fe119a1bd2
agent: prefer config over persisted services/checks ( #497 )
2014-11-24 19:40:53 -08:00
Armon Dadgar
746c52644b
Merge pull request #497 from hashicorp/f-persist
...
Persist locally registered services and checks
2014-11-24 11:14:08 -08:00
Armon Dadgar
521414f09a
agent: Adding TODO for future optimization
2014-11-24 11:09:04 -08:00
Ryan Uber
1f5af52e0b
agent: pass error through when writing state files
2014-11-24 01:58:39 -08:00
Ryan Uber
ce0d27caba
agent: default restored checks to critical status
2014-11-24 01:15:18 -08:00
Ryan Uber
e3c2075a9d
agent: first pass at local service and check persistence
2014-11-24 01:10:27 -08:00
lalyos
adc5d0a522
agent: implementing reverse dns lookup for ipv4 and ipv6
2014-11-23 09:16:37 +01:00
Armon Dadgar
b58b35d659
Merge pull request #487 from amalaviy/ephemeral_keys
...
Ephemeral Nodes for via Session behavior settings.
2014-11-21 10:11:52 -08:00
Ryan Uber
3d4ea8142c
agent: make event buffer test non-sequential
2014-11-20 21:56:50 -08:00
Ryan Uber
3f5e0d8ec0
agent: Test event order preservation for watches
2014-11-20 20:35:52 -08:00
Ryan Uber
5badc695b8
agent: Preserve ordering of event buffer. Fixes #479
2014-11-20 19:51:08 -08:00