Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

In trying to keep VM images consistent across our development team we need to ensure that SharePoint groups/users/permissions/audiences etc stay in sync as part of our CI process.

Can anyone suggest a good approach to this? I was thinking scripts that use stsadm to update the SharePoint sites would be a good idea, similar to what we do for non-SharePoint database updates.

share|improve this question
add comment

3 Answers

Copying VHD and then changing its UUID using CMD will let you copy everything in that virtual machine, not sure if this technique was available at that time.

EDIT

I miss understood your question, I guess scripting is the best way, but copying VHD can help too but is long process and depends on requirements.

Hope it helps.

share|improve this answer
add comment

Scripting is your friend, I have done it before where the dev VM images was a master (for tools, and patches) and was refreshed regularly (I aimed for every sprint) with the SharePoint install being automated.

Ben Curry and Gary Lapointe did some good work around scripting 2007 builds, which we used. But also I created a custom setup exe that would do a lot of the hard work like site provisioning, data population, additonal SQL data stores etc.

In order to make this work you really need team buy in, and also be willing to dedicate time. It pays off massively, especially on big teams with new resources and helping with pair programming..

For 2010 there is a lot of great info

http://blogs.msdn.com/ekraus/archive/2009/11/06/sharepoint-2010-provisioning-a-new-farm-with-powershell.aspx http://blogs.msdn.com/ekraus/archive/2009/11/20/automated-sharepoint-2010-install-with-powershell.aspx

And Zach has some great info here http://sharepoint.microsoft.com/blogs/zach/default.aspx

share|improve this answer
add comment

I know that MVP Ben Robb did some Powershell scripting that every week would take integration test server (or similar) and copy the latest snapshot to the developer machines, to insure that the dev machines always matches the environment that they develop up against.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.