Commit graph

1359 commits

Author SHA1 Message Date
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
Alex Dadgar 627ac3fc45 Fix escaping 2017-02-15 15:14:47 -08:00
Alex Dadgar 7e918003ba Allow specification of timezones 2017-02-15 14:37:06 -08:00
Alex Dadgar 0e6b84145c Fix interval breaking two tests 2017-02-14 17:06:30 -08:00
Alex Dadgar b6357f96c5 Merge pull request #2308 from hashicorp/f-leader-task
Leader task
2017-02-14 11:03:32 -08:00
Alex Dadgar 4432b09e03 Remove old vault status 2017-02-13 10:44:10 -08:00
Alex Dadgar 238b4bcafd Add Leader support to client 2017-02-10 17:55:19 -08:00
Alex Dadgar 2d4d9b79d8 Operator command/endpoint/documentation 2017-02-09 18:04:46 -08:00
David Bresson 1c81a71f13 avoid nil pointer dereference 2017-02-03 08:39:57 -08:00
David Bresson e7a7690815 extend config merge test to test merging to empty config 2017-02-03 08:35:18 -08:00
Diptanu Choudhury d0fe4a67a5 Merging GC related config values 2017-02-02 13:38:11 -08:00
Alex Dadgar b951b84b44 Merge pull request #2278 from hashicorp/b-consul-merge
Fix Consul Config Merging/Copying
2017-02-02 11:39:26 -08:00
Alex Dadgar 7fae2d2cea Fix Consul Config Merging/Copying
This PR fixes config merging/copying code.

