13459 Commits

Author SHA1 Message Date
Chris Roberts
26985088e0 Update CHANGELOG 2020-03-10 14:43:31 -07:00
Chris Roberts
9336ca5529
Merge pull request #11363 from chrisroberts/enhancement/solutions
Add support for caching solutions. Remove GEMRC modifications.
2020-03-10 14:42:28 -07:00
Brian Cain
2045a5e04b
Merge pull request #11444 from briancain/ci/only-run-on-code-changes
Only run workflow tests on code paths
2020-03-10 14:38:28 -07:00
Jeff Bonhag
1e6c98f539
Document potential issue with PowerShell progress bar
Since PowerShell subprocesses don't inherit the setting for
`$ProgressPreference`, it's probably a good idea to set this variable to
`SilentlyContinue` globally when using the WinSSH communicator.

This commit also fixes a formatting issues with the list of supported
Windows guests.
2020-03-10 16:13:49 -04:00
Brian Cain
b33dfa968d
Add glob syntax to include files inside path folders 2020-03-10 10:07:49 -07:00
Brian Cain
52bd7ba797
Only run workflow tests on code paths 2020-03-10 09:54:56 -07:00
Brian Cain
59c82f44b6
Merge pull request #11443 from briancain/gh/add-default-issue-option
Add bug report template for Vagrant GitHub issues
2020-03-10 09:49:43 -07:00
Brian Cain
febe17fd1e
Add bug report template for Vagrant GitHub issues 2020-03-10 09:46:31 -07:00
Brian Cain
c202a675b3
Merge pull request #11329 from hashicorp/briancain-patch-1
Update issue templates
2020-03-10 09:39:37 -07:00
Chris Roberts
4272e4e363
Merge pull request #11429 from EnMod/nq.website.update-middleman-hashicorp
[Website] Update middleman-hashicorp to 0.3.44
2020-03-09 16:55:02 -07:00
Chris Roberts
db075e51d1 Update CHANGELOG 2020-03-09 16:54:20 -07:00
Chris Roberts
bee56a09df
Merge pull request #11366 from dmitrivereshchagin/fix-curl-invocation
Fix use of -q option in curl invocation
2020-03-09 16:53:12 -07:00
Chris Roberts
d96f7c4293 Fix documentation disable in generation hooks 2020-03-09 16:52:39 -07:00
Chris Roberts
351e053aeb Start adding test coverage to bundler class 2020-03-09 16:52:39 -07:00
Chris Roberts
18f9de9a59 Update CHANGELOG 2020-03-09 16:49:31 -07:00
Chris Roberts
7d44fef00e
Merge pull request #11428 from chrisroberts/fix/windows-reboot
Catch any StandardError exception while waiting for Windows reboot
2020-03-09 16:48:27 -07:00
Chris Roberts
295ae381d8 Update CHANGELOG 2020-03-09 16:47:45 -07:00
Chris Roberts
193eb11277
Merge pull request #11427 from chrisroberts/fix/auto-hook-creation
Update dynamic action hooks implementation
2020-03-09 16:46:27 -07:00
Chris Roberts
dbec9ae68c Clean specs on public key removal 2020-03-09 15:45:04 -07:00
Chris Roberts
d595c03732 Fix test coverage on windows public key cap 2020-03-09 15:07:17 -07:00
Jeff Bonhag
247903f962
Update CHANGELOG 2020-03-09 16:04:04 -04:00
Jeff Bonhag
1678cfa757
Fix #11439: Quote each exported directory (#11441)
This commit changes the Darwin NFS template for /etc/exports to put each
exported directory in quotes.

This fixes an issue with directory names that have spaces in them.
Quotes were chosen (rather than escaping the spaces) in order to match
the template for Linux NFS exports.
2020-03-09 16:02:03 -04:00
Alexzander thunder Shevchenko
70e7d09718 Alpine Ansible Capability tests 2020-03-07 16:32:28 +03:00
Alexzander thunder Shevchenko
e3461d354b python3 setup
Python 3 setup for any mode;
Move python setup to separate method;
2020-03-07 16:31:55 +03:00
Brian Cain
7b43402b3c
Merge pull request #11433 from meitar/patch-1
Document ability to specify which host-only network.
2020-03-06 15:54:24 -08:00
Meitar M
9f0d4ef074
Actually remove all references to symbol syntax. 2020-03-06 18:35:55 -05:00
Meitar M
945e623f6d
Remove referencese to symbol syntax. 2020-03-06 17:46:04 -05:00
Meitar M
9951656cb6
Fix typo and use keyword argument syntax for consistency. 2020-03-06 17:44:51 -05:00
Meitar M
0361f9aa72
Document ability to specify which host-only network.
Although it has been possible to specify a specific VirtualBox host-only network
to attach a machine's NIC to, this was never mentioned by the documentation in
the VirtualBox provider's networking section. I had to spelunk through the issue
tracker to find an example of this.

