Commit Graph

44 Commits

Author SHA1 Message Date
Charlie Voiselle
8d6bd6dca4 fix typo
Priviledge -> privilege
2018-01-08 15:56:07 -05:00
Chelsea Holland Komlo
927c0a4d88 change location of default kill signal 2017-12-06 17:48:25 -05:00
Chelsea Holland Komlo
8356c6183c extract signal helper into utils 2017-12-06 14:36:44 -05:00
Michael Schurter
a96fb5dbb0 Move task env into execcontext
Also inject PATH into rkt commands since we're no longer appending host
env vars for it.
2017-05-23 13:53:34 -07:00
Michael Schurter
92b19c441a Ignore Consul deregister errors on executors
Errors here only occur if Consul is not running when Nomad is restarted.

Errors here are only an issue if:
 * Consul is being used but is down or misbehaving
 * The executor is old (<0.6)
 * The task has services
 * The services hit a pre-0.6 consul.Syncer bug

If all of those conditions are met the pre-0.6 bugs will persist for
this task until Nomad is restarted.
2017-05-09 11:28:27 -07:00
Michael Schurter
426c696404 Reuse ExecScript implementation 2017-05-04 16:21:40 -07:00
Michael Schurter
29f222d461 Change raw_exec to use simplified exec wrapper 2017-04-21 16:50:20 -07:00
Michael Schurter
10cb924b2c 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
4ba4987625 Drivers log during fingerprinting
This PR fixes a regression in which some drivers did not log during
fingerprinting.
2017-02-20 19:35:51 -08:00
Diptanu Choudhury
a066d90313 Added executorconfig 2017-01-12 15:47:58 -08:00
Diptanu Choudhury
84137b02c5 Filter executor log messages 2017-01-12 11:54:19 -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
Sean Chittenden
d810590db9 Create a consulContext using a client's consul config.
This is wrong and should be the Agent's Consul Config.  This is a
step in the right direction, so committing to mark the necessary
future change.
2016-06-10 15:54:39 -04:00
Sean Chittenden
6b8a9b435c Update the nomad_server_service default from nomad-server to just nomad. 2016-06-10 15:50:11 -04:00
Sean Chittenden
1fa43a09dd Reduce all forms of ConsulConfig down to a single struct
nomad/structs/config/consul.go's ConsulConfig is the canonical definition
for all things Consul now.
2016-06-10 15:50:11 -04:00
Sean Chittenden
16b4e5c9be Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
2016-06-10 15:50:11 -04:00
Sean Chittenden
6fae3db12e Rename ConsulConfig to ConsulAgentConfig 2016-06-10 15:50:11 -04:00
Sean Chittenden
d268dcb85d Reduce all forms of ConsulConfig down to a single struct
nomad/structs/config/consul.go's ConsulConfig is the canonical definition
for all things Consul now.
2016-06-10 15:50:11 -04:00
Sean Chittenden
ffcd2332d4 Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
2016-06-10 15:50:11 -04:00
Sean Chittenden
8e256471a9 Rename ConsulConfig to ConsulAgentConfig 2016-06-10 15:48:36 -04:00
Sean Chittenden
0e1bdad2a0 Rename consul.ConsulConfig to consul.AgentConfig
There were two `ConsulConfig` structs running around, one of them
needed to go away.  Rely on the package's path to provide context
for the type of AgentConfig.
2016-06-10 15:48:36 -04:00
Diptanu Choudhury
8499f091e3 Added docs 2016-03-27 23:21:50 -07:00
Diptanu Choudhury
5bec27a9a4 Using tls cert and key files while connecting to consul over https 2016-03-27 23:09:31 -07:00
Diptanu Choudhury
fe9e271619 Creating the docker driver in the executor properly 2016-03-24 16:15:22 -07:00
Diptanu Choudhury
588666d0df Introducing ConsulContext 2016-03-24 15:57:16 -07:00
Alex Dadgar
324a11003f Merge pull request #950 from mssola/raw-exec-user
client: added the "user" option to tasks
2016-03-24 08:57:13 -07:00
Diptanu Choudhury
9a71225b9e Removing references to old consul services and adding consul config to executor context 2016-03-23 12:19:19 -07:00
Miquel Sabaté Solà
939a00aca8 client/driver: added the user config value
This way Nomad allows to set which user has to run the task.

Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
2016-03-23 12:57:31 +01:00
Alex Dadgar
2db5b298aa Make user specified tasks executable 2016-03-15 19:22:40 -07:00
Alex Dadgar
6ef841bc34 Updating kill timeout adheres to operator specified maximum 2016-03-03 09:21:21 -08:00
Diptanu Choudhury
37e8248495 Merge pull request #842 from hashicorp/f-validate-command
drivers: validate that command contains one field
2016-02-23 13:45:10 -08:00
Alex Dadgar
704ad6ecb4 validate that command contains one field 2016-02-23 10:19:40 -08:00
Diptanu Choudhury
3ba626df72 Renamed packages 2016-02-19 13:08:25 -08:00
Diptanu Choudhury
6c27ae6b91 Renamed the syslog package to logcollector 2016-02-10 18:47:46 -08:00
Diptanu Choudhury
4963026eab Writing log lines from docker to files 2016-02-10 07:52:15 -08:00
Diptanu Choudhury
7eedcbfcf6 Starting the syslog collector along with a docker container 2016-02-09 18:24:30 -08:00
Diptanu Choudhury
8b2f94ff6f Added a test for merge 2016-02-08 16:27:31 -08:00
Diptanu Choudhury
70f7b2d70f Setting defaults for client max and min port 2016-02-08 13:29:53 -08:00
Diptanu Choudhury
b1b57d20b0 Isolating the plugin process from the nomad client 2016-02-07 22:33:48 -05:00
Diptanu Choudhury
2533156b9e Corrected comments and making the plugins write to unique log files 2016-02-05 10:49:54 -08:00
Diptanu Choudhury
d8ed2949cd Not syncing stdout and stderr of pluging with client 2016-02-04 17:36:31 -08:00
Diptanu Choudhury
2b8cdc47d3 Moved packages around 2016-02-04 17:00:41 -08:00
Diptanu Choudhury
5ea6b85e76 Destroying the plugin if we can't connect to it 2016-02-04 17:00:40 -08:00
Diptanu Choudhury
d24f089273 Removed duplicate code 2016-02-04 17:00:40 -08:00