Commit graph

473 commits

Author SHA1 Message Date
Ryan Uber 07b6597353 nomad/state: move methods so we can sanely find them 2015-10-28 18:11:55 -07:00
Ryan Uber 1fdbd54611 nomad: job watches return correct response, add tests 2015-10-28 12:43:00 -07:00
Ryan Uber faab2495ee nomad: test all node watch triggers 2015-10-28 12:29:06 -07:00
Ryan Uber 2c4735fbcf nomad: support blocking queries on nodes 2015-10-28 11:25:35 -07:00
Ryan Uber 04dcd3f440 nomad: use a generic full-table watcher 2015-10-28 11:15:54 -07:00
Ryan Uber 2e20f9e89a nomad: allow blocking on empty data views 2015-10-27 17:58:04 -07:00
Ryan Uber ee44b43f33 nomad: initial pass at blocking queries for jobs 2015-10-27 17:58:04 -07:00
Alex Dadgar 3cdbfc010f Remove weight and hard/soft fields from constraint 2015-10-27 14:31:14 -07:00
Alex Dadgar c7f904ff31 Merge pull request #321 from hashicorp/f-unique-constraint
Add "distinctHost" constraint
2015-10-26 14:18:57 -07:00
Alex Dadgar fd9c2baf02 Constants for constraints and renaming to use undescore instead of camel 2015-10-26 13:47:56 -07:00
Armon Dadgar 25b2e3ca58 Merge pull request #327 from hashicorp/b-check-env-var-updates
Check for environment variable updates for tasks
2015-10-26 11:55:52 -07:00
Alex Dadgar 2b2b6c321a Check for environment variable updates for tasks 2015-10-23 14:52:06 -07:00
Armon Dadgar c6502fac83 nomad: use OutstandingReset in Eval endpoints and Plan apply 2015-10-23 10:22:44 -07:00
Armon Dadgar b9bb7bdaaa nomad: OutstandingReset returns specific errors 2015-10-23 10:22:17 -07:00
Armon Dadgar 16fd84f25a nomad: Adding OutstandingReset to EvalBroker 2015-10-23 10:14:16 -07:00
Alex Dadgar 3195b25aba Also create evals from Down -> Ready 2015-10-21 17:58:54 -07:00
Alex Dadgar 40fa9cbb89 Do a full loop of the sys-job iterator before the fast-path check 2015-10-20 17:11:57 -07:00
Alex Dadgar fcee850c2b Cleanup system job loop 2015-10-20 13:02:55 -07:00
Alex Dadgar 91a8528bba UpdateStatus test to ensure system evals are created on state transistion 2015-10-20 11:33:37 -07:00
Alex Dadgar 2314bd7c2c Add scheduler type index to jobs table; create evals for system jobs on node init to ready transition 2015-10-20 10:57:53 -07:00
Alex Dadgar 2f5a2b795b Fix a racy test and increase the raft timeouts to mitigate other racy tests 2015-10-16 17:53:43 -07:00
Alex Dadgar bdfe7e0887 Validate task group count on system scheduler 2015-10-16 14:15:01 -07:00
Alex Dadgar 70c39bd5a4 Add diffSystemAlloc which gives richer information which node to place a system allocation 2015-10-15 13:14:44 -07:00
Alex Dadgar 494244ed06 System scheduler and system stack 2015-10-14 18:39:44 -07:00
Armon Dadgar 14572a98ab Merge pull request #272 from hashicorp/f-apply-overlap
Plan queue apply overlaps plan verification with plan application to increase throughput
2015-10-12 14:35:25 -07:00
Armon Dadgar 953e0f3944 nomad: comment cleanups 2015-10-12 14:35:17 -07:00
Armon Dadgar 4e49cff26c Merge pull request #271 from hashicorp/f-version-constraint
Adding support for regexp, version, and lexical ordering constraints
2015-10-12 13:53:17 -07:00
Armon Dadgar 6aec97d055 nomad: make test more robust 2015-10-12 09:42:25 -07:00
Armon Dadgar 41efc6b7a9 nomad: make tests more robust 2015-10-12 09:42:25 -07:00
Armon Dadgar bf6e020f30 nomad: test optimistic state update 2015-10-11 18:47:09 -04:00
Armon Dadgar 9b80375f86 nomad: refresh snapshot under error return 2015-10-11 18:47:09 -04:00
Armon Dadgar 8715d8ab8f nomad: overlap plan evaluation with apply 2015-10-11 18:47:09 -04:00
Armon Dadgar 08a32d0952 nomad: optimistically apply plan to state snapshot 2015-10-11 18:47:09 -04:00
Armon Dadgar 8edc9da37d nomad: wait for plan to apply async 2015-10-11 18:47:08 -04:00
Armon Dadgar 2cebcf289c nomad: plan apply uses raw Raft future 2015-10-11 18:47:08 -04:00
Armon Dadgar ff27572e1f nomad: raftApplyFuture does not block for error 2015-10-11 18:47:08 -04:00
Armon Dadgar 445d36d81b nomad: raftApplyFuture exposes underlying Future 2015-10-11 18:47:08 -04:00
Armon Dadgar 1726c8f4b3 nomad: make test more robust 2015-10-11 18:47:00 -04:00
Armon Dadgar bc7e8fea9e nomad: make tests more robust 2015-10-11 18:35:09 -04:00
Armon Dadgar 369be8e8f4 nomad: additional constraint validation 2015-10-11 15:50:16 -04:00
Alex Dadgar 0bfc1977c3 TestRPC_forwardRegion waits for test servers to join 2015-10-08 16:32:42 -07:00
Alex Dadgar 29f141af85 Fix race condition in server endpoint tests in which workers would process evals before there status could be asserted 2015-10-08 15:36:42 -07:00
Ivo Verberk c6e1b13b51 Fix vet warnings 2015-10-07 12:26:58 +02: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 747991dc61 nomad: fix test race 2015-09-25 16:07:37 -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 5c1515718d Lowercase for consistency 2015-09-22 14:02:51 -07:00
Chris Bednarski 168c959497 Added named ports 2015-09-22 13:59:16 -07:00
Armon Dadgar b68c8404b1 nomad: remove noisy logs 2015-09-21 14:14:19 -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 373db0608f nomad: using struct level validations 2015-09-15 11:25:48 -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 2ff133c0e6 nomad: rename region1 to global. Fixes #41 2015-09-13 18:18:40 -07:00
Armon Dadgar cece4473b8 scheduler: in-place update should preserve network offer 2015-09-13 17:06:34 -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 13815fb733 mock: use network resources 2015-09-13 16:40:31 -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 cb3aa5d4db nomad: update for new AllocsFit API 2015-09-13 14:57:58 -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 5c8f1c0fa5 scheduler: adding helper library for network assignments 2015-09-12 19:34:46 -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
Chris Bednarski 0cc7ed77cc Merge pull request #35 from hashicorp/b-serfv4
Change serf version to 4 so the entire test suite doesn't fail
2015-09-11 12:34:21 -07:00
Chris Bednarski 78bbad2d8d Remove todo because there is no serf version 5 2015-09-11 11:22:36 -07:00
Chris Bednarski da93d4a30f Change error to err to be consistent with other usage 2015-09-11 10:26:33 -07:00
Chris Bednarski 39feffd67f Change debug to info 2015-09-11 10:24:52 -07:00
Chris Bednarski 6ea318cacb Change to use the logger instance defined earlier 2015-09-11 10:23:53 -07:00
Chris Bednarski d93459b797 Change serf version to 4 so the entire test suite doesn't fail 2015-09-11 10:21:15 -07:00
Chris Bednarski 3000ef07c1 Added logging to server startup so we can see where it fails 2015-09-11 10:20:36 -07:00
Armon Dadgar ea0795995d Use a single implementation of GenerateUUID 2015-09-07 15:23:03 -07:00
Armon Dadgar 293e44474b nomad: adding helper structs 2015-09-07 15:08:50 -07:00
Armon Dadgar df16cea2a4 nomad: worker supports create eval 2015-09-07 14:23:48 -07:00
Armon Dadgar a2a58e0e98 nomad: guard eval creation based on parent eval 2015-09-07 14:21:38 -07:00
Armon Dadgar 96a8d079e2 nomad: adding Eval.Create endpoint 2015-09-07 14:17:11 -07:00
Armon Dadgar fe2e046481 nomad: support time wait for evaluations 2015-09-07 13:00:45 -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 7d69aa78c1 nomad: using Raft StartAsLeader to make tests faster 2015-09-07 10:46:41 -07:00
Armon Dadgar 8bedd3769c nomad: unifying the state store API 2015-09-06 20:56:38 -07:00
Armon Dadgar 5b02014e14 state: cleanup Get*By 2015-09-06 20:51:01 -07:00
Armon Dadgar 8e3a98af58 state: remove unused indexes 2015-09-06 20:49:07 -07:00
Armon Dadgar 1a5579384a nomad: cleanup API descrepencies 2015-09-06 20:47:42 -07:00
Armon Dadgar b42742bf8f state: unify the terminology for code clarity 2015-09-06 20:39:06 -07:00
Armon Dadgar 0702f17989 Rename client endpoint to node endpoint 2015-09-06 20:31:32 -07:00
Armon Dadgar c7773feced nomad: improve error messages at start for dev mode 2015-09-06 20:18:47 -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 82cba83eb6 state: Adding UpdateNodeDrain 2015-09-06 19:51:50 -07:00
Armon Dadgar 5832b2f147 nomad: adding drain as node property 2015-09-06 19:47:02 -07:00
Armon Dadgar 42734d2c3a nomad: allow region forwarding for status endpoints 2015-09-06 18:07:05 -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 6a5e26c695 nomad: set the query meta data 2015-09-06 12:24:25 -07:00
Armon Dadgar 0bba163ef7 nomad: adding job query endpoints 2015-09-06 12:18:45 -07:00
Armon Dadgar b1a406f234 state: Adding eval lookup by job 2015-09-06 12:10:24 -07:00
Armon Dadgar d84f959dd8 nomad: fixing tests 2015-08-30 18:10:12 -07:00
Armon Dadgar a2d8c6c3fe client: working on state restore 2015-08-29 19:14:47 -07:00
Armon Dadgar 020ba19e5a mock: make valid mock alloc 2015-08-29 16:24:01 -07:00
Armon Dadgar 4d6238ebb8 client: test updating alloc status 2015-08-29 14:22:24 -07:00
Armon Dadgar 5155f2c8eb nomad: parameterize heartbeat configuration 2015-08-29 14:14:19 -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 922eb37484 nomad: adding UpdateAllocFromClient for client based updates 2015-08-25 17:54:45 -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 26c713655f nomad: update mock alloc status 2015-08-25 16:19:21 -07:00