Commit Graph

686 Commits

Author SHA1 Message Date
Diptanu Choudhury d65d1bdfac Merge pull request #455 from hashicorp/f-consul-check
Refactor consul check
2015-11-18 14:33:34 -08:00
Diptanu Choudhury bb7f29f023 Changed the http field to path 2015-11-18 14:29:55 -08:00
Alex Dadgar 0e51375285 Revert "Make drivers take arguments as a list and not as a string" 2015-11-18 13:46:43 -08:00
Alex Dadgar 07a5ceed9c Use one msgpack codec and have it decode []string in nil interfaces 2015-11-18 13:15:13 -08:00
Diptanu Choudhury 21bb78f948 Removing support for scrpt checks 2015-11-18 10:26:24 -08:00
Diptanu Choudhury 404810043a Added the implementation of consul client 2015-11-18 00:50:45 -08:00
Diptanu Choudhury c02c2312d4 Adding prefix to user defined name and forcing id to be blank during parsing 2015-11-17 16:44:05 -08:00
Diptanu Choudhury c73e17ae18 Adding some sanity checks to checks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury 04d2d6921d Exctacted a method for parsing checks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury 7eba8be4ff Added some docs for the service and servicecheck type 2015-11-17 15:13:25 -08:00
Diptanu Choudhury aabd27d901 Added the protocol field for check 2015-11-17 15:13:25 -08:00
Diptanu Choudhury 4c8dd666dc Added validation to the checks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury a367314127 Added the fields for http and script checks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury 0d9e34bea4 Added the service definitions in api structs too 2015-11-17 15:13:25 -08:00
Diptanu Choudhury ead6e09a79 Added comments 2015-11-17 15:13:25 -08:00
Diptanu Choudhury eb19967ce4 Added the parsling logic for service blocks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury a9acc52b4e Fixed validation logic for restart policy when interval is zero 2015-11-17 02:56:11 -05:00
Chris Bednarski 9f40143684 Merge branch 'master' into f-port-labels 2015-11-16 16:02:38 -08:00
Alex Dadgar ea0edd8c2f Change SetExitMessage from taking a string to an error 2015-11-16 15:14:21 -08:00
Alex Dadgar 6133917e33 Change event type to string 2015-11-16 15:14:21 -08:00
Alex Dadgar 82f51601db Track Task State in the client and capture Wait results 2015-11-16 15:14:21 -08:00
Alex Dadgar 359251744f Add TaskState to alloc 2015-11-16 15:14:21 -08:00
Alex Dadgar ef417120a5 Avoid map[interface{}]interface{} conversions in the msgpack codec 2015-11-16 14:25:19 -08:00
Alex Dadgar 0b70879554 RawToSting true for structs codec. Needed for encoding strings in nil interfaces 2015-11-16 13:10:57 -08:00
Diptanu Choudhury 0238e27d5d Fixed the structs test 2015-11-16 13:10:57 -08:00
Diptanu Choudhury ba9f101660 Fixed the test related to setting env variables in tasks 2015-11-16 13:10:57 -08:00
Diptanu Choudhury 4e05b27111 Implemented port labeling and driver configs 2015-11-16 13:10:57 -08:00
Diptanu Choudhury dac4a036e4 Making sure a Task Group has a restart policy 2015-11-11 15:10:39 -08:00
Alex Dadgar 81420277fd System jobs use Service restart policy 2015-11-06 12:38:25 -08:00
Clint Shryock afc49a57da go fmt this file 2015-11-03 15:54:29 -06:00
Diptanu Choudhury b9eb12e5f9 Introducing vars to create default batch and service restart policies 2015-11-02 17:00:17 -08:00
Diptanu Choudhury 02d70eb5be Fixed the tests 2015-11-02 15:04:04 -08:00
Diptanu Choudhury 7d301fb8b3 Declaring Batch and Service default restart policies 2015-11-02 13:35:51 -08:00
Diptanu Choudhury 52eb6c77af Fixing tests to not create a TG without restart policies 2015-11-02 13:24:59 -08:00
Diptanu Choudhury 9139777ab7 Not validating task groups if it's nil in a job 2015-10-30 21:43:00 -07:00
Diptanu Choudhury 8133aa413a Fixed grammer of comment 2015-10-30 21:06:56 -07:00
Diptanu Choudhury c883f9496a Added support for parsing restart blocks 2015-10-30 15:51:39 -07:00
Alex Dadgar 3cdbfc010f Remove weight and hard/soft fields from constraint 2015-10-27 14:31:14 -07:00
Alex Dadgar fd9c2baf02 Constants for constraints and renaming to use undescore instead of camel 2015-10-26 13:47:56 -07:00
Alex Dadgar bdfe7e0887 Validate task group count on system scheduler 2015-10-16 14:15:01 -07:00
Alex Dadgar 494244ed06 System scheduler and system stack 2015-10-14 18:39:44 -07:00
Armon Dadgar 369be8e8f4 nomad: additional constraint validation 2015-10-11 15:50:16 -04:00
Antoine POPINEAU 722141bfa6 Added a jobspec directive to specify envvars. Updated Docker driver to use them accordingly. 2015-10-02 17:46:55 -07:00
Ryan Uber f7f943cf6f nomad: data centers -> datacenters 2015-09-25 12:27:31 -07:00
Chris Bednarski fce6a5f7c7 Merge pull request #108 from hashicorp/b-netmap-crash
Fix crash in task_runner tests
2015-09-24 16:27:54 -07:00
Chris Bednarski 4554a678e5 Remove this guard since it's likely to hide nasty bugs where nomad should crash 2015-09-24 15:38:11 -07:00
Chris Bednarski 130263af84 Add exhaustive tests and nil guard to List and Map for NetworkResource 2015-09-24 15:11:44 -07:00
Chris Bednarski 388981a34b Fix some typos 2015-09-23 23:56:25 -07:00
Chris Bednarski 50b967d716 Added ListStaticPorts() to get a list of statically-allocated ports from the NetworkResource 2015-09-23 22:28:34 -07:00
Chris Bednarski 0060ac933f Add dynamic ports to api resources; copy dynamic ports into offer 2015-09-23 18:01:49 -07:00
Chris Bednarski 38b7f0b452 That method is gone 2015-09-23 13:45:23 -07:00
Chris Bednarski e2c324d098 Merge branch 'master' into f-port-configs 2015-09-23 11:57:12 -07:00
Chris Bednarski f4ad6e51dc Replaced List with Map 2015-09-23 11:56:36 -07:00
Armon Dadgar b213462cb4 Change CPU from float64 to int 2015-09-23 11:14:32 -07:00
Chris Bednarski 5d83524e8d Tweak paragraphs so the explanation flows better 2015-09-23 03:19:35 -07:00
Chris Bednarski c32f36231a Rewrote the docs for ListDynamicPorts to be clearer 2015-09-23 03:07:52 -07:00
Chris Bednarski 3e90379f05 Pass dynamic ports to the exec driver via environment variables 2015-09-22 22:33:29 -07:00
Chris Bednarski 6dc1a9b43c Initialize error 'no networks avaialable' before yielding to find an IP address (maybe there are no IP addresses) 2015-09-22 18:33:29 -07:00
Ryan Uber 3f025a0627 nomad: fix typo 2015-09-22 17:37:55 -07:00
Chris Bednarski 168c959497 Added named ports 2015-09-22 13:59:16 -07:00
Armon Dadgar fed2471a80 nomad: remove errwrap, directly wrap 2015-09-20 17:08:57 -07:00
Armon Dadgar f30e783c8e nomad: adding mapstructure tags 2015-09-20 15:08:29 -07:00
Armon Dadgar 05f6705037 nomad: ensure job ID does not contain space 2015-09-15 17:38:30 -07:00
Armon Dadgar c713cfb9ac nomad: testing the job validations 2015-09-15 11:23:03 -07:00
Armon Dadgar c5cf345df7 nomad: fixing tests 2015-09-15 11:12:46 -07:00
Armon Dadgar 3ccf1d98d7 nomad: adding job validation 2015-09-15 10:46:10 -07:00
Mitchell Hashimoto 9c9e3ed083 jobspec: parse network resources 2015-09-14 18:27:37 -07:00
Mitchell Hashimoto 42a36b300b jobspec: parse regions 2015-09-14 18:18:49 -07:00
Mitchell Hashimoto 9bd1c2f177 jobspec: parsing 2015-09-14 17:43:42 -07:00
Armon Dadgar f575b07827 nomad: fixing unit tests 2015-09-13 18:46:40 -07:00
Armon Dadgar cbc9b6dae2 nomad: thread alloc fit failure reason through 2015-09-13 18:38:11 -07:00
Armon Dadgar fcd367e657 scheduler: track dimension of exhaustion 2015-09-13 16:48:01 -07:00
Armon Dadgar 3690565f5a nomad: adding reason network offer failed 2015-09-13 16:40:53 -07:00
Armon Dadgar 7586b39a7b nomad: removing old network index lookup methods 2015-09-13 15:04:36 -07:00
Armon Dadgar 373c4ee83a nomad: Resource Superset ignores network in favor of NetworkIndex 2015-09-13 14:59:34 -07:00
Armon Dadgar 1884296ff8 nomad: remove PortsOvercommited in favor of NetworkIndex 2015-09-13 14:56:51 -07:00
Armon Dadgar c21ff50107 nomad: exposing IntContains 2015-09-13 14:36:33 -07:00
Armon Dadgar e901b0a1ca nomad: moving network index 2015-09-13 14:35:28 -07:00
Armon Dadgar 8bbf0bfb76 nomad: adding copy helpers 2015-09-13 14:30:45 -07:00
Armon Dadgar a829c8db50 nomad: add device name for network 2015-09-12 19:13:00 -07:00
Armon Dadgar 5b6d365709 nomad: removing public field of network 2015-09-12 17:32:08 -07:00
Armon Dadgar 39fa04eda7 nomad: aggregate by blank network constraints 2015-09-12 17:04:09 -07:00
Armon Dadgar 47f6a8a64a nomad: Support adding NetworkResource by CIDR/IP 2015-09-12 16:33:41 -07:00
Armon Dadgar 2eb8044518 nomad: handle network usage superset by CIDR/IP 2015-09-12 16:29:45 -07:00
Armon Dadgar a8d0c6994e nomad: Adding per-task resources block 2015-09-12 16:22:18 -07:00
Armon Dadgar 93020187da nomad: removing unused job type 2015-09-12 16:22:09 -07:00
Armon Dadgar 2d4fad31b2 nomad: adding IP to NetworkResource 2015-09-12 16:21:57 -07:00
Armon Dadgar 293e44474b nomad: adding helper structs 2015-09-07 15:08:50 -07:00
Armon Dadgar 31f2c4fbaa nomad: adding fields to cause an evaluation to 'wait' 2015-09-07 12:47:48 -07:00
Armon Dadgar 6f9a9a643d nomad: helper struct func 2015-09-07 12:23:34 -07:00
Armon Dadgar e8b3199471 nomad: PopUpdate should minimize plan size 2015-09-07 12:05:18 -07:00
Armon Dadgar c8a116b287 nomad: adding helper to manipulate plans 2015-09-07 12:00:34 -07:00
Armon Dadgar ad681be59c nomad: adding node GC 2015-09-07 11:01:29 -07:00
Armon Dadgar 0702f17989 Rename client endpoint to node endpoint 2015-09-06 20:31:32 -07:00
Armon Dadgar 5d2f65537e nomad: adding client drain endpoint 2015-09-06 20:00:12 -07:00
Armon Dadgar 21000d41ec nomad: adding FSM support for node drain update 2015-09-06 19:55:38 -07:00
Armon Dadgar 5832b2f147 nomad: adding drain as node property 2015-09-06 19:47:02 -07:00
Armon Dadgar 1e945605e3 nomad: adding endpoint for allocations by eval 2015-09-06 16:14:41 -07:00
Armon Dadgar 2901b544e9 nomad: adding eval list endpoint 2015-09-06 16:01:16 -07:00
Armon Dadgar e54d5402e2 nomad: adding alloc lookup method 2015-09-06 15:46:45 -07:00
Armon Dadgar 46cbe8285d nomad: adding Alloc endpoint 2015-09-06 15:34:28 -07:00
Armon Dadgar e6670a5cb4 nomad: adding Node list endpoint 2015-09-06 14:28:29 -07:00
Armon Dadgar 0bba163ef7 nomad: adding job query endpoints 2015-09-06 12:18:45 -07:00
Armon Dadgar a2d8c6c3fe client: working on state restore 2015-08-29 19:14:47 -07:00
Chris Bednarski 96cb220ff4 Update references to "os" to use "kernel.name"
This brings test code and mocks up to date with the fingerprinter. This was a slightly larger change than I anticipated, but I think it's good for two reasons:

