Diptanu Choudhury
86be2bf0be
Cleaned up the logic to calculate restart duration
2015-11-05 15:16:29 -08:00
Alex Dadgar
880d567836
Merge pull request #388 from hashicorp/f-basic-exec-use-spawner
...
Basic executor uses spawner and an executor test harness
2015-11-05 13:57:11 -08:00
Alex Dadgar
5f1b6e70b0
Client handles periodic fingerprinters
2015-11-05 13:46:17 -08:00
Alex Dadgar
5f84878ffb
Add consul fingerprinter to builtin list; sort list; fix bad error in consul fingerprinter
2015-11-05 13:46:16 -08:00
Alex Dadgar
f9fd83c696
Merge fix
2015-11-05 13:46:02 -08:00
Alex Dadgar
d14bc26607
Calling incorrect executor build method
2015-11-05 11:54:51 -08:00
Clint
e494a24335
Merge pull request #381 from hashicorp/f-getter-refactor
...
client/drivers: Refactor to use Getter wrapper
2015-11-05 13:47:42 -06:00
Alex Dadgar
04aecbda0b
Fix typo
2015-11-05 11:31:50 -08:00
Diptanu Choudhury
3659335de1
Fixed the log statements
2015-11-05 11:13:05 -08:00
Diptanu Choudhury
ea854a9220
Added the logic to restart Tasks if possible
2015-11-05 11:13:04 -08:00
Diptanu Choudhury
b64ed61022
Setting the restart policy to AllocRunner and Task Runners
2015-11-05 11:13:04 -08:00
Alex Dadgar
3cf7dfb588
Merge pull request #377 from nak3/selinux-docker-driver
...
Apply SELinux label to allocate directory of docker driver
2015-11-05 10:54:48 -08:00
Shiem Edelbrock
adb8d4c1f7
Merge branch 'master' of https://github.com/hashicorp/nomad into f-docker-driver-options
...
* 'master' of https://github.com/hashicorp/nomad : (59 commits)
Move the executor and spawn package into driver
Remove file watching
Check if the PID is alive instead of heartbeating through modify time
Update CHANGELOG.md
nomad/watch: add a note about the Item struct
go fmt this file
Vet errors
Search path
Update website
Make a basic executor that can be shared and fix some fingerprinting/tests
Small improvements
Use const value for AWS metadata URL
Create Spawn pkg that handles IPC with the spawn-daemon and update exec_linux to use that
Fixed the restart policy syntax
Introducing vars to create default batch and service restart policies
Fixed the tests
Declaring Batch and Service default restart policies
Fixing tests to not create a TG without restart policies
This option only work -> This option only works
leave -> leaving
...
2015-11-05 10:48:09 -08:00
Shiem Edelbrock
c174f4819b
Added task configuraton options for docker driver
...
- Added `priviliged` option to task config to allow containers to run in
priviliged mode.
- Added `dns-servers` option to task config to allow containers to use
custom DNS servers
- Added `search-domains` option to task config to allow containers to
use custom dns search domains
- Added authentication options (under key namespace `auth.*`) to allow
authentication on a task level for docker remote.
- Updated site docs to reflect changes
2015-11-05 10:47:41 -08:00
Alex Dadgar
3cc2dd52b6
exec_basic uses Spawner; create shared test harness for executors
2015-11-05 09:58:57 -08:00
Clint Shryock
fb8066d8f3
add checksums to tests, formatting after rebase
2015-11-05 09:23:45 -06:00
Clint Shryock
1a35649ea1
remove debug line
2015-11-05 08:55:30 -06:00
Clint Shryock
145a2e3610
refactor drivers to use new getter
2015-11-05 08:55:30 -06:00
Clint Shryock
291dd3dfb1
add getter package, a thin wrapper of go-getter
2015-11-05 08:53:11 -06:00
Alex Dadgar
587031f14d
Get rid of exec.cmd struct and setuid file
2015-11-04 17:20:52 -08:00
Alex Dadgar
4259d3a43c
Move the executor and spawn package into driver
2015-11-04 16:53:27 -08:00
Alex Dadgar
f210fcd1a6
Merge pull request #380 from hashicorp/f-daemonize
...
Improve spawn-daemon and Nomad Client usage of it
2015-11-04 16:44:50 -08:00
Alex Dadgar
7d42702d28
Remove file watching
2015-11-04 16:38:28 -08:00
Kenjiro Nakayama
1e47dd4c7d
Apply SELinux label to allocate directory of docker driver
2015-11-05 09:06:22 +09:00
Alex Dadgar
81140f8787
Check if the PID is alive instead of heartbeating through modify time
2015-11-04 14:50:44 -08:00
Alex Dadgar
7f9fd5ec36
Vet errors
2015-11-03 13:37:45 -08:00
Alex Dadgar
d83777f198
Make a basic executor that can be shared and fix some fingerprinting/tests
2015-11-03 12:47:48 -08:00
Alex Dadgar
271702f4a2
Small improvements
2015-11-03 10:50:30 -08:00
Kenjiro Nakayama
21f537339e
Use const value for AWS metadata URL
2015-11-04 00:06:14 +09:00
Alex Dadgar
5562fc7672
Create Spawn pkg that handles IPC with the spawn-daemon and update exec_linux to use that
2015-11-02 20:28:37 -08:00
Chris Bednarski
a67a78a2d9
Use the same network fingerprinter for *nix and windows
2015-10-30 16:48:02 -07:00
Diptanu Choudhury
cae9b40877
Merge pull request #356 from hashicorp/network-fingerprint-refactor
...
Network fingerprint refactor
2015-10-29 16:59:54 -07:00
Alex Dadgar
93e1b49278
Merge pull request #352 from hashicorp/f-qemu-windows
...
Get Qemu to fingerprint and test properly on both windows and linux
2015-10-29 16:57:29 -07:00
Alex Dadgar
01e0be4cc6
Add comment explaining the qemu-img command on windows
2015-10-29 16:57:02 -07:00
Diptanu Choudhury
e55bbe5f2c
Refactored code
2015-10-29 16:16:10 -07:00
Diptanu Choudhury
17d430e46c
Renamed BasicNetworkInterfaceDetector to DefaultNetworkInterfaceDetector
2015-10-29 15:55:49 -07:00
Alex Dadgar
72fea7d2b5
Comments
2015-10-29 15:39:26 -07:00
Alex Dadgar
ec2367baec
Cleanup exec_linux, force cgroups, check for systemd and update the Open() api
2015-10-29 15:26:35 -07:00
Diptanu Choudhury
1360f8c6fa
Fixed a debug message
2015-10-29 15:17:40 -07:00
Diptanu Choudhury
d31f567484
Fixed style of a debug log
2015-10-29 15:15:44 -07:00
Diptanu Choudhury
08302d43ee
Added a test to ensure we are not selecting devices which are not marked as UP or loopback and have no IP addresses
2015-10-29 15:14:13 -07:00
Diptanu Choudhury
b048919b63
Added some coments
2015-10-29 11:05:58 -07:00
Diptanu Choudhury
6400273cf8
Added tests for testing detecting default device
2015-10-29 11:01:15 -07:00
Alex Dadgar
2781cbbde1
Exec driver only applies on linux as root
2015-10-28 17:22:04 -07:00
Diptanu Choudhury
b78c00f255
Introduced an interface to detect network devices so that we can mock it for tests
2015-10-28 15:58:40 -07:00
Diptanu Choudhury
f0e445d8f5
Refactored the findInterfaces method to make it more clear
2015-10-28 15:48:08 -07:00
Diptanu Choudhury
a3d79ec589
Some coding style changes
2015-10-28 15:03:11 -07:00
Diptanu Choudhury
9b86b2313f
We don't want lo and PPP in production
2015-10-28 14:44:46 -07:00
Diptanu Choudhury
df5efd1e24
Added more information to log
2015-10-28 14:41:13 -07:00
Diptanu Choudhury
58bf6047a7
Adding more information to errors
2015-10-28 14:32:13 -07:00
Diptanu Choudhury
2464789b73
Added more comments
2015-10-28 14:03:33 -07:00
Diptanu Choudhury
915be5e86c
Selecting the ipv4 address if there are ipv4 and ipv6 addresses configured for an interface
2015-10-28 13:38:28 -07:00
Diptanu Choudhury
fffb0ed5ae
Exctracted a method to detect network interface
2015-10-28 11:11:13 -07:00
Alex Dadgar
9f7dcc4ced
Use same binary as Fingerprint in the QemuCompatible function
2015-10-28 10:28:53 -07:00
Diptanu Choudhury
7a15cf0e45
Fix merge conflicts
2015-10-28 08:54:29 -07:00
Kenjiro Nakayama
a79ae3c546
Assign IP when network device is specified
2015-10-28 21:19:06 +09:00
Alex Dadgar
a5a1e45f4b
Get Qemu to fingerprint and test properly on both windows and linux
2015-10-27 15:27:11 -07:00
Diptanu Choudhury
809f360743
Using the Go stdlib APIs to detect IP Address of a device
2015-10-27 14:14:25 -07:00
Diptanu Choudhury
ca99960cc1
Merge pull request #334 from nak3/set-default-net-interface
...
Set default network interface rather than eth0
2015-10-27 11:30:03 -07:00
Kenjiro Nakayama
e688dc3826
Set default network interface rather than eth0 for non-dev mode, and use loopback device for dev mode by default
2015-10-28 02:03:48 +09:00
Abhishek Chanda
70293e9bc8
Run gofmt
2015-10-26 19:24:37 +00:00
Clint
4b0dc2cb39
Merge pull request #288 from hashicorp/f-go-getter
...
Drivers: Use go-getter for artifact retrieval, add artifact support to Exec, Raw Exec drivers
2015-10-26 10:00:29 -05:00
Clint Shryock
343daeb1ea
drivers: Add/Use go-getter to fetch remote binaries
...
Updates Qemu, Java drivers to use go-getter to fetch binaries
Adds remote artifact support for Exec, Raw Exec drivers
2015-10-26 09:40:06 -05:00
Kenjiro Nakayama
fa005d75fa
Set default network interface rather than eth0
2015-10-25 23:32:54 +09:00
Alex Dadgar
b5caa6c5bd
Merge branch 'master' of https://github.com/hashicorp/nomad
2015-10-23 16:23:54 -07:00
Alex Dadgar
d2b23c9143
Format rkt_test
2015-10-23 16:23:43 -07:00
Abhishek Chanda
6ecab13b5d
Cleanup tests
...
- Consolidate checking if non-windows and if qemu is installed
- Fix non-windows check
2015-10-23 14:19:22 -07:00
Jeff Mitchell
959c175ca1
Update the location of cleanhttp
2015-10-22 14:21:07 -04:00
Alex Dadgar
1652e443d8
Merge pull request #319 from hashicorp/cleanhttp
...
Use cleanhttp for truly clean clients and transports.
2015-10-22 09:52:54 -07:00
Jeff Mitchell
cea5fd9081
Use cleanhttp for truly clean clients and transports.
2015-10-22 10:58:23 -04:00
Abhishek Chanda
81da6ce54e
Just put the version as string
2015-10-21 21:09:04 -07:00
Alex Dadgar
c3fbce46b7
Update cgroup CPU to use int comparison not float
2015-10-19 13:33:22 -07:00
Alex Dadgar
489b9a925b
Check for invalid CPU limit for cgroups
2015-10-19 11:28:05 -07:00
Alex Dadgar
fd77180d64
Merge pull request #291 from hashicorp/d-rkt-volume-mounts-blocked
...
Document that Rkt doesn't support task directory mounting
2015-10-16 17:07:53 -07:00
Abhishek Chanda
9e541450c2
Actually append jvm opts to the CLI
...
- Also adds a test
2015-10-16 22:45:16 +00:00
Abhishek Chanda
dfbdb10fcb
No need to pass jvm_options initially
2015-10-16 12:44:43 -07:00
Abhishek Chanda
ab1a8f3532
Some minor style cleanups
2015-10-16 12:44:33 -07:00
Abhishek Chanda
6ab97078e5
Support passing options to the JVM in java driver
...
Closes #292
2015-10-16 12:44:33 -07:00
Alex Dadgar
cadc738fa0
Fix broken test
2015-10-16 10:11:31 -07:00
Alex Dadgar
f185701d6d
Rkt driver clears task environment variables
2015-10-15 18:19:13 -07:00
Alex Dadgar
384a622c59
Add clearing to environment variables
2015-10-15 18:13:05 -07:00
Alex Dadgar
c7fd8993c1
Change two helper functions to be methods
2015-10-15 17:47:14 -07:00
Alex Dadgar
a0d9f8dd33
Remove debug lines
2015-10-15 17:30:40 -07:00
Alex Dadgar
2f6a279d09
Docker alloc dir tests and test fixes
2015-10-15 16:59:08 -07:00
Alex Dadgar
1d15f6eda6
Bind alloc dir and task local dir to docker containers and parse args correctly
2015-10-15 16:40:07 -07:00
Abhishek Chanda
953bd8b53f
Trim extra newline from kernel version
2015-10-15 00:54:21 -07:00
Abhishek Chanda
dbe9fa9f27
Run gofmt on the docker driver
2015-10-13 23:21:16 +00:00
Abhishek Chanda
36dc8a5a18
Do not default to a network mode
...
Makes the driver error out when a wrong or un-supported
network_mode is used
2015-10-13 10:57:21 -07:00
Alex Dadgar
76ec48bfce
Merge pull request #215 from Carevoyance/gce_fingerprint
...
Add GCE fingerprinting functionality
2015-10-12 16:14:32 -07:00
Daniel Imfeld
c9c8dee48e
More syntax cleanup
2015-10-12 17:57:45 -05:00
Daniel Imfeld
9730df8411
Fix old comments and other syntax cleanup
2015-10-12 16:56:33 -05:00
Alex Dadgar
3c7bbc6fd7
Update driver config names for consistency and make the trust_prefix optional
2015-10-12 14:37:56 -07:00
Alex Dadgar
9af8e8d92d
Log starting command
2015-10-12 14:33:19 -07:00
Alex Dadgar
6417c506ad
Capture Rkt logs
2015-10-12 14:33:18 -07:00
Alex Dadgar
cd3135c874
Separate args from exec command; inject environment variables and general cleanup of Rkt driver
2015-10-12 14:33:18 -07:00
Alex Dadgar
a4035050e8
Change Docker/Rkt to set driver to 1 not true for consistency
2015-10-12 13:15:37 -07:00
Alex Dadgar
c56017179f
Fix raw exec test race condition
2015-10-09 20:56:28 -07:00
Daniel Imfeld
9f58d85762
GCE fingerprinter no longer updates network resources
...
It has nothing to add that the generic fingerprinters aren't
finding on their own already.
2015-10-09 18:34:57 -05:00
Alex Dadgar
540007c1a3
Merge pull request #237 from hashicorp/f-raw-exec-driver
...
A raw fork/exec driver that provides no isolation.
2015-10-09 11:30:12 -07:00
Alex Dadgar
db0ba9688d
Better parsing of raw_exec option and updated docs
2015-10-09 11:29:59 -07:00
Daniel Imfeld
cbe349b8b4
Add a few more GCE-specific attributes:
...
* cpu-platform
* scheduling.automatic-restart
* scheduling.on-host-maintenance
* network.NETWORKNAME=true
2015-10-09 09:10:40 -05:00
Chris Bednarski
0d6c75eefb
Merge pull request #225 from hashicorp/b-docker-port
...
Change docker default port to support windows and boot2docker
2015-10-08 23:50:11 -07:00
Alex Dadgar
1570cf1a77
Merge pull request #240 from crosbymichael/wait
...
Reap process after sending kill signal
2015-10-08 17:10:23 -07:00
Michael Crosby
5fee9f37ec
Reap process after sending kill signal
...
Without waiting on the process after sending a kill will cause zombies
and we all know what happens when we have a zombies outbreak.
There are other calls to kill in this file but they are done on the main
process for the task so they should have the wait method called at
sometime in their lifecycle.
2015-10-08 16:54:41 -07:00
Alex Dadgar
cd44cc9ec6
Fix go vet format errors in exec_linux
2015-10-08 16:47:29 -07:00
Alex Dadgar
8130510a5a
Fix AWS Networking Fingerprint tests failing when actually on AWS
2015-10-08 12:49:43 -07:00
Chris Bednarski
a9f1f64199
Use DefaultDockerHost from fsouza upstream
2015-10-08 12:35:19 -07:00
Alex Dadgar
751a17ef0c
Actually add the files
2015-10-08 12:19:39 -07:00
Alex Dadgar
9d1d179deb
Change name from pexec to raw_exec; hamming distance one seemed like a bad idea
2015-10-08 12:19:39 -07:00
Alex Dadgar
dbbaf03b98
Privileged exec driver
2015-10-08 12:19:39 -07:00
Chris Bednarski
be93bbee76
Merge pull request #233 from hashicorp/docs-executor
...
Clarified package documentation for executor
2015-10-08 11:36:11 -07:00
Chris Bednarski
2574655a8c
Insert missing 'may be' and clean up some other formatting / phrasing
2015-10-08 01:38:39 -07:00
Chris Bednarski
96a56d865a
Tweak phrasing to be clearer *why* that's not what we want
2015-10-08 00:07:07 -07:00
Chris Bednarski
e005af18ba
Removed wayward 's'
2015-10-08 00:04:45 -07:00
Chris Bednarski
ab217e6c51
Clarified package documentation for executor in response to #232
2015-10-08 00:02:46 -07:00
Alex Dadgar
1467cb6131
Merge pull request #165 from achanda/rkt
...
Add a driver for rkt
2015-10-07 16:00:21 -07:00
Abhishek Chanda
ba362fae07
Run gofmt
2015-10-07 22:24:16 +00:00
Abhishek Chanda
0e185b6eaf
Add an optional exec parameter to task config
...
This overrides the default exec command in the ACI
2015-10-07 15:15:36 -07:00
Daniel Imfeld
d66e78c5ca
Parse information for all GCE network interface.
...
* No longer setting Device name in the network interface since we can't
match up the info here with real device names.
* Add attributes for all external IPs if more than one exists.
2015-10-07 13:35:20 -05:00
Abhishek Chanda
853cd7fa2d
Use Run for adding trust prefix
...
The trust needs to be added before anything can progress
2015-10-07 11:15:17 -07:00
Daniel Imfeld
70350aead9
Compact tags and attribute reading code.
2015-10-07 12:39:23 -05:00
Ivo Verberk
c6e1b13b51
Fix vet warnings
2015-10-07 12:26:58 +02:00
Daniel Imfeld
dc1c8e5273
TestNetworkFingerprint_notAWS passes even when actually on AWS
2015-10-06 21:21:42 -05:00
Daniel Imfeld
892cad6775
NonXXX tests should pass when actually running in their respective environments.
...
Fixes #224
2015-10-06 21:16:28 -05:00
Chris Bednarski
3c170b70ee
Remove panic -- client is nil when there is an error
2015-10-06 19:09:59 -07:00
Chris Bednarski
a4c3da6c0c
Merge branch 'master' into b-docker-port
2015-10-06 17:54:32 -07:00
Chris Bednarski
ec2e3d4f49
Merge pull request #221 from hashicorp/b-docker-tests-osx
...
Add skip detection for all docker tests
2015-10-06 17:53:47 -07:00
Chris Bednarski
d046858057
Support boot2docker or VM for dev/test
2015-10-06 17:53:05 -07:00
Chris Bednarski
67e3c4a4f5
Merge branch 'master' into b-docker-port
2015-10-06 16:38:49 -07:00
Alex Dadgar
441b2de4fb
Fix alloc_dir error message
2015-10-06 16:38:06 -07:00
Chris Bednarski
88bb01ab6f
Fingerprint test should now behave correctly when the executor is not installed; fix some go vet issues
2015-10-06 16:33:02 -07:00
Chris Bednarski
8cd34d3947
Use docker.NewClient; move dockerClient before it's used
2015-10-06 16:26:31 -07:00
Abhishek Chanda
bd91c51643
Use Start to run commands
...
Run blocks
2015-10-06 15:56:39 -07:00
Abhishek Chanda
ef84902f79
Add prefix to all message logs for rkt driver
2015-10-06 15:56:39 -07:00
Abhishek Chanda
4be849445d
Fix function call
...
Make it skip if rkt is not installed
2015-10-06 15:56:39 -07:00
Abhishek Chanda
99b3660047
Register rkt as a built in driver
2015-10-06 15:56:39 -07:00
Abhishek Chanda
528632da3d
Add missing import and remove unsued one
2015-10-06 15:56:39 -07:00
Abhishek Chanda
612aa69f34
Do not run containers interactively
2015-10-06 15:56:39 -07:00
Abhishek Chanda
578aa89e81
Do not register to the metadata service
2015-10-06 15:56:39 -07:00
Abhishek Chanda
ab6d756dfe
Remove a stray comment
2015-10-06 15:56:39 -07:00
Abhishek Chanda
02eb3659c9
Fix constructing the handle
2015-10-06 15:56:39 -07:00
Abhishek Chanda
b6b7d9e875
Add a test fort he rkt driver
2015-10-06 15:56:39 -07:00
Abhishek Chanda
bcb74acbca
Fix name of prefix
2015-10-06 15:56:39 -07:00
Abhishek Chanda
8efe3e18ba
Add a driver for rkt
...
rkt docs here
https://github.com/coreos/rkt
2015-10-06 15:56:39 -07:00
Alex Dadgar
f40397e6ef
Switch to using BlkioWeight
2015-10-06 15:44:01 -07:00
Chris Bednarski
5e73e746dc
Merge branch 'docker-use-environment' of https://github.com/carlosdp/nomad into b-docker-port
2015-10-06 15:36:06 -07:00
Chris Bednarski
ef3af6996b
Updated Throttle Read/Write to match upstream changes in runc; now takes a list of ThrottleDevice structs instead of an int
2015-10-06 15:31:47 -07:00
Chris Bednarski
42afc2bfeb
This is needed for 1.4.2 compat; not sure what removed it
2015-10-06 00:32:34 -07:00
Chris Bednarski
58217619e3
Add skip detection for all docker tests
2015-10-06 00:27:05 -07:00
Daniel Imfeld
32d5c61779
Consolidate GCEMetadataClient into EnvGCEFingerprint
...
This allows easier reuse of the same client across multiple functions.
2015-10-05 13:13:25 -05:00