Tuesday, April 29, 2008

Fast Installation of Fabulous 40 templates

Over some period of time I’ve got tired of installing Fab. 40 templates solutions over and over again.

The time had come to write a script that allows for faster installation. This script will only install solutions associated with Fab 40 package, it’s up to you to upload site templates into site template gallery.

Bob Fox has graciously provided space on his server for this script, Thanks Bob!

Here is how to use this script:

1. Download Fabulous 40 templates from this location.

2. Run the downloaded file, this action will unzip all files into specified location

3. Download the script (right mouse click -> Save Target As), you can probably copy and paste it into notepad from here, but there is a big chance you will have to struggle with some hidden characters and the script will have hiccups J

4. Open this file in notepad and modify the first line


Change C:\Apps\ to the location where you unzipped your Fab 40 files to (keep the last slash)

5. Save the script with .cmd extension instead of txt

6. Run it from your server

This script will keep your server busy for a while, you might get “Service Unavailable” until the script stops and all timer jobs are finished (which is usually not longer than couple of minutes), but if you have users in your environment, run it during off-hours. This will install all solutions in one shot and globally deploy them immediately.

In your Central Administration, under solutions management check for all 20 solutions.

As the last step upload all .stp files into your site templates gallery.

Here is the source for the script, but you can download it here



@SET STSADM="c:\program files\common files\microsoft shared\web server extensions\12\bin\stsadm.exe"

Echo Adding Solution ApplicationTemplateCore.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ApplicationTemplateCore.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ApplicationTemplateCore.wsp -allowgacdeployment -immediate -force

%STSADM% -o copyappbincontent

Echo Adding Solution AbsenceVacationSchedule.wsp

%STSADM% -o addsolution -filename %SLNDirectory%AbsenceVacationSchedule.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name AbsenceVacationSchedule.wsp -allowgacdeployment -immediate -force

Echo Adding Solution BudgetingTrackingMultipleProjects.wsp

%STSADM% -o addsolution -filename %SLNDirectory%BudgetingTrackingMultipleProjects.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name BudgetingTrackingMultipleProjects.wsp -allowgacdeployment -immediate -force

Echo Adding Solution BugDatabase.wsp

%STSADM% -o addsolution -filename %SLNDirectory%BugDatabase.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name BugDatabase.wsp -allowgacdeployment -immediate -force

Echo Adding Solution CallCenter.wsp

%STSADM% -o addsolution -filename %SLNDirectory%CallCenter.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name CallCenter.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ChangeRequest.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ChangeRequest.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ChangeRequest.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ComplianceProcessSupport.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ComplianceProcessSupport.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ComplianceProcessSupport.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ContactsManagement.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ContactsManagement.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ContactsManagement.wsp -allowgacdeployment -immediate -force

Echo Adding Solution DocumentLibraryReview.wsp

%STSADM% -o addsolution -filename %SLNDirectory%DocumentLibraryReview.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name DocumentLibraryReview.wsp -allowgacdeployment -immediate -force

Echo Adding Solution EventPlanning.wsp

%STSADM% -o addsolution -filename %SLNDirectory%EventPlanning.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name EventPlanning.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ExpenseReimbursementApproval.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ExpenseReimbursementApproval.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ExpenseReimbursementApproval.wsp -allowgacdeployment -immediate -force

Echo Adding Solution HelpDesk.wsp

%STSADM% -o addsolution -filename %SLNDirectory%HelpDesk.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name HelpDesk.wsp -allowgacdeployment -immediate -force

Echo Adding Solution InventoryTracking.wsp

%STSADM% -o addsolution -filename %SLNDirectory%InventoryTracking.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name InventoryTracking.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ITTeamWorkspace.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ITTeamWorkspace.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ITTeamWorkspace.wsp -allowgacdeployment -immediate -force

Echo Adding Solution JobRequisition.wsp

%STSADM% -o addsolution -filename %SLNDirectory%obRequisition.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name JobRequisition.wsp -allowgacdeployment -immediate -force

Echo Adding Solution KnowledgeBase.wsp

%STSADM% -o addsolution -filename %SLNDirectory%KnowledgeBase.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name KnowledgeBase.wsp -allowgacdeployment -immediate -force

Echo Adding Solution LendingLibrary.wsp

%STSADM% -o addsolution -filename %SLNDirectory%LendingLibrary.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name LendingLibrary.wsp -allowgacdeployment -immediate -force

Echo Adding Solution PhysicalAssetTracking.wsp

%STSADM% -o addsolution -filename %SLNDirectory%PhysicalAssetTracking.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name PhysicalAssetTracking.wsp -allowgacdeployment -immediate -force

Echo Adding Solution ProjectTrackingWorkspace.wsp

%STSADM% -o addsolution -filename %SLNDirectory%ProjectTrackingWorkspace.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name ProjectTrackingWorkspace.wsp -allowgacdeployment -immediate -force

Echo Adding Solution RoomEquipmentReservations.wsp

%STSADM% -o addsolution -filename %SLNDirectory%RoomEquipmentReservations.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name RoomEquipmentReservations.wsp -allowgacdeployment -immediate -force

Echo Adding Solution SalesLeadPipeline.wsp

%STSADM% -o addsolution -filename %SLNDirectory%SalesLeadPipeline.wsp

Echo Deploying Solution

%STSADM% -o deploysolution -name SalesLeadPipeline.wsp -allowgacdeployment -immediate -force


Shaymaa said...

Thank you!

Alpesh said...

Great! I never got around to sharing my script based on this post http://alpesh.nakars.com/blog/wssv3-application-template-installation/

I even installed STP using scripts, so I don't have to upload them :-)

I will try to upload my scripts this weekend :)

Natalya Voskresenskaya said...

This is great, it did not cross my mind to install STP using script. share it :-)

