Commit Graph

949 Commits

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