Commit Graph

521 Commits

Author SHA1 Message Date
Nick Ethier
059ea949be minor code review fixes to api/jobs 2018-04-17 10:18:36 -04:00
Nick Ethier
4952c52d49 api: add test for canonicalized jobs/parse 2018-04-16 19:21:09 -04:00
Nick Ethier
14c44da757 command/agent: add Canonicalize option to parse args 2018-04-16 19:21:09 -04:00
Nick Ethier
b2b999249b command/agent: add /v1/jobs/parse endpoint
The parse endpoint accepts a hcl jobspec body within a json object
and returns the parsed json object for the job. This allows users to
register jobs with the nomad json api without specifically needing
a nomad binary to parse their hcl encoded jobspec file.
2018-04-16 19:21:06 -04:00
Preetha
935f03ab91 Merge pull request #4139 from hashicorp/b-reschedule-invalid-system-jobs
Make system jobs fail validation if they contain a reschedule stanza
2018-04-11 20:01:19 -05:00
Preetha Appan
20a029adaa add canonicalize for reschedulepolicy to simplify validation logic 2018-04-11 18:47:27 -05:00
Preetha Appan
beb1a013db Always merge with default reschedule policy if its not nil 2018-04-11 15:26:01 -05:00
Preetha Appan
532c106b63 Make system jobs fail validation if they contain a reschedule stanza 2018-04-11 14:56:20 -05:00
Charlie Voiselle
c728a2feb8 Changed "til" to "until"
Should be "till" or "until"; chose "until" because it is unambiguous as to meaning.
2018-04-11 12:36:28 -05:00
Alex Dadgar
1388638653 Fix ineffectual assignment 2018-04-05 11:29:39 -07:00
Alex Dadgar
c46cc059d4 Don't assume the read index won't be zero if no jobs have been registered 2018-04-03 18:24:59 -07:00
Michael Schurter
2c1f24c1ce cli: remove unreachable drain message 2018-03-30 14:15:12 -07:00
Michael Schurter
6dd601791c cli: log if a node goes down during draining 2018-03-30 14:02:42 -07:00
Michael Schurter
482f0b9fc7 drain: fix monitor node index handling 2018-03-30 12:43:53 -07:00
Michael Schurter
7ff790bc7d cli: differentiate normal output vs info 2018-03-30 11:42:11 -07:00
Michael Schurter
55b98ee299 cli: add color to drain output 2018-03-30 11:15:12 -07:00
Michael Schurter
efbaf2cc2d drain: fix cli blocking when allocs already stopped 2018-03-30 10:18:14 -07:00
Michael Schurter
4cefb6f06a drain: block cli until all allocs stop
Before the drain CLI would block until the node was marked as completing
drain operations. While technically correct, it could lead operators (or
more likely: scripts) to shutdown drained nodes before all of its
allocations had *actually* terminated.

This change makes the CLI block until all allocations have terminated
(unless ignoring system jobs).
2018-03-29 10:56:09 -07:00
Alex Dadgar
400cbcf128 Create evals for system jobs when drain is unset
This PR creates evals for system jobs when:

* Drain is unset and mark eligible is true
* Eligibility is restored to the node
2018-03-27 15:53:24 -07:00
Chelsea Holland Komlo
041786360e use time.Time for node events for compatibility 2018-03-27 15:43:57 -04:00
Preetha Appan
e2226ca2b7 s/linear/constant/g 2018-03-26 14:45:09 -05:00
Alex Dadgar
9b73881a00 Drain cli, api, http 2018-03-21 20:27:32 -07:00
Michael Schurter
3496bcf766 docs: improve DrainRequest.MarkEligible comment 2018-03-21 16:55:22 -07:00
Michael Schurter
07fe87918a test: index no longer guaranteed on job list
Also switch to require and add t.Helper to appropriate funcs.
2018-03-21 16:55:22 -07:00
Michael Schurter
2bb18741b0 api: fix tests to expect default migrate strategy 2018-03-21 16:51:45 -07:00
Michael Schurter
6347baec55 Add DesiredTransition.ShouldMigrate to api pkg 2018-03-21 16:51:45 -07:00
Alex Dadgar
45e7e88558 Fix deadline handling 2018-03-21 16:51:44 -07:00
Alex Dadgar
d15371405f Toggle Drain allows resetting eligibility
This PR allows marking a node as eligible for scheduling while toggling
drain. By default the `nomad node drain -disable` commmand will mark it
as eligible but the drainer will maintain in-eligibility.
2018-03-21 16:51:44 -07:00
Alex Dadgar
7f989499ff Correct defaulting 2018-03-21 16:51:44 -07:00
Alex Dadgar
3fe3c6eff7 Improve DeadlineTime helper 2018-03-21 16:51:44 -07:00
Alex Dadgar
d6399cb733 Add eligibility to node view 2018-03-21 16:51:44 -07:00
Alex Dadgar
0fb9ba7732 HTTP and API 2018-03-21 16:51:44 -07:00
Alex Dadgar
2bdeacebff Drain cli, api, http 2018-03-21 16:51:43 -07:00
Michael Schurter
832b1d5694 switch to new raft DesiredTransition message 2018-03-21 16:49:48 -07:00
Alex Dadgar
48d637dad1 RPC, FSM, State Store for marking DesiredTransistion
fix build tag
2018-03-21 16:49:48 -07:00
Michael Schurter
95b3b6eb02 drain: initial drainv2 structs and impl 2018-03-21 16:49:48 -07:00
Chelsea Komlo
48c5f0e1a7 Merge pull request #3856 from hashicorp/f-client-add-health-checks
Client driver health checks for Docker
2018-03-21 18:05:00 -04:00
Chelsea Holland Komlo
1570972cb3 add concept of health checks to fingerprinters and nodes
fix up feedback from code review

add driver info for all drivers to node
2018-03-21 15:15:25 -04:00
Preetha Appan
a896b2edf2 Addressed code review feedback 2018-03-21 09:15:29 -05:00
Preetha Appan
5e038e4106 Show reschedule policy in addition to when the eval will get rescheduled 2018-03-20 13:34:29 -05:00
Alex Dadgar
71a823b70b Remove fake advertise address and fix TestAPI_OperatorAutopilotServerHealth 2018-03-19 15:49:12 -07:00
Preetha
c57fe9e35b Merge pull request #4002 from hashicorp/b-reschedule-systemjob-panic
Fix incorrect initialization of reschedule policy for system jobs.
2018-03-19 13:06:55 -05:00
Preetha Appan
f82c100dfc Fix linting 2018-03-19 12:46:55 -05:00
Preetha Appan
e5b86d405e Fix incorrect initialization of reschedule policy for system jobs. 2018-03-19 12:16:13 -05:00
Alex Dadgar
02132ed6ab Merge pull request #3997 from hashicorp/b-serf-addr
RPC Advertise used exclusively for Clients
2018-03-19 09:30:20 -07:00
Alex Dadgar
3e73034155 relax timing 2018-03-19 09:30:00 -07:00
Preetha Appan
f0d7d2925b Fix ineffectual assignment lint warnings 2018-03-17 10:49:48 -05:00
Alex Dadgar
73375f5c26 fix api job tests 2018-03-16 16:46:22 -07:00
Preetha Appan
d4056c4489 Rename DelayCeiling to MaxDelay 2018-03-14 16:10:32 -05:00
Preetha Appan
447b5a872d Added FollowupEvalID field and helper methods to calculate reschedule eligibility based on delay 2018-03-14 16:10:32 -05:00