Commit Graph

497 Commits

Author SHA1 Message Date
Olivier Gambier 11fd9648ac Merge pull request #1639 from feelobot/validate-ec2-vpc-id-matches-subnet-id
Use SDK to Validate VpcID with SubnetId
2015-10-22 09:52:18 -07:00
Chris Abernethy 6a7c8c2a25 Additional validation on virtualbox-hostonly-cidr
Check that the CIDR provided for a virtualbox host only CIDR is specified as a host IP and netmask, e.g., 192.168.100.1/24, and not a network IP and netmask, e.g., 192.168.100.0/24. This will help prevent confusion like #1383

Signed-off-by: Chris Abernethy <cabernet@chrisabernethy.com>

Signed-off-by: David Gageot <david@gageot.net>
2015-10-21 20:46:13 +02:00
Nathan LeClaire 56acdcf5ae Merge pull request #2031 from hairyhenderson/check-vtx-darwin-1983
Adding support for darwin to IsVTXDisabled
2015-10-21 11:26:28 -07:00
David Gageot 38b7fe5013 FIX #2020 Better error when vboxmanage is missing
Signed-off-by: David Gageot <david@gageot.net>
2015-10-21 09:35:33 +02:00
Dave Henderson e2856e36f4 Adding support for darwin to IsVTXDisabled
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
2015-10-20 21:20:40 -04:00
feelobot 6b7628a175 Use SDK to Validate VpcID with SubnetId
Signed-off-by: feelobot <felix.a.rod@gmail.com>
2015-10-20 12:37:33 -07:00
David Gageot 94361315a8 Add tests to virtualbox driver
Signed-off-by: David Gageot <david@gageot.net>
2015-10-20 19:08:18 +02:00
David Gageot 4a33fabe8b Check that VT-X/AMD-v is enabled
Signed-off-by: David Gageot <david@gageot.net>
2015-10-20 09:56:43 +02:00
Nathan LeClaire 447d262c06 Merge pull request #1939 from gmacario/fix-issue-1692
fix IPV6NetworkMaskPrefixLength value parsing
2015-10-19 14:17:51 -07:00
Nathan LeClaire b818d3f7e8 Merge pull request #2000 from hairyhenderson/fix-non-logf-method-calls
💄Fix log.* method calls which meant to be log.*f
2015-10-19 13:04:33 -07:00
David Arnold ab79c4d9c1 Close #2001 / consistent hyperv internal naming
Signed-off-by: David Arnold <dar@devco.co>
2015-10-18 11:53:39 -05:00
Dave Henderson 2a6e3dbf40 Fix log.* method calls which meant to be log.*f
Stuff like `log.Debug("foo bar: %s", baz)` really wants to be
`log.Debugf("foo bar: %s", baz)`...

Signed-off-by: Dave Henderson <dhenderson@gmail.com>
2015-10-17 15:59:25 -04:00
Nathan LeClaire c8edb33ecd Move towards using external binaries / RPC plugins
- First RPC steps

- Work on some flaws in RPC model

- Remove unused TLS settings from Engine and Swarm options

- Add code to correctly encode data over the network

- Add client driver for RPC

- Rename server driver file

- Start to make marshal make sense

- Fix silly RPC method args and add client

- Fix some issues with RPC calls, and marshaling

- Simplify plugin main.go

- Move towards 100% plugin in CLI

- Ensure that plugin servers are cleaned up properly

- Make flag parsing for driver flags work properly

Includes some work carried from @dmp42 updating the build process and
tests to use the new method.

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-10-16 16:34:56 -07:00
Nathan LeClaire 600ffb7d20 Merge pull request #1968 from cmouttet/1967-openstack_InstanceIpAddress_default
add default AddressType: Fixed
2015-10-15 14:19:54 -07:00
Olivier Gambier 4c12502605 Merge pull request #1977 from dgageot/1972-fix-google-driver-tags-no-tests
Fix broken google driver
2015-10-14 10:27:42 -07:00
David Gageot 264ca68902 Fix #1972 Google drive is broken because of tags
Signed-off-by: David Gageot <david@gageot.net>
2015-10-14 09:25:44 +02:00
Christian Mouttet e256702c8c add default AddressType: Fixed
Signed-off-by: Christian Mouttet <cmouttet@gmail.com>
2015-10-10 17:19:45 +02:00
Marcel Harkema db9363ef46 Fix config drive support in VMware Fusion driver
Signed-off-by: Marcel Harkema <marcel@harkema.name>
2015-10-10 16:10:11 +02:00
Guillaume Giamarchi 6829837fd5 Add environment varibles for OpenStack flags
Some flags for the OpenStack driver did not have
a corresponding environment variable.

Among others, this is needed to run bats core tests
with the OpenStack driver.

