Armon Dadgar
85a47ba584
agent: Adding atlas_join configuration
2015-02-18 15:12:14 -08:00
Armon Dadgar
32aaee5185
agent: SCADA HTTP integration
2015-02-18 15:12:14 -08:00
Armon Dadgar
456645f2fb
agent: SCADA HTTP listener
2015-02-18 15:12:14 -08:00
Armon Dadgar
55597dc38f
agent: Starting SCADA integration
2015-02-18 15:12:14 -08:00
Armon Dadgar
ebfd35898b
agent: Adding Atlas CLI flags
2015-02-18 15:12:14 -08:00
Armon Dadgar
b4929c090a
agent: Adding new Atlas configs
2015-02-18 15:12:14 -08:00
Armon Dadgar
b319c41bd9
agent: Snapshot and restore health state on reload. Fixes #693
2015-02-17 12:00:04 -08:00
Armon Dadgar
05610966df
command/exec: Handle a missing key during cancelation. Fixes #626
2015-02-16 14:32:50 -08:00
artushin
2ae843d51c
oops. DefaultTransport being used.
2015-02-12 10:11:22 -06:00
artushin
5ec92971ac
close idle connections after stopping http checks to service
2015-02-11 18:29:51 -06:00
Ryan Uber
103e9e7fc1
agent: clarify the valid characters for dns
2015-02-09 09:59:27 -08:00
Ryan Uber
722b255816
agent: warn on service tags with invalid chars
2015-02-09 09:30:06 -08:00
Ryan Uber
5e801c905d
agent: Warn on dns-incompatible characters during service registration. Fixes #683 .
2015-02-09 09:23:17 -08:00
lalyos
190f15458f
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
84f8c70a79
agent: fix test case examples
2015-02-05 23:29:04 -08:00
Ryan Uber
45097f9f3d
Merge pull request #654 from arnaudbriche/http-check-timeout
...
Configurable CheckHTTP timeout
2015-02-05 23:03:39 -08:00
arnaud briche
bbb5f4696a
- add tests for CheckHTTP with new timeout parameter && CheckType.Timeout parsing
2015-02-02 15:30:44 +07:00
arnaud briche
7f91782478
- add proper parsing of CheckType.Timeout from string
2015-02-02 15:29:42 +07:00
Ryan Uber
3c85d7e231
agent: http checks work inside of service definitions
2015-01-29 12:11:42 -08:00
Ryan Uber
544299efa5
agent: pass locally configured token during remote exec
2015-01-29 10:42:46 -08:00
arnaud briche
e87afe341b
- 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
58eba95b98
agent: test service/check deletion with empty ID
2015-01-27 21:47:59 -08:00
Ryan Uber
c537799ce8
Merge pull request #644 from foostan/add_validation_of_deregistration
...
Validate ServiceID/CheckID when deregistering.
2015-01-27 21:39:35 -08:00
foostan
2df98c1824
Validation ServiceID/CheckID when deleting in deleteService() in local.go
2015-01-27 18:11:57 +09:00
foostan
9316596e25
Add tests to remove service/check without an ID
2015-01-27 18:10:56 +09:00
foostan
401bc71cb2
Validate ServiceID/CheckID when deregistering.
2015-01-27 01:06:57 +09:00
Emil Hessman
abce80f7bc
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
8cdbde20bd
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
8b0fe52be2
agent/http: fix service registration with nil checks value
2015-01-23 18:50:51 -08:00
Ryan Uber
b5e8111485
agent/http: clean up socket setup
2015-01-23 17:57:04 -08:00
Ryan Uber
eda2171bbe
agent: make check tests more reliable
2015-01-23 16:07:20 -08:00
Ryan Uber
b69b780408
agent: error from KVS endpoint if incompatible flags are passed. Fixes #432
2015-01-23 12:48:39 -08:00
Ryan Uber
67190e6f68
agent: more lenient dns response test
2015-01-22 15:31:12 -08:00
Armon Dadgar
e1a5d537d4
Merge pull request #625 from hashicorp/f-maintcmd
...
New "maint" command
2015-01-22 11:56:49 -08:00
Ryan Uber
5049a5eb7b
command/maint: better arg conflict checking
2015-01-22 11:20:32 -08:00
Ryan Uber
44f3c20e50
command/maint: clean up
2015-01-22 11:14:28 -08:00
Ryan Uber
09fd2a7e94
command/maint: display active maintenance when no args are passed
2015-01-22 10:26:17 -08:00
Armon Dadgar
cf04d6ae31
Merge pull request #622 from hashicorp/f-sockets
...
Unix domain sockets
2015-01-21 16:30:03 -08:00
Ryan Uber
124e7bfa7e
agent: use const for default maintenance reason strings
2015-01-21 14:53:52 -08:00
Ryan Uber
5aa69827f8
agent: fix test
2015-01-21 14:12:18 -08:00
Ryan Uber
eaaa96922d
command: more maint command tests
2015-01-21 13:49:10 -08:00
Ryan Uber
47c4ab6863
command: test maint command
2015-01-21 13:37:32 -08:00
Ryan Uber
61d17e65f5
agent: prevent duplicate error messages for maintenance api
2015-01-21 13:28:26 -08:00
Ryan Uber
7d663aa1ed
command: maint command works
2015-01-21 13:11:23 -08:00
Ryan Uber
aa8672203c
command: starting maint command
2015-01-21 13:00:14 -08:00
Ryan Uber
f00b5b542e
agent: support passing ?reason= for custom notes field values on maintenance checks
2015-01-21 12:21:57 -08:00
Ryan Uber
b6a0f2baae
agent: fix maintenance check ID
2015-01-21 11:03:42 -08:00
Ryan Uber
d9a3e673b0
agent: change node maintenance endpoint
2015-01-21 10:57:44 -08:00
Ryan Uber
9c69dc05fb
agent: use strconv.ParseBool for parsing maintenance enable flag
2015-01-21 09:53:31 -08:00
Ryan Uber
46d5dcfc17
agent: comments for new anti-entropy functionality
2015-01-20 21:48:46 -08:00
Ryan Uber
a4039aaa4d
agent: simplify anti-entropy of services with multiple checks, add tests
2015-01-20 21:48:46 -08:00
Ryan Uber
0c31e5851c
agent: only send service with check sync if it is out of sync
2015-01-20 21:48:46 -08:00
Ryan Uber
949ddefbc8
agent: refactor syncChecks
2015-01-20 21:48:46 -08:00
Ryan Uber
2a7211cd5d
agent: support adding multiple checks during service registration from the API
2015-01-20 21:48:45 -08:00
Ryan Uber
674be58e55
agent: support multiple checks per service
2015-01-20 21:48:42 -08:00
Ryan Uber
c958824bb6
agent: use squash mapstructure tag to properly decode embedded structs
2015-01-20 21:10:58 -08:00
Ryan Uber
b1dae530d4
agent: use interface for file permissions
2015-01-20 18:53:18 -08:00
Ryan Uber
782b0ddd88
agent: test permissions are set on rpc socket
2015-01-20 16:57:00 -08:00
Ryan Uber
99d4e7831e
agent: fix tests
2015-01-20 16:50:21 -08:00
Ryan Uber
a6c877c7ee
agent: re-add support for user name in socket perms
2015-01-20 16:21:23 -08:00
Ryan Uber
145c56b47d
agent: test Unix domain socket permission settings
2015-01-20 14:32:15 -08:00
Ryan Uber
450d05575d
agent: adjusting tests for new behavior of sockets
2015-01-20 14:13:36 -08:00
Ryan Uber
21dd95d9af
agent: beginning socket user/group/mode support as discussed in #612
2015-01-20 13:44:27 -08:00
Armon Dadgar
d998bb3d67
Fixing merge conflict
2015-01-20 13:01:13 -08:00
Armon Dadgar
ce4fa17d22
command/lock: Fixing mixed spaces and tabs
2015-01-20 12:58:29 -08:00
Armon Dadgar
d6837e2f31
command/lock: Adding simple test
2015-01-19 15:47:17 -10:00
Armon Dadgar
876de111bf
command/lock: Calculate name, use provided token
2015-01-19 15:38:00 -10:00
Armon Dadgar
08c0a81e4f
command/lock: Ensure a conflict between lock and semaphore with shared prefix
2015-01-19 15:26:17 -10:00
Armon Dadgar
f2f980f5bc
command/lock: First pass at lock
2015-01-19 14:37:48 -10:00
Ryan Uber
2530e5ff05
agent: test agent rpc unix socket create failure
2015-01-19 09:56:59 -08:00
Emil Hessman
60011d3e2e
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
58806bc7bb
command: fix up env var/cli arg precedence and tests
2015-01-16 17:45:13 -08:00
Ryan Uber
ba96535cfc
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
18b5ab3539
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
ba2d0fa7e3
agent: maintenance logging + unique service check IDs
2015-01-16 15:38:13 -08:00
Ryan Uber
8cf4e9889e
agent: test node maintenance mode
2015-01-16 15:38:13 -08:00
Ryan Uber
7748c62d09
agent: node maintenance mode works
2015-01-16 15:38:13 -08:00
Ryan Uber
9ee1e6e858
agent: maintenance mode api's are idempotent
2015-01-16 15:37:52 -08:00
Ryan Uber
8819d71f99
agent: maintenance mode is persistent
2015-01-16 15:37:52 -08:00
Ryan Uber
35c10a902f
agent: test http endpoints for maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
3fbb2be6c0
agent: test agent service maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
2973cd9131
agent: first pass at service maintenance mode
2015-01-16 15:37:51 -08:00
Ryan Uber
41ec10a120
command: fix env var reader for HTTP addr
2015-01-16 14:01:20 -08:00
Ryan Uber
f01bb5cf3b
agent: error if binding to existing socket file
2015-01-16 12:39:15 -08:00
Ryan Uber
56c3e488a9
agent: test socket file overwrite
2015-01-16 10:37:13 -08:00
Ryan Uber
e2eff5698e
command: style fixes for env addr reading
2015-01-16 10:19:04 -08:00
Ryan Uber
4c3ec248a5
agent: fixing up tests
2015-01-16 09:58:37 -08:00
Ryan Uber
bf48651c58
agent: only ignore errors on IsNotExist()
2015-01-16 09:14:52 -08:00
Ryan Uber
4675cdf01c
agent: beginning refactor
2015-01-16 00:45:03 -08:00
Jeff Mitchell
9fcea08dbb
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
32d2c6b848
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
0cc009c480
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
8362e3e9eb
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
11a3ce0bdd
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
96c7ce120e
command/agent: Minor cleanups
2015-01-13 12:18:18 -08:00
Armon Dadgar
713d30c73e
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
aedaf7a7c8
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
a0228a64e2
Add more thorough testing for only_passing behavior
2015-01-13 14:59:24 +01:00
Nicholas Capo
641476a822
command/agent: Add tests for HTTP Check
2015-01-13 00:09:42 +00:00
Ryan Uber
b2fbaea18c
agent: make dns randomization test more reliable
2015-01-12 16:05:41 -08:00
Nicholas Capo
98eb935392
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
bcb983edbe
command/agent: HTTP Check: Include response in check status
2015-01-12 22:35:28 +00:00
Nicholas Capo
50853265dd
command/agent: Stop HTTP checks when the check is removed
2015-01-12 22:34:39 +00:00
Nicholas Capo
6a2d763d5c
command/agent: HTTP check: Any 2xx is OK, 429 is WARNING
2015-01-12 21:58:57 +00:00
Evan Broder
ee6d59d4dd
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
5bf1abf7ef
agent: fix local_test.go
2015-01-09 16:44:12 -08:00
Ryan Uber
c2188440b2
agent: wrap deferred anti-entropy sync test in WaitForResult
2015-01-09 16:42:44 -08:00
Nicholas Capo
fb5ba8d97d
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
d05ed7baa6
agent: Testing the KV DELETE with cas
2015-01-08 17:31:32 -08:00
Armon Dadgar
3e0f77682a
agent: Support the ?cas parameter to KV DELETE
2015-01-08 17:08:58 -08:00
Armon Dadgar
9f4955151a
agent: Testing anti-entropy with service address
2015-01-08 12:02:04 -08:00
Armon Dadgar
77a3bfd606
agent: Adding test for DNS lookup with service address
2015-01-08 11:58:32 -08:00
Armon Dadgar
419447d9f7
agent: Fix de-duplication of SRV with service address
2015-01-08 10:47:41 -08:00
Armon Dadgar
23b9c96169
consul: Fixing merge conflict
2015-01-08 10:42:19 -08:00
Armon Dadgar
f2e1065246
agent: Testing reverse lookup with custom TLD
2015-01-08 10:24:49 -08:00
dankennedy
63af8d08e1
replaced consul domain with configured domain. Fixes #582
2015-01-08 10:16:05 +00:00
Ryan Uber
a24f6e3d4d
agent: test service and check unloading
2015-01-07 22:32:14 -08:00
Ryan Uber
51fe9f32ff
agent: consolidate service loading code, better logging
2015-01-07 22:01:43 -08:00
Ryan Uber
cfde9313de
agent: separate service and check loading/unloading concerns
2015-01-07 22:01:20 -08:00
Ryan Uber
0b9f2b0954
agent: persist service/check data using hashed service/check IDs ( fixes #573 )
2015-01-07 19:11:21 -08:00
Ryan Uber
d97305e376
command: check LastIndex is not zero while waiting for leader
2015-01-07 15:18:00 -08:00
Armon Dadgar
7b7c1afe1b
command/exec: Use TTL for local and foreign
2015-01-07 14:27:29 -08:00
Armon Dadgar
ce83322e16
command/exec: Support foreign datacenters
2015-01-07 14:22:40 -08:00
Ryan Uber
c2177c0ed5
Merge pull request #581 from hashicorp/f-consulapi
...
Bring in consulapi
2015-01-07 12:09:44 -08:00
Ryan Uber
5555e0eb9b
api: initial import from armon/consul-api
2015-01-06 10:40:00 -08:00
Ryan Uber
db3c502dcc
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
bd65cbb7d7
use the service specific address in SRV response
2015-01-05 22:48:30 +00:00
Ryan Uber
42ace3a6b5
agent: use mapstructure's Metadata.Unused to detect extraneous config
2015-01-05 14:41:19 -08:00
Ryan Uber
b8740b62da
agent: reject config with invalid options
2015-01-05 12:30:03 -08:00
Armon Dadgar
f86d7c3a09
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
051ac8eb0b
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
a12ffef8b6
Test both ?pretty both bare and with value.
2015-01-02 09:15:41 +01:00
Thordur Bjornsson
1435818792
handle ?pretty similarly to ?stale, ?consistent etc.
2015-01-02 08:00:08 +01:00
Ryan Uber
e9615c50e6
agent: test pretty printed json
2015-01-01 14:27:10 -08:00
Emil Hessman
cb764c35e5
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
f2bd641402
Clean up log line and reduce test time.
2014-12-18 09:00:51 -05:00
Ryan Breen
d82ef7bb8c
Test that staggered checks run within the defined interval.
2014-12-17 22:39:11 -05:00
Ryan Breen
2e58f54a26
Well, that sure is cleaner.
2014-12-17 22:24:41 -05:00
Ryan Breen
60dacecb39
Add a randomized start before running CheckMonitors.
2014-12-17 21:44:12 -05:00
lalyos
89f271a9da
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
a5a9f051cd
consul: Ignore zero ttl on session
2014-12-12 19:17:04 -08:00
Armon Dadgar
29afa881f4
Merge pull request #524 from amalaviy/session_ttl
...
Consul Session TTLs
2014-12-12 14:42:25 -08:00
Atin Malaviya
ac54010027
Fixed clearSessionTimer, created invalidateSession, added invalid TTL test
2014-12-11 05:34:31 -05:00
Atin Malaviya
60915629f6
Took out usage of snapshot SessionListTTL
2014-12-10 21:37:06 -05:00
Atin Malaviya
0f9723e6f8
Remove hardcoded wait time in session TTL tests
2014-12-10 21:04:09 -05:00
Atin Malaviya
5229f3b44d
Clean up code based on feedback from armon
2014-12-10 20:49:06 -05:00
Atin Malaviya
624c465e2b
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
4732c36d88
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
d73e1cae85
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
a84a88b3f5
remove control flow on errExit by switching from bool to int
2014-12-06 12:50:38 +01:00