Fixes https://github.com/hashicorp/nomad/issues/2264
2017-02-02 11:12:07 -08:00
Alex Dadgar 15ffdff497 Vault Client on Server handles SIGHUP
This PR allows the Vault client on the server to handle a SIGHUP. This
allows updating the Vault token and any other configuration without
downtime.
2017-02-01 14:24:10 -08:00
Diptanu Choudhury 11d7cb1230 Making the GC related fields tunable 2017-01-31 15:51:20 -08:00
Alex Dadgar 83106de217 Merge branch 'master' into d-vault 2017-01-27 15:19:34 -08:00
Alex Dadgar 08a32cb93c Add command line flag for create-from-role 2017-01-27 14:11:34 -08:00
Alex Dadgar 27ebf3da43 Fix typo 2017-01-26 13:07:50 -08:00
Alex Dadgar 9c3d38a645 Respond to comments 2017-01-26 11:34:44 -08:00
Alex Dadgar c4c94de96e Dispatch command 2017-01-25 21:27:44 -08:00
Alex Dadgar a9aa992f0c Merge pull request #2235 from hashicorp/f-http-logs
Logs via a browser
2017-01-23 16:59:37 -08:00
Alex Dadgar c61f8d2526 Review feedback 2017-01-23 16:58:53 -08:00
Alex Dadgar 9152477890 docs 2017-01-23 16:08:26 -08:00
Alex Dadgar ab330b96aa test 2017-01-23 16:04:50 -08:00
Alex Dadgar 6590990263 disallow follow 2017-01-23 15:12:09 -08:00
Alex Dadgar 606bb30863 Merge pull request #2226 from hashicorp/b-vault
Improve Vault integration and validation
2017-01-23 14:59:41 -08:00
Michael Schurter 3c7e50bc1b Fix tests 2017-01-20 17:04:52 -08:00
Michael Schurter 1f7b5b4b47 Rename Constructor -> Parameterized Job 2017-01-20 12:43:10 -08:00
Alex Dadgar fb86904902 Check capabilities, allow creation against role
Check the capabilities of the Vault token to ensure it is valid and also
allow targetting of a role that the token is not from.
2017-01-19 13:40:32 -08:00
Diptanu Choudhury 1999b7eebb Merge pull request #2159 from hashicorp/b-consul-config
Fixed merging consul config
2017-01-18 16:14:54 -08:00
Diptanu Choudhury e927de02d2 Moved functions to helper from structs 2017-01-18 15:55:14 -08:00
Alex Dadgar 6478167e19 plain w 2017-01-13 13:12:36 -08:00
Diptanu Choudhury 6809a4b104 Added executorconfig 2017-01-12 15:47:58 -08:00
Diptanu Choudhury dffc0acfc9 Remove unused code 2017-01-12 11:54:19 -08:00
Diptanu Choudhury b1d0078db5 Filter executor log messages 2017-01-12 11:54:19 -08:00
Michael Schurter 90f6ac7490 Fix tests post rebase 2017-01-06 11:39:13 -08:00
Alex Dadgar 8d5f0fea69 Merge pull request #2128 from hashicorp/f-dispatch
Nomad Constructor Jobs and Dispatch
2017-01-06 05:22:49 +08:00
Alex Dadgar 23fcd807cb Merge pull request #2098 from jorgemarey/f-telemetry-nodename
Allow to set the nodename on telemetry
2017-01-04 03:33:48 +08:00
Cameron Stokes ce80b5c421 Errant colon in logs usage. 2016-12-24 17:12:16 -08:00
Cameron Stokes 249fd8bf42 Fix inconsistencies in usage cli output. 2016-12-24 12:39:33 -08:00
Jorge Marey 189a49b74d Add option to set nodename instead of hostname on telemetry values 2016-12-21 09:53:29 +01:00
Michael Schurter 4a9a574d9d Merge pull request #2054 from hashicorp/f-prestart
Add Driver.Prestart method
2016-12-20 16:18:56 -08:00
Diptanu Choudhury bab81734f5 Added two tests 2016-12-20 14:27:38 -08:00
Michael Schurter 2aa235f8f2 Rename InitializationMessage to DriverMessage 2016-12-20 11:51:09 -08:00
Diptanu Choudhury 9cdd576720 Updated changelog and fixed tests 2016-12-20 11:32:17 -08:00
Diptanu Choudhury 6c11f38cb0 Merge pull request #2081 from hashicorp/f-gc
Garbage collector for allocations
2016-12-20 11:19:32 -08:00
Diptanu Choudhury 6e6e0d364a Added comments 2016-12-20 10:49:48 -08:00
Diptanu Choudhury 25fb7130fd Merge pull request #2032 from hashicorp/b-allocs
Making the status command return the allocs of currently registered job
2016-12-19 18:10:27 -08:00
Diptanu Choudhury 9786708526 Added comments 2016-12-19 18:10:02 -08:00
Alex Dadgar 5d48c492a4 Fix test 2016-12-18 16:54:12 -08:00
Alex Dadgar 4e8035756b Fix test and prevent job with payload from being submitted 2016-12-18 16:32:14 -08:00
Justin Walz 1f5e78cc87 show desired status and description for allocation 2016-12-15 15:15:29 -08:00
Brian Shumate f292889970
Help text grammar updates
- Grammar change in usage info text
- Capitalization in stats retrieval error text
- Typo in outputTaskResources stats comment
2016-12-15 12:31:29 -05:00
Alex Dadgar bf1e157bd8 Children fixes + nomad status outputs summaries
Children object is always initialized instead of lazily.
`nomad status` outputs children summaries and has specialized view for
constructor jobs.
2016-12-14 16:58:54 -08:00
Alex Dadgar 5a742528c9 dispatch help 2016-12-14 15:19:27 -08:00
Diptanu Choudhury afdaa979f7 Added a garbage collector for allocations 2016-12-14 15:01:12 -08:00
Alex Dadgar 4a5c3c8db0 Rename structs 2016-12-14 14:28:43 -08:00
Alex Dadgar 59b47caa86 comment 2016-12-09 17:51:50 -08:00
Alex Dadgar 356fbde803 fix high cpu usage + faster encoding 2016-12-09 17:33:10 -08:00
Alex Dadgar d82747bd33 Benchmark 2016-12-09 14:44:50 -08:00
Alex Dadgar 3aff765cba Fix FD leak 2016-12-09 10:49:39 -08:00
Alex Dadgar 1d9bf5e9d5 Dispatch command 2016-12-05 15:10:23 -08:00
Michael Schurter 09ffe4307d Merge pull request #2009 from hashicorp/f-use-embedded-consul
Add a chaos test for consul syncer and fix some races it found
2016-12-05 10:55:47 -08:00
Alex Dadgar a7ce915042 start of the cli command 2016-12-04 21:22:13 -08:00
Michael Schurter 9798e7c7c1 Add SyncNow test 2016-12-02 16:44:18 -08:00
Michael Schurter 407657519f Don't require serf advertise address for clients 2016-12-02 11:07:00 -08:00
Michael Schurter 770ed703d0 Add Driver.Prestart method
The Driver.Prestart method currently does very little but lays the
foundation for where lifecycle plugins can interleave execution _after_
task environment setup but _before_ the task starts.

