Chelsea Holland Komlo
00a1f5fc9a
adding migration token validation for gc endpoint
2017-10-11 17:11:57 -07:00
Chelsea Holland Komlo
b018ca4d46
fixing up code review comments
2017-10-11 17:09:20 -07:00
Chelsea Holland Komlo
1b90a2eef0
adding valid case test for http endpoint
2017-10-11 17:09:20 -07:00
Chelsea Holland Komlo
a77e462465
add tests for functionality
2017-10-11 17:09:20 -07:00
Chelsea Holland Komlo
410adaf726
Add functionality for authenticated volumes
2017-10-11 17:09:20 -07:00
Michael Schurter
de767ffa04
Status.Members ACL enforcement
...
Was incorrectly checked on the HTTP API before. Moved to RPC endpoint.
2017-10-10 10:36:54 -07:00
Michael Schurter
180cbc4f5a
Fix AgentSelf, AgentMembers, and KeyringOperations
2017-10-09 16:12:28 -07:00
Michael Schurter
e50acae1a9
ForceLeave endpoint must use Server.ResolveToken
...
The ForceLeaveRequest endpoint may only be called on servers, but the
code was using a Client to resolve tokens. This would cause a panic when
an agent wasn't both a Server and a Client.
2017-10-09 15:49:04 -07:00
Michael Schurter
492c861419
/v1/client/agent/* ACL enforcement
2017-10-09 12:18:54 -07:00
Michael Schurter
04adc987ed
/v1/client/allocation/./{stats,gc} ACL enforcement
2017-10-09 12:13:52 -07:00
Michael Schurter
84d82d79bb
/v1/client/stats ACL enforcement
2017-10-09 12:02:32 -07:00
Michael Schurter
8a125759ae
Refactor as there's no need for an ACL helper
2017-10-09 11:19:25 -07:00
Michael Schurter
260b66bf52
Test all fs endpoints in a loop
2017-10-09 11:19:14 -07:00
Michael Schurter
a7450c8633
FS HTTP API ACL enforcement
...
ACL enforcement for the filesystem HTTP APIs on clients.
2017-10-09 11:06:34 -07:00
Michael Schurter
69bcfe78ba
/v1/client/gc ACL enforcement
2017-10-06 14:50:16 -07:00
Michael Schurter
fd9d09e290
Rename TestAgent.Token to TestAgent.RootToken
2017-10-06 14:35:14 -07:00
James Rasell
4628637b54
Update agent CLI to include Consul config option flags.
...
This update introduces command line flags for all Consul options
thus allowing users to both use a config file and CLI options to
configure Consul.
Website documentation has also been updated.
Closes #3304
2017-10-05 14:26:26 +01:00
Alex Dadgar
4173834231
Enable more linters
2017-09-26 15:26:33 -07:00
Alex Dadgar
fb1ceabad6
generated code
2017-09-19 12:17:16 -05:00
Alex Dadgar
f16167b5e1
always gzip
2017-09-19 10:37:49 -05:00
Alex Dadgar
e5ec915ac3
sync
2017-09-19 10:08:23 -05:00
Michael Schurter
a844fba8d2
Fix comments: task -> check
2017-09-15 15:19:53 -07:00
Michael Schurter
bd3f517f2f
Test converting CheckRestart from api->structs
2017-09-15 15:01:56 -07:00
Michael Schurter
0f2a3dcec9
Test check watch updates
2017-09-14 16:48:39 -07:00
Michael Schurter
847fe080f6
Rename unhealthy var and fix test indeterminism
2017-09-14 16:48:39 -07:00
Michael Schurter
573a0df03d
Watched -> TriggersRestart
...
Watched was a silly name
2017-09-14 16:48:39 -07:00
Michael Schurter
4ea19baa52
Handle multiple failing checks on a single task
...
Before this commit if a task had 2 checks cause restarts at the same
time, both would trigger restarts of the task! This change removes all
checks for a task whenever one of them is restarted.
2017-09-14 16:48:39 -07:00
Michael Schurter
73fb71ca10
RestartDelay isn't needed as checks are re-added on restarts
...
@dadgar made the excellent observation in #3105 that TaskRunner removes
and re-registers checks on restarts. This means checkWatcher doesn't
need to do *any* internal restart tracking. Individual checks can just
remove themselves and be re-added when the task restarts.
2017-09-14 16:48:39 -07:00
Michael Schurter
448ad3945f
Simplify from 2 select loops to one
2017-09-14 16:48:39 -07:00
Michael Schurter
550e631eea
Wrap check watch updates in a struct
...
Reusing checkRestart for both adds/removes and the main check restarting
logic was confusing.
2017-09-14 16:48:39 -07:00
Michael Schurter
d299d42089
Canonicalize and Merge CheckRestart in api
2017-09-14 16:48:39 -07:00
Michael Schurter
72e5c0c0aa
Fix whitespace
2017-09-14 16:47:41 -07:00
Michael Schurter
ade29ecbed
Improve check watcher logging and add tests
...
Also expose a mock Consul Agent to allow testing ServiceClient and
checkWatcher from TaskRunner without actually talking to a real Consul.
2017-09-14 16:47:41 -07:00
Michael Schurter
99f4aa999a
Default grace period to 1s
2017-09-14 16:46:54 -07:00
Michael Schurter
a137676358
Add comments and move delay calc to TaskRunner
2017-09-14 16:46:54 -07:00
Michael Schurter
a180c00fc3
on_warning=false -> ignore_warnings=false
...
Treat warnings as unhealthy by default
2017-09-14 16:46:54 -07:00
Michael Schurter
8a87475498
Use existing restart policy infrastructure
2017-09-14 16:46:54 -07:00
Michael Schurter
22690c5f4c
Add check watcher for restarting unhealthy tasks
2017-09-14 16:46:54 -07:00
Michael Schurter
b35d208428
Nest restart fields in CheckRestart
2017-09-14 16:46:54 -07:00
Michael Schurter
bf34505509
Add restart fields
2017-09-14 16:46:54 -07:00
Alex Dadgar
01180fec58
use assert
2017-09-14 14:20:22 -07:00
Alex Dadgar
c55b7ce4d6
Sort /v1/agent/servers output
...
This PR sorts the output of the endpoint since its results are used as
part of Consul checks to avoid the value changing unnecessarily.
Fixes https://github.com/hashicorp/nomad/issues/3211
2017-09-14 14:20:22 -07:00
Chelsea Holland Komlo
c014cb014f
fix bug to return prometheus sink
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
fcc3071e52
fixups from code review
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
faabf61c6d
updated documentation
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
f5975dceb7
refactoring prometheus endpoint
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
035fab0c8d
enabling prometheus metrics should be a config option
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
d8e9f2fef7
add endpoint for prometheus
2017-09-13 19:21:21 +00:00
Alex Dadgar
5aa8f1a82e
pass in uid to codecgen
2017-09-11 15:40:27 -07:00
Armon Dadgar
c234e09d9e
website: document ACL bootstrap reset process
2017-09-10 16:18:39 -07:00
Alex Dadgar
84d06f6abe
Sync namespace changes
2017-09-07 17:04:21 -07:00
Chelsea Holland Komlo
1238efc2a8
improve documentation
...
move metrics to telemetry; copy to client config
2017-09-06 21:38:06 +00:00
Chelsea Holland Komlo
66fa05405a
tagged metrics config options should be on telemetry config
...
better api example, add telemetry documentation
2017-09-06 15:25:36 +00:00
Chelsea Holland Komlo
751fc5324e
add http endpoint for in memory metrics
...
prevent against flaky test due to timing/initialization issues
2017-09-06 13:51:19 +00:00
Chelsea Holland Komlo
0ef43c3c5f
final code review fixups
2017-09-05 18:47:44 +00:00
Chelsea Holland Komlo
a8cbd0b559
fixups from code review
2017-09-05 14:13:34 +00:00
Chelsea Holland Komlo
b4d21869ca
update comments
2017-09-05 14:13:34 +00:00
Chelsea Holland Komlo
ba4abbe09c
remove prints during test
2017-09-05 14:13:34 +00:00
Chelsea Holland Komlo
5c10a9325e
parse config for metrics fields
2017-09-05 14:13:34 +00:00
Armon Dadgar
0dabcb8659
agent: fix routing for token-specific request
2017-09-04 13:07:44 -07:00
Armon Dadgar
af9caef4b9
Adding a comment to address @dadgar
2017-09-04 13:05:53 -07:00
Armon Dadgar
f1c4143a62
agent: thread ACLs for Job Register
2017-09-04 13:05:53 -07:00
Armon Dadgar
5c94e7e99f
agent: thread through token for ACL endpoint tests
2017-09-04 13:05:53 -07:00
Armon Dadgar
3e46094cee
Passthrough replication token for token/policy replication
2017-09-04 13:05:53 -07:00
Armon Dadgar
4107335cb2
agent: Adding X-Nomad-Token header parsing
2017-09-04 13:05:53 -07:00
Armon Dadgar
4bda2fa9e9
nomad: ACL endpoints check support enabled and redirect to authority
2017-09-04 13:05:53 -07:00
Armon Dadgar
866fe5e216
nomad: adding ACL bootstrapping endpoint
2017-09-04 13:05:53 -07:00
Armon Dadgar
792f176a44
agent: thread ACL config to client
2017-09-04 13:04:45 -07:00
Armon Dadgar
3efdf1f7d9
Address @chelseakomlo comments
2017-09-04 13:04:45 -07:00
Armon Dadgar
018973aea8
Address @dadgar feedback
2017-09-04 13:04:45 -07:00
Armon Dadgar
5b3d6c0a52
Fixing intent
2017-09-04 13:04:45 -07:00
Armon Dadgar
7d4aa1975f
agent: thread through ACL config to Server
2017-09-04 13:04:45 -07:00
Armon Dadgar
9cd8ac832f
agent: Adding ACL block configuration
2017-09-04 13:04:45 -07:00
Armon Dadgar
a45bd0d2a2
agent: fixing ACL endpoint, return updated tokens
2017-09-04 13:04:45 -07:00
Armon Dadgar
bd2db18c80
agent: Adding HTTP endpoints for ACL tokens
2017-09-04 13:04:45 -07:00
Armon Dadgar
18e6053b58
agent: Adding ACL Policy endpoints
2017-09-04 13:03:15 -07:00
Michael Schurter
28e9fa73f6
Welcome to the brave new world
...
Committing generated code to help ensure reproducible builds.
2017-08-28 15:51:18 -07:00
Chelsea Holland Komlo
ffe95a1a62
adds any resource autocomplete
...
defaults to listing jobs if no id is provided
2017-08-25 16:42:11 +00:00
Chelsea Komlo
49542712f9
Merge pull request #3068 from hashicorp/f-add-deployments-search-api
...
Add deployments to search api
2017-08-21 16:34:00 -04:00
Chelsea Holland Komlo
50c20b1801
add deployments to search api
2017-08-21 15:20:55 +00:00
Michael Schurter
7f6e1f3a9c
Initializing embedded structs is weird
2017-08-17 16:49:14 -07:00
Michael Schurter
0634eef12a
Test createCheckReg
2017-08-17 16:49:14 -07:00
Michael Schurter
bb8d5689d8
Add Header and Method support for HTTP checks
2017-08-17 16:44:21 -07:00
Michael Schurter
b4813747d0
Merge pull request #3043 from hashicorp/f-2441-shutdown-delay
...
Add optional shutdown delay to tasks
2017-08-17 14:37:48 -07:00
Michael Schurter
d529b422b2
Add optional shutdown delay to tasks
...
Fixes #2441
Defaults to 0 (no delay) for backward compat and because this feature
should be opt-in.
2017-08-16 17:59:46 -07:00
Alex Dadgar
d6187cd3e8
Fix tests
2017-08-16 16:26:52 -07:00
Alex Dadgar
1a86aecf55
Add version package
...
This PR adds a version package and consolidates version strings into a
Version struct.
2017-08-16 15:44:21 -07:00
Alex Dadgar
828b9bfae4
fix http test
2017-08-16 11:01:12 -07:00
Chelsea Komlo
b9f189495a
Merge pull request #2995 from hashicorp/f-allocation-autocomplete
...
Allocation autocomplete, client api
2017-08-14 15:26:39 -04:00
Chelsea Holland Komlo
e658d4daaa
fixups from code review
2017-08-14 17:56:03 +00:00
Alex Dadgar
43dff0a11d
Fix integration test
2017-08-14 10:52:49 -07:00
Chelsea Holland Komlo
69c2b7e308
context constants should be in both api and structs pkg
2017-08-14 17:38:10 +00:00
Chelsea Holland Komlo
9bc48a01a6
using contexts constants in replace of string contexts
...
fix up endpoints
2017-08-14 17:38:10 +00:00
Chelsea Holland Komlo
76827c98f7
use constants for contexts
2017-08-14 17:38:10 +00:00
Chelsea Holland Komlo
465c4d7082
change endpoint to /v1/search
2017-08-14 17:38:10 +00:00
Chelsea Holland Komlo
5ee58a391b
rename to cluster search
...
comment updates
2017-08-14 17:36:14 +00:00
James Nugent
ae85c548ac
build: Apply goimports formatting to various files
...
The following files were not formatted as the output of goimports(1)
would create, causing the goimports linter to fail:
command/agent/resources_endpoint.go
nomad/resources_endpoint.go
nomad/resources_endpoint_test.go
2017-08-14 11:51:47 +08:00
Alex Dadgar
6e20acb503
Merge pull request #2984 from hashicorp/b-tags
...
Fix alloc health with checks using interpolation
2017-08-10 13:07:25 -07:00
Alex Dadgar
c8f74ac43b
Address comments
2017-08-10 13:07:08 -07:00
Alex Dadgar
c8367ed01b
Merge pull request #2988 from jvoorhis/redact-vault-token
...
Redact Vault.Token from AgentSelf response.
2017-08-08 11:04:48 -07:00
Jeremy Voorhis
a19043e6c7
Handle nil values when redacting vault token.
2017-08-08 10:54:11 -07:00
Alex Dadgar
aba107be99
Merge pull request #2979 from lfarnell/cleanup
...
Code cleanup
2017-08-08 10:21:15 -07:00
Jeremy Voorhis
554f6efe02
Redact Vault.Token from AgentSelf response.
...
If Config.Vault.Token is defined, /v1/agent/self will return the string
`<redacted>`. If the token is not set, This endpoint will continue to
return the empty string.
2017-08-07 21:34:43 -07:00
Alex Dadgar
79d25b7db9
Merge pull request #2947 from hashicorp/f-vault-grace
...
Allow template to set Vault grace
2017-08-07 16:29:53 -07:00
Alex Dadgar
d86b3977b9
Fix alloc health with checks using interpolation
...
Fixes an issue in which the allocation health watcher was checking for
allocations health based on un-interpolated services and checks. Change
the interface for retrieving check information from Consul to retrieving
all registered services and checks by allocation. In the future this
will allow us to output nicer messages.
Fixes https://github.com/hashicorp/nomad/issues/2969
2017-08-07 16:27:08 -07:00
Luke Farnell
f0ced87b95
fixed all spelling mistakes for goreport
2017-08-07 17:13:05 -04:00
Chelsea Komlo
5537516bfd
Merge pull request #2964 from hashicorp/f-autocomplete-api
...
autocomplete api
2017-08-07 12:40:09 -07:00
Chelsea Holland Komlo
1b77f9a216
further refactoring
2017-08-04 22:50:41 +00:00
Chelsea Holland Komlo
424e475333
if no context is specified, set maximum index for available contexts
2017-08-04 20:16:49 +00:00
Chelsea Holland Komlo
0b38704392
fix up tests to intantiate assertion test helper
...
add http tests for remaining contexts
2017-08-04 19:48:20 +00:00
Michael Schurter
5794e5ece7
Use int32 for atomic ops to avoid alignment issues
...
From https://golang.org/pkg/sync/atomic/#pkg-note-BUG :
On both ARM and x86-32, it is the caller's responsibility to arrange for
64-bit alignment of 64-bit words accessed atomically. The first word in
a global variable or in an allocated struct or slice can be relied upon
to be 64-bit aligned.
2017-08-04 10:14:16 -07:00
Chelsea Holland Komlo
111019642b
resources are expected by state store to be plural
2017-08-04 15:07:34 +00:00
Chelsea Holland Komlo
b2b4c5d7af
add documentation
...
extract magic number into variable
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
b6f459a7a9
refactor rpc endpoint and tests
...
add test for when no prefixes are matched
add test for no context at HTTP api
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
7b7a80d6ce
resources list endpoint accepts http POST and PUT
...
set the index for a resources response
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
312bb19e1c
refactor and add error handling for invalid context type
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
ef5a62aaa1
use upsert as a test helper
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
0026a308ec
add truncation boolean to response
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
06f10d2e5f
adds evaluations
...
makes context singular
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
92cc40f1de
change resources endpoint from http get to post
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
64a83edd9f
remove resourceliststub, no need for another layer of abstraction
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
36285a4b23
test resources endpoint will return matching prefixes
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
ecd0d85a4e
adding test validation that received resources matches requested
2017-08-04 14:34:25 +00:00
Chelsea Holland Komlo
4dd6b46198
Retrieve job information for resources endpoint
...
requires further refactoring and logic for more contexts
2017-08-04 14:34:25 +00:00
Alex Dadgar
067a638478
Allow template to set Vault grace
...
This PR allows a template to specify the Vault grace duration.
Fixes https://github.com/hashicorp/nomad/issues/2922
2017-08-01 14:14:08 -07:00
James Nugent
bf13a0cd90
meta: Fix goimports for command/agent/syslog.go
2017-07-30 08:56:40 -05:00
Michael Schurter
d2f8fdcad5
Fix comment
2017-07-25 12:13:05 -07:00
Michael Schurter
3e6231842d
Forgot to setcmdenv
...
This would leak a consul agent
2017-07-25 12:09:57 -07:00
Michael Schurter
4b83eba599
Use seen more conservatively
2017-07-24 16:48:40 -07:00
Michael Schurter
cdf138eb27
Always increment failures...
...
...as it's used in calculating the backoff
2017-07-24 15:37:53 -07:00
Michael Schurter
809724ad8d
Track whether Consul has ever been seen
...
Need a way to squelch Consul operation errors on shutdown. If it's never
been seen don't log errors about deregs failing.
2017-07-24 12:12:02 -07:00
Michael Schurter
edbe62a879
Synchronously deregister agent on shutdown
...
Fixes #2891
Previously the agent services and checks were being asynchrously
deregistered on shutdown, so it was a race between the sync goroutine
deregistering them and Nomad shutting down.
This switches to synchronously deregister agent serivces and checks
which doesn't really have a downside since the sync goroutines retry
behavior doesn't help on shutdown anyway.
2017-07-24 11:40:37 -07:00
Alex Dadgar
553bc91725
Parallel client tests ( #2890 )
...
* alloc_runner
* Random tests
* parallel task_runner and no exec compatible check
* Parallel client
* Fail fast and use random ports
* Fix docker port mapping
* Make concurrent pull less timing dependant
* up parallel
* Fixes
* don't build chroots in parallel on travis
* Reduce parallelism on travis with lxc/rkt
* make java test app not run forever
* drop parallelism a little
* use docker ports that are out of the os's ephemeral port range
* Limit even more on travis
* rkt deadline
2017-07-22 19:04:36 -07:00
Alex Dadgar
4dd5d943c7
remove root requirement on consul integration check
2017-07-21 19:32:41 -07:00
Alex Dadgar
56f9cf86df
Speed up client startup
2017-07-20 22:34:24 -07:00
Alex Dadgar
c106df9215
Switch to in-process agent
2017-07-20 21:07:32 -07:00
Alex Dadgar
d019eed363
Merge pull request #2874 from hashicorp/f-command-agent-tests
...
Parallelize the command/agent tests and add new test agent
2017-07-20 20:27:49 -07:00
Alex Dadgar
5df9be0ccb
Fix bootstrapping and waiting
2017-07-20 20:15:37 -07:00
Alex Dadgar
4e90d56098
More parallel
2017-07-20 09:36:34 -07:00
Alex Dadgar
9037693436
New test agent
2017-07-19 22:14:36 -07:00
Alex Dadgar
9a2a5af608
Don't print atlas
2017-07-19 20:25:06 -07:00
Alex Dadgar
18c7043a30
Merge pull request #2866 from hashicorp/f-autocomplete-agent
...
Agent command autocompletes to hcl/json files
2017-07-19 13:18:32 -07:00
Michael Schurter
c9e4c041b3
Too lazy to remember the right formatter for floats
2017-07-19 11:53:18 -07:00
Alex Dadgar
b4b50b636f
Fix predictor
2017-07-19 11:51:01 -07:00
Alex Dadgar
871cdcb932
Agent command autocompletes to hcl/json files
2017-07-19 11:28:16 -07:00
Michael Schurter
40c2d4e5eb
Merge pull request #2858 from hashicorp/b-2849-deploy-json
...
Implement -json for job deployments
2017-07-19 10:15:01 -07:00
Michael Schurter
125a3fb2f9
Error -> Errof
2017-07-19 10:00:57 -07:00
Alex Dadgar
747d67eb3f
Allow tuning of heartbeat ttls
...
This PR allows tuning of heartbeat TTLs. An example of very aggressive
settings is as follows:
```
server {
heartbeat_grace = "1s"
min_heartbeat_ttl = "1s"
max_heartbeats_per_second = 200.0
}
```
2017-07-19 09:38:35 -07:00
Michael Schurter
99d1486f32
Never remove unknown agent services
...
Fixes #2827
This is a tradeoff. The pro is that you can run separate client and
server agents on the same node and advertise both. The con is that if a
Nomad agent crashes and isn't restarted on that node in the same mode
its entry will not be cleaned up.
That con scenario seems far less likely to occur than the scenario on
the pro side, and even if we do leak an agent entry the checks will be
failing so nothing should attempt to use it.
2017-07-18 13:23:01 -07:00
Alex Dadgar
45712c6ca3
test fixes
2017-07-07 14:11:27 -07:00