ALM with Team Foundation Server 2010 and SharePoint 2010 (Part 2)

In the first part of this series, I showed you how to create a new Team Project Collection in TFS and the new SharePoint site collection and SSRS reports folder created for the site collection. In this part, I will show you how to create a TFS Team Project in the Team Project Collection, add team members to the project, manage permissions on the SharePoint site and review the SSRS report security settings.

Part 2A: Creating a team project.

1. Open Visual Studio 2010 and click on Connect to Team Foundation Server.

 image

2.  Select the TFS server and select the Team Project Collection that we created in Part 1 and click the Connect button.

image

3. Create a new Team Project in the Team Project Collection. In the Team Explorer pane, right-click on the Team Project Collection and select New Team Project.

image 

4. In the wizard that opens, specify the name and description of the new project.

image

5. Specify the Process Template to use for the project. Out of the box, there are two process templates available: MSF for Agile Software Development v5.0 and MSF for CMMI Process Improvement v5.0. For this project, I’m going to use the MSF for Agile Software Development v5.0 template. To understand the differences between the two templates, refer to the documentation located here: http://msdn.microsoft.com/en-us/vstudio/aa718795.aspx. Note, you can also download additional process templates or create your own process template using the Process Editor (part of the TFS Power Tools). This is available at the above link.

image 

6. Allow the New Project wizard to create the SharePoint site that will be used as the portal for this project. The site will be created under the site collection that was created for the Team Project Collection.

image

7. The wizard will create a new source control folder in TFS.

image

8. Review the new Team Project settings.

image

9. Click the Finish button.

image

10. Close the wizard after the project is created.

image

Part 2B: Managing Team Members and Permissions

1. In Team Explorer, find the new project we just created and right-click on Team Members. You can give users access to the team by clicking on the Add Team Member  option. You can also create sub-teams by selecting the New Subteam option. For this project,  we will create the following subteams: Business Analysts, Developers, Project Managers, and Testers.

image

2. Add the appropriate members to each sub-team by right-clicking on each sub-team name and selecting the Add Team Member option from the menu. These members will all be added to the Team Project’s Contribute security group. To modify or reassign them to a different security group, right-click on the team project name and select Team Project Settings –> Group Membership.

image

3. In order to make sure the team members can access the project portal, you need to go into the SharePoint site and give the users you added to the team permissions to the site. In the Team Explorer window, right-click on the project name and select Show Project Portal. This will open the SharePoint site that was created for this project.

image

14. Go to Site Actions –> Site Permissions to grant access to this site for the project team members. You can create groups, custom permission levels, etc just like permission management in any other SharePoint site. In this case, I’m going to just grant each team member Contribute permissions for this site.

image 

Part 2C: Reviewing SSRS Security

1. In the SharePoint site, click the Reports link in the Quick Launch menu on the left. You will be taken to the SSRS reports folder specific to the new project. There different folders for the different reports. The reports available are based on the process template you selected when creating the Team Project. By default, for the Agile-based process template, there are reports for Bugs, Builds, Project Management, and Tests.

image

2. You can also manage the security of a report folder or report. Hover over a folder or report and select Security from the drop-down menu. Select Edit Item Security from the toolbar. You will be asked to confirm that you actually want to break permission-inheritance for the object.

image

image

3. By either clicking on the New Role Assignment toolbar item or clicking Edit next to an existing Group or User, you can change with Role Assignment for the group or user. The main roles are: Browser (read-access), Publisher (create reports), and Content Manager (manages the report server content for the project).

image

image

ALM with Team Foundation Server 2010 and SharePoint 2010 (Part 1)

Team Foundation Server (TFS) 2010 and SharePoint 2010 are excellent tools to use for managing projects and applications. In this series on Application Lifecycle Management (ALM), I will show you from start to finish how to manage your projects in TFS 2010 and SharePoint 2010. For this example, I will use these tools to manage the creation of a new SharePoint 2010 intranet portal for my company, DeviantPoint.

This series does not cover installation and configuration of TFS, SharePoint 2010, and SQL Server 2008 R2 Reporting Services. Those are topics I may cover in a future post. However, here are some fairly good resources that should help you get started with that:

Part 1: Creating a Team Project Collection

1. Open the Team Foundation Administration Console.
2. Create a new collection under Server –> Application Tier –> Team Project Collections.
3. Click Create Collection.

image

4. Provide a name and description for the new Project Collection.

image


5. Specify the data tier (SQL Server and database name).

