Commit Graph

1020 Commits

Author SHA1 Message Date
Alex Dadgar
fa7db8cdd4 Don't retrieve Driver Stats if unsupported
This PR makes us only try to collect stats once if the Driver doesn't
support collecting stats.

Fixes https://github.com/hashicorp/nomad/issues/1986
2017-01-09 13:47:06 -08:00
Michael Schurter
a087a8be79 Fix inconsistent task env setting
Consolidate task environment building in GetTaskEnv since it can
determine what kind of filesystem isolation is used.

This means drivers no longer have to manipulate task environment paths.
2017-01-06 12:19:32 -08:00
Michael Schurter
ed8b3cd37d Fix executor tests 2017-01-06 11:39:18 -08:00
Michael Schurter
59c501f474 Driver is now required in test tasks 2017-01-06 11:39:17 -08:00
Michael Schurter
12915c30bf Remove debug logging 2017-01-05 16:31:56 -08:00
Michael Schurter
86db19407e Remove task name prefix from executor logs 2017-01-05 16:31:56 -08:00
Michael Schurter
e25274b775 Put a logger in AllocDir/TaskDir 2017-01-05 16:31:56 -08:00
Michael Schurter
e7f6986eb2 Test tasks now require driver name 2017-01-05 16:31:55 -08:00
Michael Schurter
de7351b959 Move chroot building into TaskRunner
* Refactor AllocDir to have a TaskDir struct per task.
* Drivers expose filesystem isolation preference
* Fix lxc mounting of `secrets/`
2017-01-05 16:31:49 -08:00
Alex Dadgar
248c069652 Merge pull request #2128 from hashicorp/f-dispatch
Nomad Constructor Jobs and Dispatch
2017-01-06 05:22:49 +08:00
Michael Schurter
fccf115c56 Merge pull request #2054 from hashicorp/f-prestart
Add Driver.Prestart method
2016-12-20 16:18:56 -08:00
Michael Schurter
904543ef1b Remove unneeded env building 2016-12-20 16:14:42 -08:00
Michael Schurter
decee19978 Fix tests broken by TaskEnv change 2016-12-20 14:37:35 -08:00
Michael Schurter
630812bbdd lxc: Set image local env vars 2016-12-20 14:37:18 -08:00
Michael Schurter
5ad7eeaed5 Remove unneeded waitClient field 2016-12-20 14:29:57 -08:00
Michael Schurter
aaa70ab7b8 Append host env vars on every task env 2016-12-20 12:24:24 -08:00
Michael Schurter
6702813233 Fix formatting of downloading image message 2016-12-20 11:57:26 -08:00
Michael Schurter
bbcc27ef1b Use startContainer wrapper 2016-12-20 11:55:40 -08:00
Michael Schurter
50934da2c4 Emit "Downloading image" event 2016-12-20 11:40:34 -08:00
Alex Dadgar
e420d17bfb Small cleanups 2016-12-19 14:22:08 -08:00
Alex Dadgar
feb6f53a53 Merge pull request #1980 from dmexe/network-aliases
Add network_aliases for docker driver
2016-12-19 14:17:48 -08:00
Alex Dadgar
f36ccccdc2 Fix Docker Logging Type interpolation
This PR fixes an issue that made Logging.Type un-interpretable in the
docker driver.
2016-12-19 13:42:58 -08:00
Alex Dadgar
a51adaf609 Merge pull request #2063 from tmichaud314/fix-docker-driver-auth-interpolation
Fixes docker-driver Auth-config interpolation
2016-12-19 13:41:27 -08:00
Alex Dadgar
c2cb2cc11f Fix test and prevent job with payload from being submitted 2016-12-18 16:32:14 -08:00
Alex Dadgar
cb10b277eb Use new combined meta data function in env 2016-12-16 10:45:09 -08:00
Alex Dadgar
92dc04e335 Fix mapstructure tag formatting for lxc driver 2016-12-16 10:24:17 -08:00
Tom Michaud
a3dcd24894 Fixes docker-driver Auth-config interpolation 2016-12-06 13:30:23 -07:00
Michael Schurter
ee17940dfe 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
c72600efd1 Make errors starting a container recoverable
This PR makes errors starting a container recoverable and tries to
optimistically handle 500 errors.
2016-11-30 15:59:47 -08:00
Diptanu Choudhury
a6012560db Merge pull request #2045 from hashicorp/b-docker-create-container
Returning a container if it exists instead of creating a new one
2016-11-29 17:55:33 -08:00
Diptanu Choudhury
3f825bf746 Returning a container if it exists instead of creating a new one 2016-11-29 17:52:19 -08:00
Alex Dadgar
e01e02e7cf add debugging 2016-11-29 14:29:37 -08:00
Diptanu Choudhury
26bb30ed14 Fixes an issue with purging containers with the same name Nomad is trying to start 2016-11-28 17:37:22 -08:00
Michael Schurter
119198f022 rkt: Support host and none dns options
Fixes #2025
2016-11-28 13:13:40 -08:00
Michael Schurter
449194eb47 Fix rkt volumes
I forgot to validate the volumes field!
2016-11-28 13:13:40 -08:00
Alex Dadgar
0ed5967410 Merge pull request #2029 from gliptak/dockerauth1
Log when lookup in docker.auth.config fails
2016-11-28 12:45:19 -08:00
Alex Dadgar
23cdb37290 Merge pull request #2033 from hashicorp/b-docker-container-exists
Make container exist errors non-retriable
2016-11-28 12:38:52 -08:00
Michael Schurter
4eb30022b2 Use net.JoinHostPort instead of fmt.Sprintf
Using fmt.Sprintf breaks IPv6 addresses.
2016-11-28 10:38:54 -08:00
Alex Dadgar
49ee34c1e3 Make container exist errors non-retriable
This change makes it so that the task runner does not retry container
exists errors and also a sleep is added on the local retry.
2016-11-25 19:22:58 -08:00
Gábor Lipták
72f895688d Log when lookup in docker.auth.config fails 2016-11-23 18:43:58 -05:00
Ranjib Dey
1aaceafecc Fix error message. Pass on template args 2016-11-21 20:12:59 -08:00
Dmitry Galinsky
49416ebf4c Add network_aliases for docker driver 2016-11-16 11:16:07 +03:00
Alex Dadgar
fb56132830 respond to comment 2016-11-15 16:27:07 -08:00
Alex Dadgar
756738d9f1 Fix TestRktDriver_PortsMapping and TestAgent_LoadKeyrings 2016-11-15 15:49:05 -08:00
Alex Dadgar
0aad09c239 Remove todo 2016-11-10 15:20:19 -08:00
Alex Dadgar
e246167dc5 Changes the relative path from joining against the alloc dir to the
task's directory.

This PR changes the behavior when given a relative host path when
mounting docker containers. Prior to this, the behavior was to mount by
joining against the alloc/ directory. This PR changes it to be against
the task/ directory.
2016-11-10 14:47:54 -08:00
Alex Dadgar
3715613a47 Do not validate the command does not contain spaces.
This PR removes validation that the command string does not contain
spaces. This can cause issues where the path contains a folder that
includes a space ("C:\Program Files\Python35\python.exe").

Fixes #1737
2016-11-10 10:22:17 -08:00
Alex Dadgar
4c47e3553a Merge pull request #1965 from hashicorp/b-docker-interpolate
Interpolate all docker driver configs that are strings
2016-11-08 15:35:27 -08:00
Alex Dadgar
ec103e1d65 Merge pull request #1966 from hashicorp/b-service-interpolate
Interpolate all service/check fields
2016-11-08 15:35:19 -08:00
Alex Dadgar
a90b84afd8 Rkt env var 2016-11-08 15:14:04 -08:00