Signed-off-by: Guillaume Giamarchi <guillaume.giamarchi@gmail.com>
2015-10-09 15:16:00 +02:00
Olivier Gambier 53658e8932 Merge pull request #1933 from hironobu-s/openstack-ip-version
Add --openstack-ip-version option
2015-10-08 16:26:08 -07:00
Hironobu Saitoh f659e817b4 Add --openstack-ip-version option
This option allows users to specify IP version.

Signed-off-by: Hironobu Saitoh <hiro@hironobu.org>
2015-10-09 07:29:48 +09:00
Nathan LeClaire 2399bfe578 Merge pull request #1952 from nathanleclaire/vbox_version
Move VBox detection to Precreate and print version
2015-10-08 11:01:31 -07:00
Nathan LeClaire 571712122d Merge pull request #1909 from skatsuta/saved-host-active
Change 'ls' to not report 'Saved' hosts as active when $DOCKER_HOST is not set
2015-10-08 11:00:45 -07:00
Soshi Katsuta 5af32bcdd3 commands: make `ls` to not report saved hosts to be active when $DOCKER_HOST is not set
Signed-off-by: Soshi Katsuta <soshi.katsuta@gmail.com>
2015-10-09 00:59:33 +09:00
Nathan LeClaire f0ebeab041 Move VBox detection to Precreate and print version
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-10-07 20:41:26 -07:00
Nathan LeClaire 94c551b964 Fix broken --storage-path flag
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-10-07 13:31:00 -07:00
Gianpaolo Macario b01442c6bb fix IPV6NetworkMaskPrefixLength value parsing #1692
Adapted from 941c70cb01

Signed-off-by: Gianpaolo Macario <gmacario@gmail.com>
2015-10-06 22:43:55 +02:00
Alexey Grachov 2992237b03 Additional info message while waiting for IP address.
It takes a lot of time to assign the IP to droplet, so informing user
about this hang looks like good idea.

Signed-off-by: Alexey Grachov <grachov.alexey@gmail.com>
2015-09-30 12:00:08 +03:00
Evan Hazlett c4cd2385bf Merge pull request #1685 from nathanleclaire/daemon_wait_over_ssh
Fix Docker daemon wait
2015-09-24 16:56:37 -04:00
Nathan LeClaire bee5cb4768 Merge pull request #1894 from dmp42/7-vbox
Fix exec error bubbling
2015-09-23 16:43:23 -07:00
Nathan LeClaire 9453df4859 Fix Docker daemon wait
Also, a few various cleanups are bundled:

1. Only call GetDriver() once to get the object in provision/utils.go
2. SSH command wrapper will return the error and let the consumer decide
   what to do with it instead of bailing automatically on non-255

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-09-23 15:19:25 -07:00
Nathan LeClaire b5927f10c4 Make libmachine usable by outside world
- Clear out some cruft tightly coupling libmachine to filestore

- Comment out drivers other than virtualbox for now

- Change way too many things

- Mostly, break out the code to be more modular.

- Destroy all traces of "provider" in its current form.  It will be
brought back as something more sensible, instead of something which
overlaps in function with both Host and Store.

- Fix mis-managed config passthru

- Remove a few instances of state stored in env vars

- This should be explicitly communicated in Go-land, not through the
shell.

- Rename "store" module to "persist"

- This is done mostly to avoid confusion about the fact that a concrete
instance of a "Store" interface is oftentimes referred to as "store" in
the code.

- Rip out repetitive antipattern for getting store

- This replaces the previous repetive idiom for getting the cert info, and
consequently the store, with a much less repetitive idiom.

- Also, some redundant methods in commands.go for accessing hosts have
either been simplified or removed entirely.

- First steps towards fixing up tests

- Test progress continues

- Replace unit tests with integration tests

- MAKE ALL UNIT TESTS PASS YAY

- Add helper test files

- Don't write to disk in libmachine/host

- Heh.. coverage check strikes again

- Fix remove code

- Move cert code around

- Continued progress: simplify Driver

- Fixups and make creation work with new model

- Move drivers module inside of libmachine

- Move ssh module inside of libmachine

- Move state module to libmachine

- Move utils module to libmachine

- Move version module to libmachine

- Move log module to libmachine

- Modify some constructor methods around

- Change Travis build dep structure

- Boring gofmt fix

- Add version module

- Move NewHost to store

- Update some boring cert path infos to make API easier to use

- Fix up some issues around the new model

- Clean up some cert path stuff

- Don't use shady functions to get store path :D

- Continue artifact work

- Fix silly machines dir bug

- Continue fixing silly path issues

- Change up output of vbm a bit

- Continue work to make example go

- Change output a little more

- Last changes needed to make create finish properly

- Fix config.go to use libmachine

- Cut down code duplication and make both methods work with libmachine