image


6. Specify the SharePoint web application and path to new site collection.

image


7. Specify the SQL Server Reporting Services server. Note that TFS doesn’t work with SSRS SharePoint Integrated mode. In my environment, I have two SSRS servers, one that runs in SharePoint Integrated mode (for my BI-related demos) and one that doesn’t. Here, I’m specifying the URL to the Reporting Services server that doesn’t run in integrated mode.

image 


8. Configure the Lab Management (not currently configured in my environment)

image


9. Review the Configuration and make changes as necessary.

image


10. Run Readiness Check.

image


11. Create the new Team Project Collection.

image


12. Close the wizard.

image

12. Review the top-level site collection created in SharePoint.

image

13. Review SQL Server Reporting Services.

image

Microsoft FAST Search Server 2010 Installation Issue with Powershell Script

I am currently installing Microsoft FAST Search Server 2010 RC on my demo/development environment and ran into an issue running the post configuration Powershell script (found at C:\FastSearch\installer\scripts\psconfig.ps1). When I initially ran the script, it failed either because I didn’t supply the FQDN to my SQL Server machine (which is required) or because I may have fat-fingered the service account name or one of the associated passwords. Anyways, when I tried to re-run the script (this time making sure I entered the inputs correctly), I got an error that the configuration failed, specifically that ‘An error occurred while installing Resource store’. So I did a search both on the web and the Microsoft Connect newsgroups to see if there was anyone else that had this error but saw nothing. I checked the logs and found this (not the complete log file):

 1: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:requestFiltering /+verbs.[verb='POST',allowed='true'] /commit:apphost - Applied configuration changes to section "system.webServer/security/requestFiltering" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST"  
 2: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:requestFiltering -requestLimits.maxAllowedContentLength:1073741824 /commit:apphost - Applied configuration changes to section "system.webServer/security/requestFiltering" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST"  
 3: 3/10/2010 4:53:51 PM Verbose Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" Output - (Mar 10, 2010 04:53:51 PM), Fast-installer, resourcestoreinstaller.exe, C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:httpRuntime -maxRequestLength:1024000 -executionTimeout:3600 /commit - Applied configuration changes to section "system.web/httpRuntime" for "MACHINE/WEBROOT/APPHOST/ResourceStore/Config" at configuration commit path "MACHINE/WEBROOT/APPHOST/ResourceStore/Config"  
 4: 3/10/2010 4:53:51 PM Warning Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" StdError - resourcestoreinstaller.exe - C:\Windows\system32\inetsrv\appcmd.exe SET config "ResourceStore/Config" /section:appSettings /+"[key='FileLimit',value='']" /commit - ERROR ( message:New add object missing required attributes. Cannot add duplicate collection entry of type 'add' with unique key attribute 'key' set to 'FileLimit'
 5: 3/10/2010 4:53:51 PM Warning Utility.Execute - "C:\FASTSearch\bin\ResourceStoreInstaller.exe" StdError -  . )  
 6: 3/10/2010 4:53:51 PM Warning Utility.Execute - Return code for binary "C:\FASTSearch\bin\ResourceStoreInstaller.exe" is not 0. This may indicate that binary didn't execute successfully
 7: 3/10/2010 4:53:51 PM Verbose Utility.Execute - Finished executing "C:\FASTSearch\bin\ResourceStoreInstaller.exe"
 8: 3/10/2010 4:53:51 PM Error InstallResourceStore - An error occurred while executing binary "C:\FASTSearch\bin\ResourceStoreInstaller.exe". Return code is not 0.
 9: 3/10/2010 4:53:51 PM Error Utility.WriteException - Exception -  : Exception - System.Management.Automation.RuntimeException: An error occurred while installing Resource store.

The exception is on line 9 but the important error is actually on line 4. Based on this line, I was able to deduce that what was happening was the resource installer was trying to add a key (FileLimit) in an appSettings section of a config file but couldn’t because the key already existed. Instead of just replacing the old key, it just causes the post configuration script to fail. Anyways, in order to fix it, I found the config file that it was attempting to update (there are a ton of config files for this app). The particular config file where it was failing is located at C:\FASTSearch\components\resourcestore\config\web.config. Sure enough, the FileLimit key was there. All I did was delete that key, re-ran the script again and presto, all done.

Anyways, just wanted to share this, to save others the headache I just ended up getting trying to figure out why that darn script wasn’t working correctly.

Technorati Tags: ,