

Infrastructure advice - jonesetc

Background: I&#x27;m a new build engineer tasked with a good bit of overhaul. Our build system is going moving to a collection of 8 local servers. I&#x27;m excited for the task, but a bit daunted. What I&#x27;m looking for is a little bit of advice. As a casual reader of HN, I have caught glimpses of some relevant tech, but piecing them together is tricky.<p>Constraints:<p>- All of the build servers must be running Windows.<p>- A master CI server will already be running, so all of these servers will simply be slaves.<p>- Able to wipe clean and start fresh regularly.<p>- They wont all be the same image, some builds require different versions of tools.<p>- May not need all 8 at any given time.<p>Thoughts:<p>- With the different and dynamic nature of the build machines, something like chef, puppet, or salt seems to be best for managing configurations.<p>-- Things that seemed immensely useful in Salt were the windows software repositories[1] and in puppet the packages system.[2] The system for Salt seems more simple, and I didn&#x27;t see anything comparable for Windows with Chef.<p>- Virtualization also seems ideal, but my inexperience makes me wonder if it is worth the trouble.<p>-- If virtualization is a sane approach, what are the options here? OpenStack is the only thing that I know of that (I think) fits this case.<p>- Once the machines are up and running with Windows, I can manage. Getting it to that point is the biggest mystery to me. If I&#x27;m able to use virtualization would I be using something like Vagrant to get the images ready?<p>Thanks for any advice or links provided. I hope this was coherent enough, if not, feel free to ask me for any clarification.<p>[1] http:&#x2F;&#x2F;docs.saltstack.com&#x2F;ref&#x2F;windows-package-manager.html
[2] http:&#x2F;&#x2F;docs.puppetlabs.com&#x2F;windows&#x2F;writing.html#packagepackage
======
jonesetc
Forgot to tag the title as an ask thread, sorry about that.