Currently Prestart does two things:

* Any driver specific task environment building
* Download Docker images

This change also attaches a TaskEvent emitter to Drivers, so they can
emit events during task initialization.
2016-12-02 11:03:48 -08:00
Alex Dadgar 244c95b1ce agent tests 2016-12-01 16:27:22 -08:00
Alex Dadgar b232dc4c94 Decompress 2016-11-28 16:05:56 -08:00
Alex Dadgar e42d9ba26b Merge pull request #2007 from hashicorp/b-stream-framer-panic
Fixes race on StreamFramer Destroy
2016-11-28 12:57:28 -08:00
Michael Schurter b3ede6a5b7 Use net.JoinHostPort instead of fmt.Sprintf
Using fmt.Sprintf breaks IPv6 addresses.
2016-11-28 10:38:54 -08:00
Alex Dadgar cfd9593e7a dispatch beginning 2016-11-25 18:04:55 -08:00
Diptanu Choudhury 5191b4d33a Making the status command return the allocs of currently registered job 2016-11-24 16:31:30 +01:00
Michael Schurter 92f579891c Remove lie from comment 2016-11-18 11:05:22 -08:00
Michael Schurter fc1f557a36 Fix incorrect lock usage around consul maps 2016-11-18 10:12:02 -08:00
Michael Schurter da9a8bbcef Fix SyncNow 2016-11-18 10:12:02 -08:00
Michael Schurter 57e5e03ccc New chaos test to exercise consul syncer 2016-11-18 10:12:02 -08:00
Alex Dadgar 7ead95c333 Fixes race on StreamFramer Destroy
This PR:
* Fixes a race in which StreamFramer could panic while closing.
* Simplifies the logic of the StreamFramer
* Removes a potentially leaked goroutine
2016-11-17 20:14:47 -08:00
Alex Dadgar c2697123a9 Merge pull request #1996 from hashicorp/t-failing-tests
Fix some failing tests
2016-11-15 16:27:19 -08:00
Alex Dadgar cb187ffce6 Fix TestRktDriver_PortsMapping and TestAgent_LoadKeyrings 2016-11-15 15:49:05 -08:00
Alex Dadgar 6a4efbf3b2 Fix TestRetryJoin 2016-11-15 15:28:21 -08:00
Alex Dadgar 9497991590 Updated AWS speeds and network_speed now overrides
This PR:

* Makes AWS network speeds more granular
* Makes `network_speed` an override and not a default
* Adds a default of 1000 MBits if no network link speed is detected.

Fixes #1985
2016-11-15 13:55:51 -08:00
Michael Schurter 393efe2579 Switch syncer tests to use embedded consul 2016-11-15 10:22:25 -08:00
Alex Dadgar 29d21daa01 Fix indent 2016-11-10 16:00:17 -08:00
Alex Dadgar e322f5c070 Move parsing of vault token above validation such that it works in dev mode 2016-11-10 11:47:43 -08:00
Michael Schurter 8b0511713f Merge pull request #1955 from hashicorp/b-fix-default-advertise
Choose safer default advertise address
2016-11-09 16:03:17 -08:00
Michael Schurter cb1e2d2194 Fix comment 2016-11-09 15:51:00 -08:00
Michael Schurter c301e696cf Fix typo in test 2016-11-09 13:16:56 -08:00
matt maier c6504f3418 Update Circonus integration expose Check Display Name and Check Tags
configuration options.
2016-11-09 15:12:30 -05:00
Michael Schurter fdc5aa5a50 Add unit test for missing port helper func 2016-11-09 11:55:10 -08:00
Michael Schurter a75e5b5803 Addresses are just addresses - no ports
Store address+port in an unexported field for ease-of-use
2016-11-09 11:49:55 -08:00
Diptanu Choudhury 7ea3efbd28 Added a warning message if disk attribute is non zero 2016-11-08 17:06:37 -08:00
Michael Schurter 23de99b1df Enable dev mode to allow using localhost in tests 2016-11-08 16:35:11 -08:00
Michael Schurter f1120e4de0 Fix test that fails now that advertise can't be localhost 2016-11-08 16:22:04 -08:00
Michael Schurter 290f71f62e Restore sync/atomic use for consistency 2016-11-08 16:21:52 -08:00
Michael Schurter 293c596411 Normalize configs for agent tests 2016-11-08 16:13:09 -08:00
Michael Schurter 6d83a192cf Fix int pointer formatting and server config test 2016-11-08 16:02:20 -08:00
Michael Schurter 4235d65011 Move config normalization into config.go to ease testing 2016-11-08 15:44:10 -08:00
Michael Schurter 1e3a2ae04d Match old error messages 2016-11-08 15:25:29 -08:00
Michael Schurter ad07eef9ab Handle missing ports in addresses 2016-11-08 13:44:41 -08:00
Michael Schurter 2960380055 Refactor getAdvertise into a func 2016-11-08 13:06:56 -08:00
Diptanu Choudhury a70fbd7cf1 Fixed a test 2016-11-08 13:01:56 -08:00
Michael Schurter fbcc0ddbf5 Failure to resolve advertise address isn't fatal 2016-11-08 11:17:22 -08:00
Michael Schurter c735589f41 Choose safer default advertise address
* -dev mode defaults bind & advertise to localhost
* Normal mode defaults bind to 0.0.0.0 & advertise to the resolved
  hostname. If the hostname resolves to localhost it will refuse to
  start and advertise must be manually set.
2016-11-08 11:17:16 -08:00
Diptanu Choudhury a1b4b20eff Changing the API to use the new servermember datastructure 2016-11-06 10:30:43 -08:00
Diptanu Choudhury 9e0507e878 Add an RPC endpoint for server members 2016-11-06 10:16:12 -08:00
Diptanu Choudhury 15f085a4d7 Merge pull request #1931 from hashicorp/rename-vault-config
Rename vault config
2016-11-06 10:14:25 -08:00
Diptanu Choudhury 98bd0e2100 Disable http checks if TLS is enabled 2016-11-03 17:33:58 -07:00
Diptanu Choudhury b6f9df5415 Renaming TLS related vault config 2016-11-03 14:24:39 -07:00
Seth Vargo 4a1fa67f26
Separate agent configuration into its own pages
I apologize in advance for the rather long PR, but unfortunately there
is not an easy way to break this up into smaller chunks. This separates
the agent configuration into smaller, more consumable pieces just like
the job specification.
2016-11-02 18:30:00 -04:00
Diptanu Choudhury 808718523b Merge pull request #1909 from hashicorp/region-wrapper
Making Nomad TLS configs region aware
2016-11-01 14:31:39 -07:00
Michael Schurter 536c2921e9 Remove ServerName because we verify based on region 2016-11-01 14:17:31 -07:00
Alex Dadgar ebe4b7893b Merge branch 'master' of github.com:hashicorp/nomad 2016-11-01 13:24:07 -07:00
Alex Dadgar 75696f4c70 Resolve 2016-11-01 13:23:44 -07:00
Alex Dadgar 1156c79e1b Read from env 2016-11-01 12:37:27 -07:00
Seth Vargo 8baa0f8341 Merge pull request #1901 from hashicorp/sethvargo/more_docs
Update init command and add ephemeral_disk docs
2016-10-31 21:53:03 -04:00
Seth Vargo 90fad382cf
Address feedback 2016-10-31 21:52:45 -04:00
Alex Dadgar 674e572d35 Merge pull request #1902 from hashicorp/b-advertise
Allow advertise to not specify port
2016-10-31 18:17:30 -07:00
Alex Dadgar d037c4ffe9 Check that advertise without ports works in test 2016-10-31 18:08:49 -07:00
Diptanu Choudhury f0afdde81f Merge branch 'master' of github.com:hashicorp/nomad 2016-10-31 17:50:58 -07:00
Diptanu Choudhury 724d537104 Added the migrate flag to init 2016-10-31 17:50:07 -07:00
Alex Dadgar 376651bcb2 Allow advertise to not specify port 2016-10-31 17:12:29 -07:00
Seth Vargo e30f92e6da
Update docs on the sample command 2016-10-31 19:55:40 -04:00
Seth Vargo 358aa6a260
Fix typo 2016-10-31 16:52:56 -04:00
Seth Vargo f318dc2ba9
Alphabetize services 2016-10-31 16:52:55 -04:00
Seth Vargo 8dadd1659b
Update service example in init command 2016-10-31 16:52:54 -04:00
Seth Vargo 082ba5a3c8
Move resources alphabetical 2016-10-31 16:52:54 -04:00
Seth Vargo aa8f137450
Update resources example in init command 2016-10-31 16:52:53 -04:00
Seth Vargo 434db4de28
Move logs configuration up in init command 2016-10-31 16:52:53 -04:00
Seth Vargo 3e3ffcb9ec
Update logs example in init 2016-10-31 16:52:53 -04:00
Seth Vargo 2f050a535d
Update artifact example in init command 2016-10-31 16:52:52 -04:00
Seth Vargo 7c441e6d3c
Add vault example to init command 2016-10-31 16:52:52 -04:00
Seth Vargo cf000c2621
Add template example to init command 2016-10-31 16:52:52 -04:00
Alex Dadgar c4d8d744c7 Add to valid configs fields 2016-10-27 11:29:12 -07:00
Alex Dadgar ddf5fb82b5 Small cleanups 2016-10-27 10:51:11 -07:00
Evan Gilman 59489e4e4f Never return 0.0.0.0 as a non-bind address 2016-10-27 10:51:11 -07:00
Evan Gilman 7511490c12 Add more address selector tests 2016-10-27 10:51:11 -07:00
Evan Gilman af3de22d4f Remove old address advertise config code 2016-10-27 10:51:11 -07:00
Evan Gilman de33949df8 Add address selector methods to the agent 2016-10-27 10:51:11 -07:00
Evan Gilman 06909d2465 Use bind address for consul healtchecks in nomad client too 2016-10-27 10:47:45 -07:00
Evan Gilman c0ff732513 Use bind address for consul service checks 2016-10-27 10:47:45 -07:00
Diptanu Choudhury a051d87c5d Making the nomad agent checks tcp 2016-10-26 16:30:29 -07:00
Diptanu Choudhury a6802a6948 Fixed TestMeta_FlagSet test 2016-10-26 16:20:17 -07:00
Diptanu Choudhury 84722234b4 Fixed a bunch of TLS related failures 2016-10-26 14:08:46 -07:00
Diptanu Choudhury df53a3bb92 Added datadog_address to valid keys 2016-10-26 13:28:28 -07:00
Diptanu Choudhury 067fcda3fe Making the cli use TLS if the client has enabled TLS 2016-10-26 11:13:53 -07:00
Diptanu Choudhury 50ca5e1e9d Merge pull request #1853 from hashicorp/f-rpc-http-tls
TLS support for http and RPC
2016-10-25 16:14:43 -07:00
Diptanu Choudhury 7c61e115bd Moved tlsutil into helpers 2016-10-25 16:05:37 -07:00
Diptanu Choudhury cf35aeac84 Moving the TLSConfig to structs 2016-10-25 15:57:38 -07:00
Alex Dadgar bf0981363f Merge pull request #1850 from hashicorp/f-fs-secret
Disallow fs to read secret directory
2016-10-25 11:35:08 -07:00