Mike Sharp said...

You have a typo in your script:

%STSADM% -o addsolution -filename %SLNDirectory%obRequisition.wsp

As far as the STP script goes, here's what I use. Copy and paste it to notepad to make it more readable:

Echo off

REM This batch file can be used to add the twenty Site Definition Templates (STP) to the Central Admin
REM Gallery, so that they can be used for the root site in a new site collection.

REM Run this from the directory on the server where you saved the Site Definition Templates.
REM For the following to run, the location of stsadm must be in your path.

REM If you installed WSS to the default location, you can uncomment the following line which will add the path
REM path %path%;C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\

REM These are the twenty default Administrator Templates

stsadm -o addtemplate -filename "BoardDirectors.stp" -title "Board of Directors" -description "The Board of Directors application template provides a single location for an external group of members to store and locate common documents such as quarterly reviews, shareholder meeting notes and annual strategy documents."
stsadm -o addtemplate -filename "BusinessPerformance.stp" -title "Business Performance Reporting" -description "The Business Performance Reporting application template helps organization managers track the satisfaction of customers through a combination of surveys and discussions."
stsadm -o addtemplate -filename "CaseManagement.stp" -title "Case Management for Government Agencies" -description "The Case Management for Government Agencies application template helps case managers track the status and tasks required to complete their work. "
stsadm -o addtemplate -filename "ClassroomManagement.stp" -title "Classroom Management" -description "The Classroom Management application template helps instructors and students organize and store information related to a particular class."
stsadm -o addtemplate -filename "ClinicalTrial.stp" -title "Clinical Trial Initiation and Management" -description "The Clinical Trial Initiation and Management application template helps teams manage the process of tracking clinical trial protocols, objective setting, subject selection and budget activities."
stsadm -o addtemplate -filename "CompetitiveAnalysis.stp" -title "Competitive Analysis Site" -description "The Competitive Analysis Site application template helps teams organize information about competitors and their products."
stsadm -o addtemplate -filename "DiscussionDatabase.stp" -title "Discussion Database" -description "The Discussion Database application template provides a location where team members can create and reply to discussion topics."
stsadm -o addtemplate -filename "DisputedInvoice.stp" -title "Disputed Invoice Management" -description "The Disputed Invoice Management application template helps accounts payable departments track open invoices including the potential savings associated with paying the invoice early."
stsadm -o addtemplate -filename "EmployeeActivities.stp" -title "Employee Activities Site" -description "The Employee Activities Site application template helps manage the creation and attendance of events for employees."
stsadm -o addtemplate -filename "EmployeeBenefits.stp" -title "Employee Self-Service Benefits" -description "The Employee Self-Service Benefits application template provides tools for an organization to inform employees about available benefits as well as enabling them to enroll for each benefit."
stsadm -o addtemplate -filename "EmployeeTraining.stp" -title "Employee Training Scheduling and Materials" -description "The Employee Training Scheduling and Materials application template helps instructors and employees manage courses and related materials."
stsadm -o addtemplate -filename "EquityResearch.stp" -title "Equity Research" -description "The Equity Research application template helps teams collaborate on researching stocks and other equities."
stsadm -o addtemplate -filename "ManufacturingProcess.stp" -title "Manufacturing Process Management" -description "The Manufacturing Process Management application template helps teams to model and track manufacturing processes as well as tasks and issues that arise in the upkeep of these processes."
stsadm -o addtemplate -filename "MarketingCampaign.stp" -title "Integrated Marketing Campaign Tracking" -description "The Integrated Marketing Campaign Tracking application template helps marketing managers track the implementation and success of outbound marketing activities."
stsadm -o addtemplate -filename "NewStoreOpening.stp" -title "New Store Opening" -description "The New Store Opening application template helps a team manage the opening of new store locations or re-modeling of existing store location."
stsadm -o addtemplate -filename "ProductPlanning.stp" -title "Product and Marketing Requirements Planning" -description "The Product and Marketing Requirements Planning application template enables teams to manage the process of collecting and documenting requirements for new products."
stsadm -o addtemplate -filename "RequestForProposal.stp" -title "Request for Proposal" -description "The Request for Proposal application template helps manage the process of creating and releasing an initial RFP. The site also helps simplify the process of notifying individuals about the status of the RFP and submitted proposals."
stsadm -o addtemplate -filename "SportsLeague.stp" -title "Sports League" -description "The Sports League Site application template helps an intra-company league administrator manage a baseball league."
stsadm -o addtemplate -filename "TeamWorkSite.stp" -title "Team Work Site" -description "The Team Work Site application template provides a place where project teams can upload background documents, track scheduled calendar events and submit action items that result from team meetings. Includes lists for Sub-teams."
stsadm -o addtemplate -filename "TimecardManagement.stp" -title "Timecard Management" -description "The Timecard Management application template helps teams track hours spent working on various projects. Team members ‘punch in’ and ‘punch out’ of work on project tasks. Managers can view the total hours spent by project and by person."

Wictor said...

I've been scripting the 40 for some time and use another approach with a smaller script where you can just add/remove the wsp you do not like: http://www.wictorwilen.se/Post/Install-script-for-the-SharePoint-Application-Templates.aspx

Anonymous said...

Good day, sun shines!
There have were times of hardship when I felt unhappy missing knowledge about opportunities of getting high yields on investments. I was a dump and downright pessimistic person.
I have never thought that there weren't any need in large initial investment.
Nowadays, I'm happy and lucky , I started to get real income.
It's all about how to select a correct partner who utilizes your funds in a right way - that is incorporate it in real business, parts and divides the profit with me.

You can ask, if there are such firms? I'm obliged to answer the truth, YES, there are. Please get to know about one of them:
[url=http://theblogmoney.com] Online investment blog[/url]