Commit Graph

1010 Commits

Author SHA1 Message Date
Diptanu Choudhury 587141f856 Removing taskDir from the exechandle 2016-02-09 10:21:47 -08:00
Diptanu Choudhury 0120aceb49 Merge branch 'r-executor-plugin' of github.com:hashicorp/nomad into r-executor-plugin 2016-02-09 10:17:44 -08:00
Diptanu Choudhury 8fca3625e2 Killing the userpid if the plugin is killed while the client is running 2016-02-09 10:17:33 -08:00
Alex Dadgar e7e7348727 Don't error killing exited process 2016-02-09 10:00:42 -08:00
Alex Dadgar 4fa7b35443 more time 2016-02-09 09:43:40 -08:00
Alex Dadgar 5f966ec57a Fix min duration 2016-02-08 19:46:46 -08:00
Alex Dadgar c8807e2927 Fix timeouts between signal and kill 2016-02-08 19:31:57 -08:00
Diptanu Choudhury 9a46dcb553 Fixed a test 2016-02-08 19:00:26 -08:00
Alex Dadgar 75473e88d2 Unmount special directories when task finishes 2016-02-08 18:51:11 -08:00
Diptanu Choudhury 4644f8a9d4 Added a test for merge 2016-02-08 16:27:31 -08:00
Diptanu Choudhury 1a13400f2d Moved the destroycgroup method into executor 2016-02-08 16:08:29 -08:00
Diptanu Choudhury fc8e099cc3 removing the prefix of the logger 2016-02-08 15:07:18 -08:00
Diptanu Choudhury 32e24e257a Appending names of sub-system before log lines 2016-02-08 14:47:10 -08:00
Diptanu Choudhury 6c85ed6c8e Removing pathExists from executor 2016-02-08 14:40:54 -08:00
Diptanu Choudhury 10fe104f97 Unmounting dev and proc when open can't reconnect with the plugin process 2016-02-08 14:31:03 -08:00
Diptanu Choudhury e89bcf52b8 Moving code to mount and unmount chroot into allocdir 2016-02-08 14:11:53 -08:00
Diptanu Choudhury e53ebc9e3c Extracted the cgroup info into isolation struct 2016-02-08 13:48:26 -08:00
Diptanu Choudhury 21677468cf Setting defaults for client max and min port 2016-02-08 13:29:53 -08:00
Diptanu Choudhury 088d2cba53 Making the plugin server return the same instance of executor rpc server 2016-02-08 11:56:48 -08:00
Diptanu Choudhury b8e4941862 Fixed merge conflicts 2016-02-08 10:24:27 -08:00
Diptanu Choudhury ea5a8c66ab Implemented the UpdateLogConfig method 2016-02-08 10:10:01 -08:00
Diptanu Choudhury f6f51a6926 Destroying the cgroup if we can't to executor in exec and java drivers 2016-02-08 10:05:39 -08:00
Diptanu Choudhury fa45e0b8ca Using net.IsLoopback to determine if ifc is a loopback device 2016-02-08 07:57:31 -08:00
Diptanu Choudhury 68d0105634 Isolating the plugin process from the nomad client 2016-02-07 22:33:48 -05:00
Diptanu Choudhury 4527410e33 Fixed merged conflict 2016-02-07 17:58:31 -05:00
Diptanu Choudhury 957a446edf Merge pull request #773 from hashicorp/docker-auth
Reading dockercfg files for authenticating with private registries
2016-02-06 18:03:39 -08:00
Alex Dadgar fdc7124032 Precise registration 2016-02-06 17:08:20 -08:00
Alex Dadgar c744e2f4f1 Update the consul service when the task/alloc changes 2016-02-06 17:08:20 -08:00
Alex Dadgar 40f510f168 interpreted variable docs 2016-02-06 15:35:07 -08:00
Diptanu Choudhury d0b6fb1993 Updated the docker auth config 2016-02-06 05:47:56 -08:00
Diptanu Choudhury 745bfaae7b Reading dockercfg files for authenticating with private registries 2016-02-06 05:43:30 -08:00
Diptanu Choudhury c9d2151f90 Changed a few comments 2016-02-05 18:07:06 -08:00
Diptanu Choudhury 1b9a54abec Updated comment 2016-02-05 17:40:06 -08:00
Diptanu Choudhury 370dc41ca2 Renamed the plugin log file 2016-02-05 17:07:02 -08:00
Diptanu Choudhury d2eeba213c Reserving ports on windows 2016-02-05 15:17:15 -08:00
Diptanu Choudhury f4b32ae5fc Entering the plugin pid into the cgroup after creating it 2016-02-05 13:16:29 -08:00
Diptanu Choudhury 2871dfce26 Using signals to test if proces is alive 2016-02-05 13:05:49 -08:00
Diptanu Choudhury fa41d8a062 Added a test which shows userpid is killed when plugin can not be re-connected on calling Open 2016-02-05 11:37:13 -08:00
Diptanu Choudhury 918cc46d30 Added a test which isolates and constraints a process using the executor 2016-02-05 11:07:16 -08:00
Diptanu Choudhury f4ea6a15c8 Making the java driver apply resource constraints and limits 2016-02-05 10:55:03 -08:00
Diptanu Choudhury b788017574 Corrected comments and making the plugins write to unique log files 2016-02-05 10:49:54 -08:00
Diptanu Choudhury faf6083352 Passing the log rotation parameters to docker daemon 2016-02-05 00:22:31 -08:00
Diptanu Choudhury 08932e5bbc Putting the plugin in the same cgroup as the user process 2016-02-05 00:11:09 -08:00
Diptanu Choudhury 91e7922f3b Implemented log rotator for exec based drivers 2016-02-04 23:54:15 -08:00
Diptanu Choudhury ff714703e6 Fixing merge conflicts 2016-02-04 22:55:38 -08:00
Diptanu Choudhury 9c963055a4 Running processes with exec as nobody 2016-02-04 17:49:47 -08:00
Diptanu Choudhury 30d5bba131 Not syncing stdout and stderr of pluging with client 2016-02-04 17:36:31 -08:00
Alex Dadgar a4f7709f08 Fix tests 2016-02-04 17:27:58 -08:00
Alex Dadgar 5ac11c227a Merge pull request #756 from hashicorp/f-download-location
Extract artifacts to the root of the task, not in the local directory
2016-02-04 17:22:11 -08:00
Diptanu Choudhury f5ce39e3fa Updated the value of the magic cookie 2016-02-04 17:00:41 -08:00
Diptanu Choudhury 6d48f1933b Removed using ProcessState when we just want an empty interface 2016-02-04 17:00:41 -08:00
Diptanu Choudhury a0ff83f44c Added some docs 2016-02-04 17:00:41 -08:00
Diptanu Choudhury f95b973c2c Moved packages around 2016-02-04 17:00:41 -08:00
Diptanu Choudhury 0309506b57 Added tests for the executor 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 7f790826af Destroying the plugin if we can't connect to it 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 63e0b20e5e Removed duplicate code 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 94a51a6a1b Fixing the id generation logic for the java and qemu drivers 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 02db2e5735 Fixed the raw_exec_driver tests 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 83882eca3f Fixed the kill test 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 6c9f33ed19 Fixed creation of the command args 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 675b5f898a Fixed the wait rpc server 2016-02-04 17:00:40 -08:00
Diptanu Choudhury 7e3041e2ee Fixed a test related to wait 2016-02-04 17:00:39 -08:00
Diptanu Choudhury e5595fd8cb Fixed a test 2016-02-04 17:00:39 -08:00
Diptanu Choudhury 38374e3703 Fixed a comment 2016-02-04 17:00:39 -08:00
Diptanu Choudhury 2f9c14c3e0 Fixed the rpc server 2016-02-04 17:00:39 -08:00
Diptanu Choudhury 356fb6abdb Removed executor and spawn daemon 2016-02-04 17:00:39 -08:00
Diptanu Choudhury 263c89fdee Moved qemu to executor plugin 2016-02-04 17:00:39 -08:00
Diptanu Choudhury a821c162ff Moving the java executor to the executor plugin 2016-02-04 17:00:39 -08:00
Diptanu Choudhury 17d2257a13 Enabling logs and killing the plugin if we couldn't start the job 2016-02-04 17:00:39 -08:00
Diptanu Choudhury c6271d2408 Making the wait asynchronous 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 6a719ef167 Turning on isolation for exec 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 1c616deab3 Introduced the flag for the user 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 3accb642e8 Creating the universal executor 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 6eba0e46ec Killing the plugin after wait returns 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 14acbe7479 Limiting resources on a process 2016-02-04 17:00:38 -08:00
Diptanu Choudhury a6f87c555c Fixed the path to the log files 2016-02-04 17:00:38 -08:00
Diptanu Choudhury 9fc86deb43 Implemented the exec functioanlity for linux 2016-02-04 17:00:37 -08:00
Diptanu Choudhury 87f40135ea Using the plugin to spawn processes from the raw_exec driver 2016-02-04 17:00:37 -08:00
Diptanu Choudhury 57453086a7 Fixed the executor command 2016-02-04 17:00:37 -08:00
Diptanu Choudhury 4ed85d0ab2 Using a plugin to create the executor 2016-02-04 17:00:37 -08:00
Alex Dadgar 66f59e2dc0 Add tmp file to each task directory 2016-02-04 15:35:04 -08:00
Alex Dadgar 21c2368626 Fix java test 2016-02-04 15:26:37 -08:00
Alex Dadgar 77b89d15e4 Extract artifacts to the root of the task, not in the local directory 2016-02-04 15:18:22 -08:00
Alex Dadgar b45b101240 Serialize the list of mounted entries in the alloc dir 2016-02-04 14:30:32 -08:00
Alex Dadgar e8067029cc Small fixes 2016-02-04 14:19:27 -08:00
Alex Dadgar 117bef6515 Fix AllocRunner not capturing destroy signal and tests 2016-02-04 13:09:53 -08:00
Alex Dadgar 1a58923c42 Merge pull request #751 from hashicorp/b-client-updates
Client handles updates to KillTimeout and Restart Policy
2016-02-04 10:19:28 -08:00
Ivo Verberk 73ab620f61 Add comments to hasNodeChanged and remove superfluous else block 2016-02-04 08:19:34 +01:00
Alex Dadgar 9619f61832 Fix tests 2016-02-03 19:58:39 -08:00
Alex Dadgar 41e1174f72 Client handles updates to KillTimeout and Restart Policy 2016-02-03 19:43:44 -08:00
Alex Dadgar b6f9e9c61c Move restart tracker creation into task runner 2016-02-03 16:16:48 -08:00
Ivo Verberk d5a67aba86 Reregister node when periodic fingerprint changes node properties 2016-02-03 21:10:58 +01:00
Alex Dadgar e3587f5f24 Another test fix 2016-02-02 17:35:06 -08:00
Alex Dadgar 9a79521999 Fix test 2016-02-02 17:35:06 -08:00
Alex Dadgar 6f20d3f435 Restart on-success shouldn't be user specifiable 2016-02-02 17:35:06 -08:00
Alex Dadgar 931283c5e3 Merge pull request #745 from hashicorp/b-rkt-version-regex
Update Rkt regex to determine version
2016-02-02 15:55:50 -08:00
Alex Dadgar 2d42cb3e55 update the regex 2016-02-02 15:39:45 -08:00
Ryan Uber 1c7cdb9577 client: obey restart policy when attempts == 0 2016-02-02 14:17:39 -08:00
Alex Dadgar cf1e152f44 Clean interaction between alloc-runner and task-runner 2016-02-02 11:09:29 -08:00
Alex Dadgar a72d39bd04 Don't share task state with the alloc in the task runner 2016-02-01 17:47:53 -08:00
Alex Dadgar b5260fc14e Fix locks and use task runners state not alloc state 2016-02-01 15:43:59 -08:00
Alex Dadgar 2d98c0eadd Fix double pull with introduction of AllocModifyIndex 2016-02-01 15:43:59 -08:00
Ranjib Dey 4527257647 allow group and others to have executable permissions 2016-01-31 10:54:32 -08:00
Alex Dadgar 3b8e7a75d2 Merge pull request #704 from iverberk/f-env-ports
Pass a combination of ip and port to the task environment.
2016-01-29 08:53:47 -08:00
Alex Dadgar 4ce455be31 Merge pull request #712 from iverberk/f-cgroup-finterprinter
Add periodic cgroup fingerprinter
2016-01-29 08:50:43 -08:00
Ivo Verberk 22fef1766b Add comments and small improvements to cgroup fingerprinter 2016-01-29 14:34:29 +01:00
Jake Champlin e053511232 Use net.JoinHostPort 2016-01-29 05:39:28 -05:00
Jake Champlin 78814cba28 Spelling 2016-01-29 05:11:50 -05:00
Jake Champlin 9a6bd0d7fe Updates from comments, fix tests 2016-01-28 23:11:13 -05:00
Jake Champlin ee1be79093 Allow ports to be optional when adding servers
When updating a clients servers, as nomad does not use the gossip
protocol over a specified port for clients, it was required to specify
ports along with server addresses.

