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