Welcome to Mi-DevEnv
End to end walkthrough available on YouTube. See it now!
When your project's build phase gets underway, developers need to start writing code quickly. There are several barriers, the most obvious being the lack of a clean stable development environment, with all the tools and software required to do the job. Development teams have to create environments for each developer, and most do this manually, clicking next, next, next through each product installation.
How hard can it be?
How long would it take to create a virtual machine with Visual Studio, Dynamics CRM, SharePoint, SQL Server, Microsoft Office, and lets throw in creation of a stand alone Domain Controller. Developers typically say a couple of days and infrastructure people say a week, as they prefer to create build-guides first.
To try and save time people are tempted to use or even copy a virtual machine they have used on a previous project, and after all...
What could possibly go wrong?
Using a virtual machine from a past project means it could have all sorts of stuff on it that would pollute your new project. Creating a template machine with all the tools on and giving a copy of it to each developer really hurts, as network clashes will occur
Shake and Bake
Mi-DevEnv will let you automatically create rich and complex development environments in only a few hours, from creating the initial virtual machine, to populating it with all the required development tools and software packages.
The objective is to let you complete major phases of an environment build by typing a single instruction, e.g:
New-Machine -Verbose -MachineName MdeDc -DriveTemplate YE-2008R2 -Packages DC2008R2
New-Machine -MachineName MdeApps -MemoryMB 4096 -DriveTemplate YE-2008R2 -Packages "WS,SQL2012,CRM2011,VS2012U,Office2010"
The above instructions first create a stand-alone domain controller, then create a second sever that becomes a web server with SQL, CRM, Visual Studio and office all installed.
This is where our journey begins...
With Release Candidate 1 the system is reaching stability and can now install Domain Controll, Web Server, SQL Server, CRM, Visual Studio and Microsoft Office, unattended.
Currently the code base targets HYPER-V, although Mi-DevEnv is abstracted from the virtualisation layer. This means I could use some community support to add VMWARE compatibility.
The AutoSPInstaller needs reintegrating into the process (fantastic project, check it out). Past attempts were highly successful but meant hacking the install files directory to insert AutoSPInstaller scripts which were modified to work with Mi-DevEnv. Not sure how to resolve this, not hard, but need a good strategy.
We need to build more installers for development tools and products, such as Resharper, K2 Workflow and other developer tools and products used in development environments. More community support on this would be appreciated.