Now specifying ports are optional, and if unspecified the default `4647`
port is used, reflecting a notice back to the user.
2016-01-28 22:08:28 -05:00
Diptanu Choudhury 980bc19d10 Added more information about files 2016-01-27 14:20:10 -08:00
Alex Dadgar d3f0464284 Merge pull request #714 from ryanslade/patch-1
Fix a typo
2016-01-27 10:14:45 -08:00
Ryan Slade e8b3ee3c69 Fix a typo 2016-01-27 17:49:32 +02:00
Ivo Verberk 2921cf0d92 Fix comment 2016-01-27 10:56:35 +01:00
Ivo Verberk 7f97dd8553 Only enable exec driver when cgroups are available
Make the exec driver fingerprinter periodic to disable the driver when
cgroups become unavailable.
2016-01-27 07:32:32 +01:00
Ivo Verberk 5f86e28974 Add a periodic cgroup fingerprinter 2016-01-27 07:22:25 +01:00
Alex Dadgar e2763e3d31 Update the interpretation of node.id/name on the client 2016-01-26 17:38:36 -08:00
Alex Dadgar a85800188c Respond to comments 2016-01-26 14:55:38 -08:00
Alex Dadgar d5c77cd4a4 Update client fingerprinters 2016-01-26 10:08:01 -08:00
Ivo Verberk 061445468b Rename IPPort env variable and add a mapped host port to the env. 2016-01-25 20:46:01 +01:00
Ivo Verberk e58bda9056 Pass a combination of ip and port to the task environment.
The different labels can be on different IPs.
2016-01-24 10:31:03 +01:00
Alex Dadgar ec9c375c1c Have docker use the task environment in the context 2016-01-22 15:00:36 -08:00
Alex Dadgar a1cd55e53e Merge pull request #690 from hashicorp/b-fix-root-tests
Fix failing tests running under root
2016-01-21 17:01:10 -08:00
Alex Dadgar 480626a6ea Just check the alloc is not pending 2016-01-21 16:05:35 -08:00
Alex Dadgar a3c22258cd Use TestMultiplier on all waits 2016-01-21 15:24:24 -08:00
Alex Dadgar 4f0f568bbe AllocRunner restore test 2016-01-21 14:52:41 -08:00
Alex Dadgar 0406a3a190 Handle case that pid is dead in ForceStop 2016-01-21 14:09:04 -08:00
Alex Dadgar a4ddfc306b ordering issue 2016-01-21 13:28:48 -08:00
Alex Dadgar 9656714f4e Bump again 2016-01-21 12:55:35 -08:00
Alex Dadgar fd21e890db Time Duration fixes 2016-01-21 12:29:13 -08:00
Diptanu Choudhury 33d2b2c8ee Merge pull request #685 from hashicorp/f-docker-logs
Log Rotator
2016-01-20 16:52:27 -08:00
Diptanu Choudhury d1e4bf1f03 Simplied the logic of detecting the currently rotate log file 2016-01-20 16:50:31 -08:00
Diptanu Choudhury 5035699c14 Added a comment in the test 2016-01-20 16:30:55 -08:00
Diptanu Choudhury 7099aacbb3 Simplifying a test 2016-01-20 16:25:51 -08:00
Diptanu Choudhury 92cc950398 Using tmpdir and tmpfile in tests 2016-01-20 16:17:49 -08:00
Alex Dadgar 1ceb6f012a Fix a bunch of tests
Up timeouts

trusty travis beta

Increase timeouts
2016-01-20 16:03:53 -08:00
Diptanu Choudhury 6b9dcd06c6 Renaming a test 2016-01-20 15:55:41 -08:00
Diptanu Choudhury 87eef5cd3f Changing the logic of purging old rotated files 2016-01-20 15:53:17 -08:00
Diptanu Choudhury 46f09dd1f1 Added some comments 2016-01-20 14:14:37 -08:00
Alex Dadgar 9f5ccee7ff Fix docker tests 2016-01-19 15:35:01 -08:00
Ivo Verberk 9c46eceeac Cleanup code and add comments 2016-01-20 00:02:17 +01:00
Diptanu Choudhury d3734a47cd stating an existing file only once 2016-01-16 20:09:24 -08:00
Diptanu Choudhury 4122aeedc8 Added a comment for bufsize 2016-01-16 19:21:16 -08:00
Diptanu Choudhury 6e069369fe Implemented a method to purge files 2016-01-16 19:19:52 -08:00
Diptanu Choudhury c3fd960485 Fixing tests 2016-01-15 11:18:02 -08:00
Ivo Verberk 149c55252d Merge branch 'master' into f-cli-short-ids 2016-01-15 09:19:53 +01:00
Diptanu Choudhury 2bfdd71db9 add a logger 2016-01-14 23:16:30 -08:00
Diptanu Choudhury 3fb21b1b40 excluding directories before opening file for writing 2016-01-14 23:05:45 -08:00
Diptanu Choudhury 385fe065ec Added a test for testing if logrotator creates an empty dir when it starts from scratch 2016-01-14 22:43:52 -08:00
Diptanu Choudhury 5835d0e436 Fixed the logic of rotating files 2016-01-14 22:36:55 -08:00