This patch adds a code example along with a short description of the ability in
human language prose, and a link to the relevant section in the VirtualBox User
Manual about "Host-Only Networking."
2020-03-05 21:22:09 -05:00
Chris Roberts
7c2083d5da Update how delayed actions are stored to avoid accessing uninitialized value 2020-03-05 13:25:57 -08:00
Chris Roberts
f9adc28e3d Update documentation to reflect changes in winssh communicator 2020-03-04 16:35:19 -08:00
Chris Roberts
ec9d23a531 Update public key cap to use powershell 2020-03-04 15:08:03 -08:00
Chris Roberts
852c549886 Force powershell on connection for consistent behavior
This patches the connection instances generated for the winssh
communicator so when a command is executed it is always run
with powershell. This prevents inconsistencies with argument
handling based on what the default shell is set to on the remote
side.

Since powershell is the default, environment variable template
only needs to be set for powershell style. If the shell setting
is updated to `cmd`, the command will be properly prefixed.

Default shell has been updated to powershell, to prevent extraneous
wrapping where it's not required. The `#ready?` check has also been
updated to use a constant value, which is overridden within winssh
as a blank command is invalid.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
9a26c123b9 Use SFTP for Windows file transfer
SFTP is more reliable than SCP when dealing with unknown sshd
configurations on the server side. It also provides a convenient
facility for creating remote directories, so we can remove the
Windows-specific `#create_remote_directory` method.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
b2aa16dc78 Set remote script extension from local script extension 2020-03-04 15:08:03 -08:00
Jeff Bonhag
b6e8262bf2 Perform scp commands with powershell.exe
This commit includes a monkey patch for Net::SCP#start_command so that
PowerShell commands are escaped correctly.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
85f0fce57a Allow #provision_winrm to modify upload_path
We need to ensure that Windows files have an extension when provisioning
via WinRM.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
d1ad67e333 No need to explicitly set UNSET_VALUE 2020-03-04 15:08:03 -08:00
Jeff Bonhag
4b7d55afaa Fixup paths to work with server-side Bash
This commit normalizes our Windows paths to use `/` instead of `\`.
These paths are compatible with both cmd and PowerShell, and are
required if the server-side shell is set to Bash.

The OpenSSH server executes all commands inside a default login shell
which cannot be controlled by the Vagrant configuration. So what ends up
getting executed on the server side looks something like this:

    "c:\\program files\\git\\bin\\bash.exe" -c "C:\\Windows\\Temp\\vagrant-ssh20200130-41670-1w5nsjy.bat"

By flipping the direction of the directory slashes, we end up with:

    "c:\\program files\\git\\bin\\bash.exe" -c "C:/Windows/Temp/vagrant-ssh20200130-43415-f1d5n2.bat"

This works whether the server-side shell is set to cmd, powershell, or
bash.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
fcd07e3a37 Switch to PowerShell for create_remote_directory 2020-03-04 15:08:03 -08:00
Jeff Bonhag
3b5443a5e7 We are back to creating config.winssh_upload_directory 2020-03-04 15:08:03 -08:00
Jeff Bonhag
8affdd24b6 Wire up inline command for popular Windows shells
* Remove connection between shell provisioner directory config and WinSSH
directory config because these should remain separate.
2020-03-04 15:08:03 -08:00
Jeff Bonhag
ee486203d1 Introduce force_raw option 2020-03-04 15:08:03 -08:00
Jeff Bonhag
e829902e0a Add missing method to test double 2020-03-04 15:08:03 -08:00
Jeff Bonhag
df7c11a3a7 Fix issues with Windows SSH provisioner
Windows commands that run over SSH are wrapped in a script that writes a
special marker to the two output streams (stdout and stderr).  This
allows Vagrant to consume the output streams.

Unfortunately, this leads to a sort of chicken-and-egg problem where no
commands can be run before a wrapper script exists. For example, you
can't make a destination directory to upload the wrapper script without
first creating a wrapper script to make the directory. :)

This commit changes the behavior of the WinSSH communicator to assume
that the destination directory already exists for provisioning scripts.

It also moves the default `upload_path` from the shell provisioner
config so we can have OS-specific defaults.

Finally, it introduces a Windows-specific #upload method which will
properly use a Windows path separator on a non-Windows host.
2020-03-04 15:08:03 -08:00
Noel Quiles
3b1c702744
Update middleman-hashicorp to 0.3.44 2020-03-03 20:10:38 -05:00
Chris Roberts
6f707c829d Catch any StandardError exception while waiting for Windows reboot
This prevents any unexpected connection related error from breaking
the wait loop while windows reboots. If an underlying problem unrelated
to the guest is causing exceptions, the exception will still be raised
to the user, simply after the loop has exceeded the defined maximum
wait time.

Fixes #11238
2020-03-03 17:02:04 -08:00
Chris Roberts
eba18091f9
Merge pull request #11391 from chrisroberts/fix/winrm-server-retry
Update exit code value used for retry check - ArgumentException
2020-03-03 16:26:33 -08:00
Chris Roberts
89aad950ca
Merge pull request #11422 from Murathe/patch-1
Update index.html.md
2020-03-03 16:25:42 -08:00
Chris Roberts
3686aed72d Add test coverage for dynamic action hook support 2020-03-03 16:23:31 -08:00