1. More semanitcally correct. `os.name` is something like "Windows 10 Pro" or "Ubuntu", while `kernel.name` is "windows" or "linux". `os.version` and `kernel.version` match these semantics.
2. `kernel.name` is much easier to grep for than `os`, which is helpful because oracle can't help us with strings.
2015-08-28 01:30:47 -07:00
Armon Dadgar c7672b41ec nomad: Adding Client.UpdateAlloc endpoint 2015-08-25 18:12:51 -07:00
Armon Dadgar a2010b9f2a nomad: FSM support for AllocClientUpdateRequestType 2015-08-25 18:00:14 -07:00
Armon Dadgar 2ea99f211a nomad: updating for new alloc representation 2015-08-25 17:36:52 -07:00
Armon Dadgar 2ee6947844 scheduler: updating for new APIs 2015-08-25 17:06:06 -07:00
Armon Dadgar 42f9d4c1b6 nomad: plan supports more than just evict 2015-08-25 16:52:56 -07:00
Armon Dadgar 28069dd973 nomad: updating state for split 2015-08-25 16:26:34 -07:00
Armon Dadgar a30295cef0 nomad: splitting alloc desired and client status 2015-08-25 16:18:37 -07:00
Armon Dadgar 8e32075210 client: making progress 2015-08-23 16:49:48 -07:00
Armon Dadgar b77e4ff343 scheduler: update tests to filter terminal allocs 2015-08-23 16:30:57 -07:00
Armon Dadgar 5668c971be nomad: add client.GetAllocs with blocking query support 2015-08-22 19:17:49 -07:00
Armon Dadgar 5b2dc385ec nomad: adding evict state for allocs 2015-08-22 18:27:51 -07:00
Armon Dadgar 678addc990 nomad: testing heartbeat resets 2015-08-22 17:37:50 -07:00
Armon Dadgar 3d48ff4c6f nomad: no heartbeat for nodes in terminal status 2015-08-22 17:17:13 -07:00
Armon Dadgar 0dff5a77a2 scheduler: coalesce failures by task group 2015-08-16 10:03:21 -07:00
Armon Dadgar 107da3a174 scheduler: track sub-scores 2015-08-16 09:57:30 -07:00
Armon Dadgar 2c8d404e15 nomad: adding endpoint to force node re-evaluate 2015-08-15 18:20:35 -07:00
Armon Dadgar 0c07e8ef11 nomad: endpoint to force re-evaluation of job 2015-08-15 18:11:26 -07:00
Armon Dadgar 499a7456f9 nomad: updating structs 2015-08-15 16:07:22 -07:00
Armon Dadgar b75cc4b9fb nomad: periodic dispatch of eval GC 2015-08-15 15:15:00 -07:00
Armon Dadgar dd82bdb059 nomad: rename to EvalToken 2015-08-15 14:22:21 -07:00
Armon Dadgar 39c82cd1bd nomad: adding eval update functionality 2015-08-15 14:16:40 -07:00
Armon Dadgar 9fd8049e16 scheduler: create allocs for failed placements 2015-08-15 13:40:13 -07:00
Armon Dadgar cabefa46bf nomad: thread through failed allocations 2015-08-15 13:33:20 -07:00
Armon Dadgar da90c453ce nomad: adding index on EvalID and Status to alloc 2015-08-15 13:27:42 -07:00
Armon Dadgar 6738e9fe08 nomad: associate alloc with eval 2015-08-15 13:08:06 -07:00
Armon Dadgar aadecdd805 nomad: adding version API endpoint 2015-08-15 12:59:10 -07:00
Armon Dadgar 8dfcb99e7f nomad: rename SystemScheduler to CoreScheduler 2015-08-15 12:38:58 -07:00
Armon Dadgar dcf4952974 nomad: remove unused field 2015-08-13 22:21:41 -07:00
Armon Dadgar 64bab68680 scheduler: basic metrics integration 2015-08-13 21:46:33 -07:00
Armon Dadgar 89eef4ed6a scheduler: simplifying 2015-08-13 18:16:32 -07:00
Armon Dadgar b2ad51c791 scheduler: major refactor 2015-08-13 17:11:20 -07:00
Armon Dadgar 194723e7bf nomad: rename util method 2015-08-13 16:40:51 -07:00
Armon Dadgar eafa8ccd21 scheduler: simplify eviction logic 2015-08-13 16:29:28 -07:00
Armon Dadgar fcd6ccbd53 scheduler: working on plan submission 2015-08-13 15:17:24 -07:00
Armon Dadgar 33f4e3f0dc nomad: tweak structs 2015-08-13 14:02:39 -07:00
Armon Dadgar df21ab3d10 scheduler: working on bin pack 2015-08-13 11:54:59 -07:00
Armon Dadgar f7007bfeb5 nomad: avoid split-brain in plan processing due to leader transition or eval retry 2015-08-12 15:44:36 -07:00
Armon Dadgar 183a238481 nomad: avoid split-brain eval handling after leader transition 2015-08-12 15:25:31 -07:00
Armon Dadgar 00b0740914 nomad: adding name to allocation 2015-08-11 16:34:06 -07:00
Armon Dadgar 5f1ebb9274 nomad: adding special 'system' scheduler 2015-08-06 17:04:35 -07:00
Armon Dadgar 98dc6e13fd nomad: client updates generate evaluaitons 2015-08-06 16:39:20 -07:00
Armon Dadgar a2feb20903 nomad: UpsertEvals can take a list of Evals 2015-08-06 14:51:15 -07:00
Armon Dadgar 3002698393 nomad: job deregister creates an evaluation 2015-08-06 14:17:18 -07:00
Armon Dadgar 41a4a21caf nomad: job create/update creates evaluation 2015-08-06 11:48:44 -07:00
Armon Dadgar 9398dc997b nomad: share enqueue logic 2015-08-06 11:28:55 -07:00
Armon Dadgar 011484ea74 nomad: eval broker serializes by JobID 2015-08-05 17:55:15 -07:00
Armon Dadgar f733ba0efa nomad: share alloc fitting test 2015-08-04 17:48:24 -07:00
Armon Dadgar 1701275936 nomad: share resource adding 2015-08-04 17:41:02 -07:00
Armon Dadgar f23e0db780 nomad: share and test superset 2015-08-04 17:32:57 -07:00
Armon Dadgar b140ba5f51 nomad: share port overcommit check 2015-08-04 17:28:19 -07:00
Armon Dadgar 0c3bab297c nomad: testing 2015-08-04 17:23:42 -07:00
Armon Dadgar edb2820182 nomad: move and test function 2015-08-04 17:19:05 -07:00
Armon Dadgar 0c8b50ea45 nomad: first pass at plan eval and apply 2015-08-04 16:32:46 -07:00
Armon Dadgar 44b391bf8b nomad: adding the FSM CRUD 2015-08-04 14:04:33 -07:00
Armon Dadgar 1034eec8b3 structs: working on plan and plan result 2015-07-28 17:49:45 -07:00
Armon Dadgar 2b4501bee8 nomad: improving worker, submit plans 2015-07-28 16:36:15 -07:00
Armon Dadgar 4be2c1b9db nomad: adding plan endpoint 2015-07-27 15:31:49 -07:00
Armon Dadgar 3a4efce389 nomad: adding plan queue 2015-07-27 14:59:16 -07:00
Armon Dadgar 487acdd3c7 nomad: threading eval broker through fsm and state store 2015-07-23 22:30:08 -07:00
Armon Dadgar 0a08c1ce49 nomad: adding Eval.Dequeue endpoint 2015-07-23 21:58:51 -07:00
Armon Dadgar 2a76fd34f0 nomad: first pass at eval broker 2015-07-23 17:31:08 -07:00
Armon Dadgar eff7170c77 nomad: adding RPC endpoints for fetching Eval 2015-07-23 16:00:19 -07:00
Armon Dadgar 9b921d9f92 nomad: adding FSM support for evaluations 2015-07-23 15:52:38 -07:00
Armon Dadgar 60e786100b nomad: Adding Eval model 2015-07-23 15:27:13 -07:00
Armon Dadgar d39d3585a2 nomad: reduce mixed terminology by adding ID to Job 2015-07-23 15:15:48 -07:00
Armon Dadgar 501a57f9d8 nomad: Adding the CRUD endpoints for jobs 2015-07-23 14:41:18 -07:00
Armon Dadgar 1947a19885 nomad: make struct names more specific to avoid confusion 2015-07-07 10:51:42 -06:00
Armon Dadgar 9151c1400f nomad: starting client GetNode 2015-07-06 15:23:15 -06:00
Armon Dadgar f16fc93d85 nomad: testing fsm snapshot and restore 2015-07-06 14:01:10 -06:00
Armon Dadgar 185e3cb3c7 nomad: FSM support for node updates 2015-07-03 18:41:36 -07:00
Armon Dadgar 76d4e6bd14 nomad: adding indexes to structs 2015-07-03 17:50:54 -07:00
Armon Dadgar abef9ca0a1 nomad: adding AllocMetric to track allocation metrics 2015-07-03 17:37:01 -07:00
Armon Dadgar 2c694c7e4c nomad: working on allocation schema 2015-07-03 17:11:53 -07:00
Armon Dadgar 00df4837bb nomad: working on job struct and schema 2015-07-03 16:57:48 -07:00
Armon Dadgar bbc03b1cc1 nomad: working on the node representation 2015-07-03 16:04:24 -07:00
Armon Dadgar 5fdf3c5d33 nomad: adding Client endpoint 2015-06-07 12:14:41 -07:00
Armon Dadgar 477cd88a40 nomad: adding response struct 2015-06-07 11:31:48 -07:00
Armon Dadgar f895cd0147 nomad: first pass at register struct 2015-06-07 11:18:59 -07:00
Armon Dadgar ffce4f931e nomad: adding basic RPC interfaces 2015-06-06 00:41:03 +02:00
Armon Dadgar 6b63bfa5a2 structs: adding encode and decode 2015-06-06 00:21:17 +02:00
Armon Dadgar 1e7f84f3e6 nomad: adding basic structure for raft 2015-06-01 17:49:10 +02:00