Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chef/ChefClient provisioner fixes, Linux/OS X host OS fixes #6

Closed
wants to merge 10 commits into from

Conversation

leftathome
Copy link

My organization had a need to spawn Windows 2008 VMs on Linux and OS X guests and provision them against a Chef server. I extended vagrant-windows to provide this functionality. It's not perfect but I'm sure the added functionality will be useful for someone.

The distro-finding dispatch logic should also now work, so if someone wants/needs to add behavior specific to a particular flavor/vintage of Windows, the groundwork is there.

Unfortunately, none of this work is going to be compatible with Vagrant 1.1 (nor, for that matter, is the vagrant-windows gem), so at some point all of this will have to be converted to 1.1's plugin architecture.

(Maybe someone who really wants all this to work in VMware will take it on?)

pmorton and others added 8 commits July 25, 2012 11:27
Updated so that the configurable timeout value is honored on the WinRM call
…t error, Hack WinRb#4 by calling net use to "warm-up" virtual box"
…) and distro_dispatch (which is stubbed) ...

Bumped version to reflect local changes.

Converted distro_dispatch to use the WMI method.  Converted renames to use an explicit cmd executor.

Added a convenience function for running WMI queries and retrieving the responses.

Force backslashes in uploaded files on target.

New monkey patches for Chef and ChefClient provisioners.
These use Windows-specific behavior (concerning paths and upload behavior) if you specify a :windows guest.
…e Windows2008R2 / Windows2003 classes inherit from it...

This is hopefully enough work to allow future contributors to customize Vagrant's guest behavior for other Windows versions.

Bumped version.
… to work, FIXME ... )

Modified config.provisioning_path to always point to C:\chef or /etc/chef depending on platform.  Version bump to 0.1.2.

Trimming out cyan-colored 'winrm' prefix on output as it's really messing with my log warning parser thing, man.
…log level in client.rb to :debug.

It's back to :warn, which is Vagrant's default behavior.  Please note that passing in your own debug level doesn't seem to work right now.  (Sorry.)
@@ -118,16 +117,19 @@ def h
@highline ||= HighLine.new
end

# this breaks a Jenkins plugin that scans for log events, so we're nerfing it.
def print_data(data, color = :cyan)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should kill the color options.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The color options were inherited from upstream, but I can't remember whether it was from vagrant-windows or vagrant itself.

Either way, I totally agree with you. :D

@pmorton
Copy link
Contributor

pmorton commented May 9, 2013

@leftathome We have since moved on and made the decision not to support windows 2003 and have fixed various bugs that this pull request addresses. Thanks much for your time and energy, it has helped us fix a number of bugs with a scalpel.

@pmorton pmorton closed this May 9, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants