Commit Graph

11939 Commits

Author SHA1 Message Date
Chris Roberts 1224622387 Remove container inspection caching and Exception rescue
Container inspection is caching data on first lookup. This will
result in incorrect data being returned on subsequent lookups if
a different `cid` value is provided. Also removed rescue of
the `Exception` class as this generally should never happen; rescue
of StandardError will be enough.
2019-03-19 11:44:22 -07:00
Chris Roberts c251e090b3 Remove Mutex for synchronization. Environment#lock satisfies requirement. 2019-03-19 11:44:02 -07:00
Brian Cain 6664936c0b
Make ignored vagrant network options a constant 2019-03-12 10:40:58 -07:00
Brian Cain 5ed5868067
Inspect networks before creating new ones
This commit updates the behavior of how the docker provider creates new
docker networks. It looks at each existing network to see if the
requested subnet has already been configured in the docker engine. If
so, Vagrant will use that network rather than creating a new one. This
includes networks not created by Vagrant. Vagrant will not clean up
these networks if created outside of Vagrant.
2019-03-12 10:36:57 -07:00
Brian Cain 2c25cf8d01
Add note about network creation in docker provider 2019-03-05 13:46:05 -08:00
Brian Cain cedf5aff17
Add note about link legacy flag in connect 2019-03-05 11:23:23 -08:00
Brian Cain 93f833d2b3
Add docs page about networking with the docker provider 2019-03-05 11:18:35 -08:00
Brian Cain b78dada2c7
Fix docker driver handling cli flags
Make opts argument set to nil instead of splat to make Travis Ruby 2.3
happy
2019-03-05 10:57:05 -08:00
Brian Cain 2be0bc2d81
Add unit tests for docker network actions 2019-03-05 09:49:15 -08:00
Brian Cain cccbedf4ce
Update how docker network handles processing options to cli arguments
Add an "ignored option" array rather than a big if-statement expression
2019-03-04 14:19:40 -08:00
Brian Cain 953a380371
Fix how Vagrant assigns cli arguments for the create command
This commit inlines the flag assignments so that arguments are properly
assigned to flags rather than arguments to the subcommand.
2019-03-04 13:44:21 -08:00
Brian Cain efb9fd7b65
Move strings into locales file 2019-03-04 13:33:08 -08:00
Brian Cain a1b48ed1bb
Raise proper class if invalid options given for docker network 2019-03-04 13:17:14 -08:00
Brian Cain 0b28580105
Move out cli argument generation to own function 2019-03-04 10:33:24 -08:00
Brian Cain 81fa7036be
Rename cli argument method 2019-03-04 10:28:49 -08:00
Brian Cain 6c7c74be5a
Fix if statement from `=` to `==` 2019-03-04 10:28:05 -08:00
Brian Cain 4080f9e64d
Log warning if docker network inspect fails to return json 2019-03-04 10:25:10 -08:00
Brian Cain 5adffb608d
Only allow private_network for docker network provider 2019-03-01 16:34:43 -08:00
Brian Cain 29696b0f73
Allow for ipv6 networks in docker 2019-03-01 16:20:16 -08:00
Brian Cain 000457a012
Update how docker network provider creates networks
This commit updates the docker network provider to only create networks
by subnet rather than per-container.
2019-03-01 16:07:53 -08:00
Brian Cain c20de9044d
Log information if unsupported docker network option is provided 2019-03-01 08:34:43 -08:00
Brian Cain 4a0f1a0a33
Update docker network action to auto-generate cli flags
This commit updates the docker network behavior to auto-generate the
docker network command flags from Vagrants network config option.
2019-03-01 08:34:43 -08:00
Brian Cain b5a092397f
Add new function for handling vagrant options to docker network cli
flags
2019-03-01 08:34:43 -08:00
Brian Cain ba2a1224e0
Update driver to include network tests 2019-03-01 08:34:43 -08:00
Brian Cain dc5f8c66f2
Add todo comment for future fixup 2019-03-01 08:34:43 -08:00
Brian Cain 4dc5f7c330
Add basic ability to configure some networks for containers 2019-03-01 08:34:43 -08:00
Brian Cain e860c7709d
Begin to setup and configure docker networks for containers 2019-03-01 08:34:43 -08:00
Brian Cain 8013d8d5ef
Move around Network setup action for docker provider 2019-03-01 08:34:43 -08:00
Brian Cain 63ba0f9964
Add DestroyNetwork action to docker provider 2019-03-01 08:34:43 -08:00
Brian Cain 349cc5ddac
Add placeholder network destroy action for docker 2019-03-01 08:34:43 -08:00
Brian Cain a336aa687c
Add logger and start to iterate over networks in config 2019-03-01 08:34:43 -08:00
Brian Cain bed653eeb4
Autoload and use Network action on up 2019-03-01 08:34:43 -08:00
Brian Cain 67ea15126d
Make opts var optional for docker driver methods 2019-03-01 08:34:43 -08:00
Brian Cain 627251a307
Add basic docker network action 2019-03-01 08:34:43 -08:00
Brian Cain ec2e0380ee
Add basic docker driver methods for `docker network` subcommand 2019-03-01 08:34:43 -08:00
Chris Roberts b4d87e6ce9 Update version for dev 2.2.5.dev 2019-02-27 07:38:22 -08:00
Chris Roberts 521d3fa20f Update download version to 2.2.4 2019-02-27 07:37:03 -08:00
Chris Roberts 25e11650c3 Release v2.2.4 2019-02-27 07:35:56 -08:00
Chris Roberts ddd1e5f8c2 Update CHANGELOG 2019-02-26 14:11:46 -08:00
Chris Roberts 927364652f
Merge pull request #10595 from danowar2k/master
- FIX for #10594
2019-02-26 14:09:31 -08:00
Chris Roberts db0f215d42 Update CHANGELOG 2019-02-26 13:32:22 -08:00
Brian Cain a5f5d533bf
Update CHANGELOG 2019-02-26 13:30:37 -08:00
Brian Cain 1592c0c216
Merge pull request #10690 from briancain/cleanup-rsync-tmp-folders
Cleanup rsync tmp folders
2019-02-26 13:25:34 -08:00
Chris Roberts 6beb736190
Merge pull request #10698 from chrisroberts/f-scp
Update communicator upload behavior to handle `/.` path directives
2019-02-26 13:24:40 -08:00
Brian Cain 3b540e502f
Force removal of rsync tmp dir
Force delete entry to prevent any potentail failures when trying to
clean up the tmp dir from rsync
2019-02-26 09:08:56 -08:00
Chris Roberts e2b6a6645c Always ensure remote destination directory exists 2019-02-26 08:54:49 -08:00
Chris Roberts 6b105d704d Update communicator upload behavior to handle `/.` path directives
This update was prompted by updates in openssh to the scp behavior
making source directory paths suffixed with `.` no longer valid
resulting in errors on upload. The upload implementation within
the ssh communicator has been updated to retain the existing
behavior.

Included in this update is modifications to the winrm communicator
so the upload functionality matches that of the ssh communicator
respecting the trailing `.` behavior on source paths. With the
communicators updated to properly handle the paths, the file
provisioner was also updated to simply apply previously defined
path update rules only.

Fixes #10675
2019-02-26 08:02:09 -08:00
Brian Cain 401a571642
Add windows platform test for ensuring tmp file does not exist 2019-02-22 12:44:46 -08:00
Brian Cain 45ca16ffd5
Add rsync helper test for linux machines 2019-02-22 12:38:23 -08:00
Andrew Eikum 7517faa9ee
Remove tmpdir after rsync completes 2019-02-22 12:24:13 -08:00