Commit Graph

1120 Commits

Author SHA1 Message Date
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
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
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