Chelsea Holland Komlo
a05d7a2a20
default to job status if no arguments are provided
2017-08-25 16:42:11 +00: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
Alex Dadgar
cf7a3fdf51
Autocomplete global flags
2017-08-23 23:29:29 +00:00
Chelsea Holland Komlo
8d4b963151
small fixes and cleanup
2017-08-23 23:04:47 +00:00
Chelsea Holland Komlo
ed2a544502
add global flags to autocomplete
2017-08-23 22:58:44 +00:00
Chelsea Holland Komlo
35f5c8f2dd
use PredictAnything when an flag accepts an argument
2017-08-23 22:58:44 +00:00
Chelsea Holland Komlo
2721e5890f
enable autocompletion of flags
2017-08-23 22:57:07 +00:00
Alex Dadgar
2ee5b6c39d
Change tty detection library
2017-08-23 14:35:50 -07:00
Alex Dadgar
3f0fc016e5
Detect STDOUT isn't a TTY and disable color
...
This PR disables color output when the STDOUT is not a TTY. This makes
running commands under `watch` or other commands nicer.
2017-08-23 14:35:26 -07:00
Alex Dadgar
00947f3ff4
move autocomplete functions to top for consistency of placement
2017-08-22 13:41:42 -07:00
Alex Dadgar
f79c14ac4c
flesh out the rest of the job subcommands
2017-08-22 13:39:06 -07:00
Alex Dadgar
b41be1f85b
update older autocomplete tests to inject state
2017-08-22 13:33:12 -07:00
Alex Dadgar
e3a71f6c53
nomad stop
2017-08-22 13:22:29 -07:00
Alex Dadgar
c172972b61
inspect
2017-08-22 13:19:29 -07:00
Alex Dadgar
554e17c3e9
node drain
2017-08-22 13:13:44 -07:00
Alex Dadgar
17e362e162
logs and fs
2017-08-22 13:11:32 -07:00
Alex Dadgar
02f26f3384
Autocomplete deployment commands
2017-08-22 13:05:24 -07:00
Alex Dadgar
422332c8bf
Merge pull request #3002 from jrasell/gh_2993
...
Add the Nomad agent version to the node-status CLI output.
2017-08-22 10:43:25 -07: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
Slobodan Mišković
7b5e5d695b
Spelling fix: stana -> stanza
2017-08-16 23:32:41 -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
James Rasell
0d120228ea
Updates based on feedback provided by dadgar.
2017-08-16 22:19:31 +01:00
Chelsea Komlo
755cc33f13
Merge pull request #3037 from hashicorp/b-limit-tab-autocomplete
...
Tab completion should only happen once
2017-08-16 14:25:14 -04:00
Alex Dadgar
828b9bfae4
fix http test
2017-08-16 11:01:12 -07:00
Chelsea Holland Komlo
c083af1e7c
tab completion should only happen once
2017-08-16 17:04:47 +00:00
Chelsea Holland Komlo
68679ee265
tests for autocomplete functions
2017-08-15 20:21:50 +00:00
Chelsea Holland Komlo
499de71dfd
adding autocomplete for nodes, evals, and jobs
2017-08-14 20:44:28 +00: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
Chelsea Holland Komlo
9402d330e8
autocomplete for allocation ids
2017-08-14 17:35:35 +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
6b238edc22
Merge pull request #3001 from hashicorp/f-template-events
...
Template emits events explaining why it is blocked
2017-08-10 13:00:58 -07:00
“James
d6d721d7c1
Add the Nomad agent version to the node-status CLI putput.
2017-08-10 08:27:26 +01:00
Chelsea Holland Komlo
869ee83b82
migrate nomad status to nomad job status
2017-08-09 15:16:04 +00: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
4f6f6a13c8
Emit generic task events
2017-08-07 21:26:04 -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
Dom Udall
cde3da569e
Fixing spelling mistake
...
Updating `deregistraion` -> `deregistration`
2017-08-01 10:26:52 +01:00
Alex Dadgar
7cd6040bdf
Merge pull request #2929 from hashicorp/b-status-panic
...
Ensure backwards compatibility between 0.6.X CLI and 0.5.X
2017-07-31 11:23:37 -07:00
James Nugent
bf13a0cd90
meta: Fix goimports for command/agent/syslog.go
2017-07-30 08:56:40 -05:00
Alex Dadgar
eef3b15005
Ensure backwards compatibility between 0.6.X CLI and 0.5.X
...
This PR goes through the CLI commands and ensures that a 0.6.X cli
gracefully handles interacting with a 0.5.X Nomad Agent.
Fixes https://github.com/hashicorp/nomad/issues/2918
2017-07-28 10:20:47 -07:00
Michael Schurter
7cbae6e168
Merge pull request #2899 from hashicorp/d-mention-env-in-init
...
Mention env templates in nomad init
2017-07-26 11:17:47 -07:00
Alex Dadgar
e0beda704a
New commands docs and small fixes
...
This PR adds the command documentations and has small CLI fixes.
2017-07-25 17:37:09 -07:00
Alex Dadgar
a271b8fc22
inspect
2017-07-25 17:37:09 -07:00
Alex Dadgar
f8b9fc4124
Fix eval-status bug
2017-07-25 17:37:09 -07:00
Michael Schurter
9099371a42
Mention restart
2017-07-25 16:26:42 -07: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
da6a5ddaf0
Mention env templates in nomad init
2017-07-25 10:28:50 -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
d7fee07ebc
Parallel
2017-07-20 21:24:21 -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
15fad96c21
Merge pull request #2868 from hashicorp/f-feedback
...
Variety of UX fixes
2017-07-20 17:43:42 -07:00
Alex Dadgar
da13d5a61c
Fix test
2017-07-20 17:42:58 -07:00
Alex Dadgar
40ca1298b3
Multiple matched objects now treated as an error condition.
2017-07-20 17:31:07 -07:00
Michael Schurter
6b2cb6bb23
Don't display UNIX epoch dates
...
Submitted times are UNIX epoch for jobs created before 0.6 which is
confusing in the CLI. Display nothing instead (formatted as "<none>").
2017-07-20 15:43:00 -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
d5278a62e7
Job promote command
2017-07-19 15:39:32 -07:00
Alex Dadgar
5a526d9f37
Inspect job at a particular version
2017-07-19 13:44:30 -07:00
Alex Dadgar
39e7a26e5d
Small fixes and UX changes
2017-07-19 13:34:24 -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
3eaa3b2ec3
Implement -json for job deployments
...
Fixes #2849
2017-07-18 17:28:44 -07:00
Michael Schurter
dbcb19c6d9
Merge pull request #2854 from hashicorp/b-2827-agent-services
...
Never remove unknown agent services
2017-07-18 14:48:36 -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
484e9f2693
Autocomplete files
...
This PR makes run, validate and plan autocomplete their arg to
appropriate files.
2017-07-18 13:18:17 -07:00
Alex Dadgar
c10b6c0560
Merge pull request #2842 from hashicorp/d-init
...
Update init command to show new update stanza.
2017-07-17 15:04:49 -07:00
Alex Dadgar
53bcc6a2cc
spelling errors
2017-07-17 11:19:37 -07:00
Alex Dadgar
df3d9229fe
Allow cli package to handle version.
...
This PR removes our custom handling of the version flag and updates job
history to use a version flag instead of `-job-version`.
2017-07-17 11:04:07 -07:00
Alex Dadgar
129d5fd4c3
Update init command to show new update stanza.
2017-07-16 11:12:43 -07:00
Alex Dadgar
05894f4611
Small fixes
2017-07-07 17:34:50 -07:00
Alex Dadgar
45712c6ca3
test fixes
2017-07-07 14:11:27 -07:00
Alex Dadgar
bf2dafb8e9
check id method name changed
2017-07-07 12:15:09 -07:00
Alex Dadgar
ade9a7c768
@jippi Changed my mind! Good suggestion
2017-07-07 12:12:48 -07:00
Alex Dadgar
e6f5e3f301
deployment status in job status view
2017-07-07 12:12:48 -07:00
Alex Dadgar
770af68119
alloc-status
2017-07-07 12:12:48 -07:00
Alex Dadgar
40b04a5ea9
alloc-list shows version
2017-07-07 12:12:48 -07:00
Alex Dadgar
7867f2cdb8
deployment status indicates whether canaries were promoted
2017-07-07 12:12:48 -07:00
Alex Dadgar
4e014e36f7
Fix broken things on deployment promote
2017-07-07 12:12:48 -07:00
Alex Dadgar
9f016606aa
Fix some tests, eval monitor shows deployment id and deployment cancels based on version
2017-07-07 12:12:48 -07:00
Alex Dadgar
398c4a6be7
Vendor columnize
2017-07-07 12:11:39 -07:00
Alex Dadgar
91451228eb
Fix some commands test
2017-07-07 12:11:39 -07:00
Alex Dadgar
1cb877699a
Disallow update stanza on batch jobs
...
This PR:
* disallows update stanzas on batch jobs
* undeprecates the stagger field
* changes the way warnings are returned
2017-07-07 12:11:39 -07:00
Alex Dadgar
bfc22346d5
Return the reverted job version
2017-07-07 12:10:04 -07:00
Alex Dadgar
5457bb7962
Job stability
2017-07-07 12:10:04 -07:00
Alex Dadgar
09dfa2fc10
Rename CreateDeployments and remove cancelling behavior in state_store
2017-07-07 12:10:04 -07:00
Alex Dadgar
067ed86a47
Client watches for allocation health using task state and Consul checks
...
This PR adds watching of allocation health at the client. The client can
watch for health based on the tasks running on time and also based on
the consul checks passing.
2017-07-07 12:10:04 -07:00
Alex Dadgar
780de092ce
Formatting abilities
2017-07-07 12:07:07 -07:00
Alex Dadgar
9ee5540d3c
job deployments
2017-07-07 12:07:07 -07:00
Alex Dadgar
2aa6c13349
deployment promote
2017-07-07 12:07:07 -07:00
Alex Dadgar
58426f0055
fail,pause,resume commands
2017-07-07 12:07:07 -07:00
Alex Dadgar
e7034691ea
deployment status
2017-07-07 12:07:07 -07:00
Alex Dadgar
57cbbf87f8
deployment list
2017-07-07 12:07:07 -07:00
Alex Dadgar
57d07ecd89
small fixes
2017-07-07 12:07:07 -07:00
Alex Dadgar
7719306ef3
job revert
2017-07-07 12:07:07 -07:00
Alex Dadgar
2471b86dec
Show submit time
2017-07-07 12:07:07 -07:00
Alex Dadgar
95c7a5bcf3
job history
2017-07-07 12:05:57 -07:00
Alex Dadgar
abf34204cc
JobVersions returns struct with optional diff
2017-07-07 12:05:57 -07:00
Alex Dadgar
c643e6b0d1
Add config options
2017-07-07 12:05:56 -07:00
Alex Dadgar
f233629a4f
job deployment endpoint + api
2017-07-07 12:05:56 -07:00
Alex Dadgar
580eed5c88
HTTP Endpoints
2017-07-07 12:03:11 -07:00
Alex Dadgar
23dcd175ef
Show canaries on plan
2017-07-07 12:03:11 -07:00
Michael Schurter
cab28b2963
Fix api endpoint test
2017-07-06 10:45:44 -07:00
Michael Schurter
0d3bdf7210
Add support for go-getter modes
...
Fixes #2678
2017-07-06 10:45:44 -07:00
Michael Schurter
b9c9e6e557
Fix no_host_uuid parsing
...
Need to pointerify it to default to true since we can't tell false from
unset if it's not a pointer.
2017-07-03 17:41:20 -07:00
Michael Schurter
6e7cc3964e
Merge pull request #2709 from hashicorp/f-advertise-docker-ips
...
Advertise driver-specific addresses
2017-07-03 14:04:12 -07:00
Michael Schurter
d9e032aabf
Merge pull request #2735 from hashicorp/f-no_host_uuid-true
...
Default no_host_uuid to true instead of false
2017-07-03 13:18:25 -07:00
Alexandre Dantas
100b51ac6a
Fixing issue where use_node_name was always been set as false when merging telemetry configurations
2017-07-02 00:31:09 -03:00
Michael Schurter
e9c357187c
Properly normalize IPv6 addresses
...
A fix to #2739 instead of forcing IPv6 users to always specify a port as
well.
Prior to this commit IPv6 advertise addresses which lacked a port would
fail instead of having the default port added because
`net.SplitHostPort(someipv6)` returns a different error than
`net.SplitHostPort(someipv4)`.
2017-06-29 10:46:31 -07:00
Michael Schurter
a863ead30e
Fix test error formats
2017-06-26 12:53:43 -07:00
Michael Schurter
e81252ba45
Default no_host_uuid to true instead of false
...
The host UUID isn't unique in many virtualized cases and of dubious
value even when it is univerally unique. Default to a random UUID.
2017-06-23 16:23:01 -07:00
Michael Schurter
5b59bea67b
Move caonicalization from nomad/structs/ to api/
2017-06-21 17:19:08 -07:00
Michael Schurter
9da78ae25f
Remove debug logging
2017-06-21 17:19:08 -07:00
Michael Schurter
c0eff81383
Fix Service.AddressMode changes during task updates
2017-06-21 17:19:08 -07:00
Michael Schurter
67d154a274
Test driver network advertisement and checks
2017-06-21 17:19:08 -07:00
Michael Schurter
b9bfb84b53
Implement DriverNetwork and Service.AddressMode
...
Ideally DriverNetwork would be fully populated in Driver.Prestart, but
Docker doesn't assign the container's IP until you start the container.
However, it's important to setup the port env vars before calling
Driver.Start, so Prestart should populate that.
2017-06-21 17:19:08 -07:00
Michael Schurter
95a00cbef1
Fix path used by Nomad Server HTTP Check
...
Fixes #2701
2017-06-21 10:41:28 -07:00
Michael Schurter
ffc2b36dc7
Merge pull request #2636 from hashicorp/f-gc-alloc-limit
...
Add new gc_max_allocs tuneable
2017-05-30 16:14:09 -07:00
Michael Schurter
dd51aa1cb9
Merge pull request #2654 from hashicorp/f-env-consul
...
Add envconsul-like support and refactor environment handling
2017-05-30 14:40:14 -07:00
Michael Schurter
a7e26e0a3e
Don't autoadvertise private ip if bind=localhost
...
A slight improvement to #2399 - if bind is localhost, return an error
instead of advertising a private ip. The advertised ip isn't valid and
will just cause errors on use. It's better to fail with an error message
instructing users how to fix the problem.
2017-05-30 11:47:29 -07:00
Michael Schurter
bbf299dde1
Fix config parsing test
...
Went overboard before I realized there's only one test case.
2017-05-30 11:39:26 -07:00
Michael Schurter
10b6610e56
Functional consul template env file support
2017-05-23 13:45:14 -07:00
Alex Dadgar
4503e2d1f7
Merge pull request #2634 from hashicorp/f-update-block
...
New Update block syntax
2017-05-18 13:29:17 -04:00
Michael Schurter
06f937bf28
Merge pull request #2591 from hashicorp/b-2180-script-updates
...
Properly interpolate services on updated tasks
2017-05-17 09:09:01 -07:00
Michael Schurter
49ce86ee0a
Lower default gc_max_allocs to 50
2017-05-12 15:57:27 -07:00
Michael Schurter
5fd438661d
Merge pull request #2399 from multani/sockaddr-template
...
Add support for late binding to IP addresses using go-sockaddr/template
2017-05-11 17:25:03 -07:00
Michael Schurter
0453c2709c
Add new gc_max_allocs tuneable
...
More than gc_max_allocs may be running on a node, but terminal allocs
will be garbage collected to try to keep the total number below the
limit.
2017-05-11 17:18:02 -07:00
Alex Dadgar
919c50ba5c
Merge branch 'master' into f-update-block
2017-05-11 13:08:31 -07:00
Alex Dadgar
ac2afece53
Fix truncate test
2017-05-11 13:05:53 -07:00
Alex Dadgar
6232b66ea7
Thread through warnings about deprecations
2017-05-09 20:52:47 -07:00
Alex Dadgar
ba70cc4f01
Merge branch 'master' into f-bolt-db
2017-05-09 11:11:55 -07:00
Alex Dadgar
10b040aea3
New update block; still need to handle the upgrade path
2017-05-08 17:44:26 -07:00
Michael Schurter
85210eb92f
Update consul/api to support unix socket addrs
...
Fixes #2594
2017-05-08 11:57:04 -07:00
Michael Schurter
f350c1f37e
Merge pull request #2608 from hashicorp/f-test-verify_https_client
...
Test verify_https_client behavior and skip Consul HTTPS health checks when enabled
2017-05-04 17:36:13 -07:00
Michael Schurter
749406e50b
Remove extra Travis logging
2017-05-04 17:35:54 -07:00
Michael Schurter
24c8434368
Adding logging for Travis
2017-05-03 15:18:48 -07:00
Alex Dadgar
2d54ee2925
Fix tests
2017-05-03 15:14:19 -07:00
Michael Schurter
4dc897a664
Don't reuse transport/client
2017-05-03 13:26:55 -07:00
Kate Taggart
2fb6301b37
responding to feedback on PR: remove Region from Node struct, some grammatical niceties.
2017-05-03 12:45:59 -07:00
Kate Taggart
af22cb722e
I think I did it.
2017-05-03 12:45:59 -07:00
Alex Dadgar
9faa98e13b
Fix tests
2017-05-03 12:38:49 -07:00
Michael Schurter
c4ab8211b6
Skip https health check if verify_https_client is true
2017-05-03 12:19:02 -07:00
Michael Schurter
66aea59650
Fix error check for consul skip tls verify support
2017-05-02 17:38:18 -07:00
Michael Schurter
d42bad098a
Extensively test verify_https_client behavior
...
verify_https_client support added in #2587
2017-05-02 16:48:16 -07:00
Michael Schurter
b6e97d8523
Merge pull request #2587 from weargoggles/patch-1
...
Verification options for TLS
2017-05-02 10:36:41 -07:00
Alex Dadgar
d779defe65
Use batching
2017-05-01 14:50:34 -07:00
Alex Dadgar
bddedd7aba
Don't deepcopy job when retrieving copy of Alloc
...
This PR removes deepcopying of the job attached to the allocation in the
alloc runner. This operation is called very often so removing reflect
from the code path and the potentially large number of mallocs need to
create a job reduced memory and cpu pressure.
2017-05-01 14:50:34 -07:00
Pete Wildsmith
f64f37317e
update test
2017-04-30 15:40:04 +01:00
Pete Wildsmith
642fbd2f56
address feedback
2017-04-29 08:26:12 +01:00
Pete Wildsmith
1b8a1614ca
reduce to one configuration option
...
There should be just one option, verify_https_client, which
controls incoming and outgoing validation for the HTTPS wrapper
2017-04-28 10:45:09 +01:00
Pete Wildsmith
829d9e60b9
fix config parse test
2017-04-26 21:13:54 +01:00
Michael Schurter
cafefa049b
Properly interpolate services on updated tasks
...
Previously was interpolating the original task's services again.
Fixes #2180
Also fixes a slight memory leak in the new consul agent. Script check
handles weren't being deleted after cancellation.
2017-04-26 11:22:01 -07:00
Pete Wildsmith
1e6694c5c1
Verification options allowed in TLS config
2017-04-25 23:35:47 +01:00
Pete Wildsmith
3070d5ab9d
Copy TLSConfig verification flags in server create
2017-04-25 23:33:12 +01:00
Alex Dadgar
65945a09fa
Agent test
2017-04-20 11:14:06 -07:00
Alex Dadgar
b3d7175e52
Agent revert
2017-04-20 11:14:06 -07:00
Michael Schurter
8926743106
Fix consul test build on Windows
2017-04-19 16:14:11 -07:00
Michael Schurter
83f9591d75
Thanks go vet!
2017-04-19 13:05:41 -07:00
Michael Schurter
e997ae44a5
Skip checks with TLSSkipVerify if it's unsupported
...
Fixes #2218
2017-04-19 12:45:34 -07:00
Michael Schurter
45a8635ea2
Add TLSSkipVerify support to api and parser
2017-04-19 12:45:34 -07:00
Michael Schurter
cdb7d2ebb6
Use go-version instead of manual version parsing
2017-04-19 12:42:48 -07:00
Michael Schurter
4910f867e7
Use spiffy new Go 1.8 subtest feature
2017-04-19 12:42:48 -07:00
Michael Schurter
3e8dd386ee
Forgot an important word
2017-04-19 12:42:48 -07:00
Michael Schurter
947e31e9c2
Only register HTTPS agent check when Consul>=0.7.2
...
Support for TLSSkipVerify in other checks coming soon!
2017-04-19 12:42:48 -07:00
Michael Schurter
383f21559e
Explain weird timer logic
2017-04-19 12:42:48 -07:00
Michael Schurter
4db840b54e
Metricsify new Consul client
2017-04-19 12:42:48 -07:00
Michael Schurter
59c687c940
Always fail script checks when deadline exceeded
2017-04-19 12:42:48 -07:00
Michael Schurter
ca29bb2cac
Test script check exit codes
2017-04-19 12:42:47 -07:00
Michael Schurter
6f6431ce0b
Follow _testing.go convention for testing tools
2017-04-19 12:42:47 -07:00
Michael Schurter
2a11508cc8
Rework to account for ports not being in IDs
...
Previous implementation assumed all struct fields were included in
service and check IDs. Service IDs never include port labels and check
IDs *optionally* include port labels, so lots of things had to change.
Added a really big test to exercise this.
2017-04-19 12:42:47 -07:00
Michael Schurter
6e0fd86361
Remove commits return value
...
...and still protect against leaking agent entries in Consul on
shutdown.
2017-04-19 12:42:47 -07:00
Michael Schurter
fb52bbfa45
Explain PortLabel handling in RegisterAgent
2017-04-19 12:42:47 -07:00
Michael Schurter
2728216f6f
Plumb alloc id + task name into script check logs
2017-04-19 12:42:47 -07:00
Michael Schurter
01b20cbb59
Stop being lazy and just type out struct{}{}
2017-04-19 12:42:47 -07:00
Michael Schurter
5e908dbf38
Use nifty testtask sleep command for xplat compat
2017-04-19 12:42:47 -07:00
Michael Schurter
8c433cfba1
Add comments, clarify names, fix PR comments
2017-04-19 12:42:47 -07:00
Michael Schurter
40b3987e90
Explain cleanup defer in test
2017-04-19 12:42:47 -07:00
Michael Schurter
7c8ad71da5
Fix comment to reflect reality
2017-04-19 12:42:47 -07:00
Michael Schurter
745ad9521f
Move ScriptExecutor to driver
2017-04-19 12:42:47 -07:00
Michael Schurter
926d141532
Fix shutdown when consul is down
2017-04-19 12:42:47 -07:00
Michael Schurter
87b28cfb75
Switch ServiceClient to synchronizing state
...
Previously it applied a stream of operations. Reconciling state is less
complex and error prone at the cost of slightly higher CPU/memory usage.
2017-04-19 12:42:47 -07:00
Michael Schurter
244251490a
Add UpdateTask method instead of Remove/Add
2017-04-19 12:42:47 -07:00
Michael Schurter
8118c41931
Remove some lies
2017-04-19 12:42:47 -07:00
Michael Schurter
0143bef8c7
Remove unused syncInterval
2017-04-19 12:42:47 -07:00
Michael Schurter
e204a287ed
Refactor Consul Syncer into new ServiceClient
...
Fixes #2478 #2474 #1995 #2294
The new client only handles agent and task service advertisement. Server
discovery is mostly unchanged.
The Nomad client agent now handles all Consul operations instead of the
executor handling task related operations. When upgrading from an
earlier version of Nomad existing executors will be told to deregister
from Consul so that the Nomad agent can re-register the task's services
and checks.
Drivers - other than qemu - now support an Exec method for executing
abritrary commands in a task's environment. This is used to implement
script checks.
Interfaces are used extensively to avoid interacting with Consul in
tests that don't assert any Consul related behavior.
2017-04-19 12:42:47 -07:00
Alex Dadgar
e7b128271f
Diff code fixes
2017-04-16 16:54:40 -07:00
Alex Dadgar
7b3f3f80fb
Status shows type of job
2017-04-15 17:08:05 -07:00
Alex Dadgar
34332af70e
GC and some fixes
2017-04-15 17:08:05 -07:00
Alex Dadgar
3145086a42
non-purge deregisters
2017-04-15 17:08:05 -07:00
Alex Dadgar
45ad95e862
Agent API + api package
2017-04-15 17:08:05 -07:00
Alex Dadgar
f97664512b
Upsert Job Histories
2017-04-15 17:08:05 -07:00
Adam Stankiewicz
4daf4cb8c9
Remove unnecessary parameter from NewHTTPServer
2017-04-10 16:24:49 +02:00
Alex Dadgar
81b78f77e1
Track task start/finish time & improve logs errors
...
This PR adds tracking to when a task starts and finishes and the logs
API takes advantage of this and returns better errors when asking for
logs that do not exist.
2017-03-31 16:14:11 -07:00
Alex Dadgar
103e8d21fb
Fix dispatch of periodic job
...
This PR fixes an issue in which when a periodic and parameterized job
was dispatched, an allocation would be immediately created.
Fixes https://github.com/hashicorp/nomad/issues/2470
2017-03-27 16:55:17 -07:00
Alex Dadgar
df9ce2680b
Fix output alignment and remove no-change DC
...
Old Output:
```
+/- Job: "example"
Datacenters {
Datacenters: "dc1"
}
+/- Task Group: "cache" (1 create/destroy update)
+/- RestartPolicy {
+/- Attempts: "10" => "9"
Delay: "25000000000"
Interval: "300000000000"
Mode: "delay"
}
+/- EphemeralDisk {
Migrate: "false"
+/- SizeMB: "300" => "301"
Sticky: "false"
}
+/- Task: "redis" (forces create/destroy update)
+ Meta[key]: "value"
+/- Config {
image: "redis:3.2"
+/- port_map[0][db]: "6379" => "6380"
}
+/- Resources {
CPU: "500"
DiskMB: "0"
IOPS: "0"
+/- MemoryMB: "256" => "257"
}
+/- Service {
Name: "global-redis-check"
PortLabel: "db"
+/- Check {
Command: ""
InitialStatus: ""
Interval: "10000000000"
Name: "alive"
Path: ""
PortLabel: ""
Protocol: ""
+/- Timeout: "2000000000" => "3000000000"
Type: "tcp"
}
}
```
New Output:
```
+/- Job: "example"
+/- Task Group: "cache" (1 create/destroy update)
+/- RestartPolicy {
+/- Attempts: "10" => "9"
Delay: "25000000000"
Interval: "300000000000"
Mode: "delay"
}
+/- EphemeralDisk {
Migrate: "false"
+/- SizeMB: "300" => "301"
Sticky: "false"
}
+/- Task: "redis" (forces create/destroy update)
+ Meta[key]: "value"
+/- Config {
image: "redis:3.2"
+/- port_map[0][db]: "6379" => "6380"
}
+/- Resources {
CPU: "500"
DiskMB: "0"
IOPS: "0"
+/- MemoryMB: "256" => "257"
}
+/- Service {
Name: "global-redis-check"
PortLabel: "db"
+/- Check {
Command: ""
InitialStatus: ""
Interval: "10000000000"
Name: "alive"
Path: ""
PortLabel: ""
Protocol: ""
+/- Timeout: "2000000000" => "3000000000"
Type: "tcp"
}
}
```
2017-03-21 11:31:06 -07:00
Alex Dadgar
40d0f3ce7d
Flush logs on err
2017-03-14 14:48:39 -07:00
Alex Dadgar
177bd14718
rename cpu_total_compute and docs
2017-03-14 14:15:49 -07:00
Alex Dadgar
a1a7941dec
Various fixes
...
This PR:
* Uses Go 1.8 executable lookup
* Stores any err message from stats init method
* Allows overriding of Cpu Compute for hosts where it can't be detected
2017-03-14 12:56:31 -07:00
Alex Dadgar
2a105c4eaa
Merge pull request #2427 from hashicorp/f-gc-limit
...
Limit parallelism during garbage collection
2017-03-14 10:45:29 -07:00
Jonathan Ballet
cfaa2e9a1a
Allow to advertise 127.0.0.1 in non-dev mode if explicitly configured
2017-03-13 23:05:06 +01:00
Jonathan Ballet
562deb6262
Default to private IP advertise address in non-dev mode
2017-03-13 23:01:11 +01:00
Jonathan Ballet
3c5c49bedb
Parse template before splitting host/port
...
Ref: a33af1ca0b (r105444568)
2017-03-13 21:40:37 +01:00
Alex Dadgar
70e4feb045
Limit parallelism during garbage collection
...
This PR introduces a parallelism limit during garbage collection. This
is used to avoid large resource usage spikes if garbage collecting many
allocations at once.
2017-03-10 16:27:00 -08:00
Ben Barnard
372303f4c6
Return AgentSelf struct from Agent.Self() instead of map
...
api.AgentSelf mirrors command.agent.agentSelf, and makes it easier to
work with the results of a call to Agent.Self()
2017-03-08 15:59:10 +01:00
Alex Dadgar
fa413b66f9
Merge pull request #2398 from TheBits/master
...
Remove 'disk space' from docs
2017-03-06 14:52:12 -08:00
Alex Dadgar
fcdefca1bf
Display Disk resources on CLI
...
Fixes https://github.com/hashicorp/nomad/issues/2401
2017-03-06 12:53:24 -08:00
Sergey Mezentsev
0078af8b08
Remove 'disk space' from docs
2017-03-04 22:54:49 +03:00
Michael Schurter
2caa219352
Small init and validate smoke test
2017-03-03 16:13:25 -08:00
Alex Dadgar
3b9bdfef1c
Make validate work without a Nomad agent
2017-03-03 15:02:03 -08:00
Alex Dadgar
8827b4f4d0
Fix canonicalization of services
2017-03-01 15:30:01 -08:00
Alex Dadgar
ed95a69905
Fix plan
2017-03-01 14:50:26 -08:00
Alex Dadgar
c58494fdb6
Handle periodic paramaterized jobs
...
Fixes https://github.com/hashicorp/nomad/issues/2382
2017-03-01 11:45:20 -08:00
Alex Dadgar
5be806a3df
Fix vet script and fix vet problems
...
This PR fixes our vet script and fixes all the missed vet changes.
It also fixes pointers being printed in `nomad stop <job>` and `nomad
node-status <node>`.
2017-02-27 16:00:19 -08:00
Alex Dadgar
6910678c21
Allow random UUID
2017-02-27 13:42:37 -08:00
Alex Dadgar
6afcba9e22
Allow specification of eval/job gc threshold
2017-02-27 11:58:10 -08:00
Jonathan Ballet
72b0a7f34d
Add support for late binding to IP addresses using go-sockaddr/template
2017-02-26 23:28:23 +01:00
Alex Dadgar
5fd7975750
Fix pointer dereference for stats
2017-02-25 13:36:23 -08:00
Sean Chittenden
9cde9296da
Change the default display name from the Circonus Instance ID to
...
`Nomad`.
The display name is already scoped to target/host.
2017-02-24 14:59:11 -08:00
Alex Dadgar
3d353ffbcd
Node-status displays drivers
...
This PR adds the drivers that are enabled to the output of `nomad
node-status`
2017-02-22 18:54:28 -08:00
Alex Dadgar
6936c81720
Merge pull request #2302 from hashicorp/f-task-state-setup
...
Adding a task event for setup
2017-02-22 18:42:57 -08:00
Alex Dadgar
d2cbbac76e
Merge pull request #2347 from hashicorp/b-parse
...
Remove defaulting from parse and fix tests
2017-02-22 18:42:43 -08:00
Diptanu Choudhury
98921575af
Adding a task event for setup
2017-02-22 18:28:07 -08:00
Alex Dadgar
ed670f0226
Revert "Deregistering non-existant job returns 404"
2017-02-22 18:22:02 -08:00
Alex Dadgar
c105e5a080
Fix wrong types
2017-02-22 16:56:51 -08:00
Alex Dadgar
b5995c6cd7
Vendor + test fixes
2017-02-22 15:55:33 -08:00
Troy Swanson
e94b987075
s/successfully/successful
2017-02-21 10:58:33 -06:00
Alex Dadgar
1e5183fb89
Deregistering non-existant job returns 404
...
Fixes https://github.com/hashicorp/nomad/issues/2326
2017-02-20 20:10:21 -08:00
Alex Dadgar
b49fceb491
rebase
2017-02-20 16:43:28 -08:00
Alex Dadgar
693dd21420
Add leader and timezone to conversion
2017-02-20 16:36:41 -08:00
Alex Dadgar
9d5ef6e5f2
fix pointer
2017-02-20 16:22:31 -08:00
Alex Dadgar
99538ddf1c
Add defaulting test and fix types on the agent job endpoint tests
2017-02-20 15:53:56 -08:00
Alex Dadgar
b67c59f03c
Merge branch 'master' into refactor-parser
2017-02-20 15:13:21 -08:00
Alex Dadgar
10735d1c0f
Merge pull request #2321 from hashicorp/f-timezone
...
Allow specification of timezones in Periodic Jobs
2017-02-17 11:32:14 -08:00
Diptanu Choudhury
ccd13e855d
Merge branch 'refactor-parser' of github.com:hashicorp/nomad into refactor-parser
2017-02-16 15:18:46 -08:00
Diptanu Choudhury
b1339026ae
Fixed cli tests
2017-02-16 15:18:38 -08:00
Alex Dadgar
b2eb7028cc
Fix CLI handling of parameterized/periodic jobs
2017-02-16 14:29:34 -08:00
Alex Dadgar
5785b4518e
Refactor test and fix them
2017-02-16 14:00:41 -08:00
Alex Dadgar
70e716c8bb
Flatmap
2017-02-16 13:52:39 -08:00
Alex Dadgar
297ee0b1bd
Fix detection of missing port
2017-02-16 13:52:39 -08:00
Diptanu Choudhury
e3b92afc77
Making the job register endpoint use api.Job
2017-02-16 13:52:39 -08:00
Alex Dadgar
51dd3e6e12
Use RC to see if cause of failure
2017-02-16 13:52:39 -08:00
Diptanu Choudhury
161ce2ff87
Removing un-neccessary conversions
2017-02-16 13:52:39 -08:00
Diptanu Choudhury
571d112e6d
Fixed the nomad status command
2017-02-16 13:52:39 -08:00
Diptanu Choudhury
d0d7c92bab
Added tests
2017-02-16 13:52:39 -08:00
Diptanu Choudhury
7567209857
Making the job spec return api.Job
2017-02-16 13:52:39 -08:00
Alex Dadgar
74a5fedadc
fix test
2017-02-15 16:28:28 -08:00