- Add pluggable logging implementation

- Return error when machine already in desired state

- Update example to show log method

- Fix file:// bug

- Fix Swarm defaults

- Remove unused TLS settings from Engine and Swarm options

- Remove spurious error

- Correct bug detecting if migration was performed

- Fix compilation errors from tests

- Fix most of remaining test issues

- Fix final silly bug in tests

- Remove extraneous debug code

- Add -race to test command

- Appease the gofmt

- Appease the generate coverage

- Making executive decision to remove Travis coverage check

In the early days I thought this would be a good idea because it would
encourage people to write tests in case they added a new module.  Well,
in fact it has just turned into a giant nuisance and made refactoring
work like this even more difficult.

- Move Get to Load
- Move HostListItem code to CLI

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-09-23 12:30:15 -07:00
Olivier Gambier 144b94c251 Fix error reporting on VBoxManage not found
Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-09-22 21:01:38 -07:00
Nathan LeClaire 3b85723982 Fix failing case creating host only interface
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-09-22 20:02:14 -07:00
Nathan LeClaire fe5b5cf86d Add tests for host only network retrieval feature
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-09-22 16:29:25 -07:00
Ron Williams 0b5f4c8454 Handle bad netmask returned by virtualbox after hostonlyif creation. Fixes #1843
Signed-off-by: Ron Williams <ron.a.williams@gmail.com>
2015-09-21 14:09:29 -07:00
Olivier Gambier 5fbfbe1ff7 Rehauled build system and integration testing
- USE_CONTAINER allow to seamlessly run targets inside or outside containers
- all build calls have been harmonized, honoring the same env variables
- contributing doc has been streamlined according to that
- kill the distinction between remote and local docker builds
- got rid of some of the byzantine calls in various asorted scripts
- support for static build, debug builds, verbose

Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-09-18 15:47:00 -07:00
Nathan LeClaire b91c117238 Merge pull request #1816 from frapposelli/fusion-fuse-mount
Adding FUSE HGFS mount option
2015-09-16 16:07:31 -07:00
Nathan LeClaire 5e698f3d95 Merge pull request #1631 from dgageot/features/startstop
FIX #676 - Support Start/Stop GCE instance
2015-09-15 11:54:51 -07:00
Nathan LeClaire 207a647a40 Merge pull request #1633 from dgageot/features/tags
FIX #1297 - Support additional tags on GCE
2015-09-15 11:54:39 -07:00
David Gageot 66078be1e5 FIX #1297 - Support additional tags on GCE
Signed-off-by: David Gageot <david@gageot.net>
2015-09-15 06:56:52 +02:00
David Gageot bb45f83319 FIX #676 - Support Start/Stop GCE instance
Signed-off-by: David Gageot <david@gageot.net>
2015-09-15 06:54:53 +02:00
Matt McNaughton a0b9d179b1 Fix Go Vet errors
This commit makes no changes to code execution, but rather resolves some
`go vet` errors, the majority of which relate to `fatal` being used
instead of `fatalf` during testing.

Signed-off-by: Matt McNaughton <mattjmcnaughton@gmail.com>
2015-09-14 22:37:16 -04:00
Nathan LeClaire b52fa33056 Merge pull request #1479 from mschygulla/enhanced-vmwarefusion-driver
[Enhancement] VMware Fusion driver
2015-09-11 14:26:30 -07:00
Nathan LeClaire 7c4d0a5da7 Merge pull request #1642 from ddaze/openstack-retry
openstack: New machine active timeout parameter
2015-09-11 14:25:11 -07:00
Nathan LeClaire 5ba35ac2de Merge pull request #1812 from jclagache/master
1434-Added homebrew cask support for VMware Fusion
2015-09-11 14:21:39 -07:00
Nathan LeClaire 1b0042e69b Merge pull request #1836 from dmp42/2-fmt
Fmt fixes
2015-09-10 19:07:06 -07:00
Olivier Gambier 9d60bb7c73 Fmt fixes
Signed-off-by: Olivier Gambier <viapanda@gmail.com>
2015-09-10 18:27:13 -07:00
Nathan LeClaire 0fb4991068 Merge pull request #1796 from rikdev/powershell-no-profile
Disabled load PowerShell profile when start the powershell.exe
2015-09-10 15:19:47 -07:00
jclagache ebbc45abea 1434-Added homebrew cask support for VMware Fusion
This aims to lookup for Vmware Fusion required binaries (vmrun and vmware-vdiskmanager) in the system path first before falling back in the default Vmware Fusion installing path.
Thereby, the vmwarefusion docker-machine driver can now be used even if Vmware Fusion is not installed in its default location (with brew cask for example).
Signed-off-by: Jean-Christophe Lagache <jclagache@gmail.com>
2015-09-08 13:39:56 +02:00