Upgrade from SharePoint 2013 with TFS integration to SharePoint 2016
TFS 2017 | TFS 2015 | TFS 2013
With TFS 2017, the TFS Extension for SharePoint supports SharePoint 2010 and 2013, but does not support SharePoint 2016. For more information, read Discontinue the TFS 2017 (and earlier) SharePoint integration.
Customers that have TFS 2017 with integration configured for SharePoint 2013 need an upgrade path to SharePoint 2016. This upgrade path needs to provide a way to upgrade "away" from the old-style integration.
If you are upgrading from TFS 2017, or prior version, to TFS 2018, please see Disable SharePoint integration after TFS 2018 upgrade
Please refer to the SharePoint topic: Upgrade to SharePoint Server 2016, for full instructions on upgrading your SharePoint server. The instructions below provide additional guidance to ensure the TFS SharePoint sites are functional after upgrading to SharePoint 2016.
Overview of problem
To configure TFS 2017 with SharePoint integration, you must have installed the TFS Extension for SharePoint on the SharePoint 2013 server. You may or may not have had Excel Services configured. Excel Services enabled Excel Charts to be displayed on a SharePoint site. On your SharePoint 2013 server, you may have several TFS SharePoint sites which use web parts, display Excel charts, and refer to TFS site templates.
In this configuration, with Excel Services configured, your TFS sites on SharePoint 2013 would look similar to the following image.
To upgrade to SharePoint 2016, you must first set up a SharePoint 2016 Server. Excel Services was deprecated in SharePoint 2016 and replaced with Office Online Server. If you had Excel Services configured in SharePoint 2013, then you will need to configure Office Online Server to ensure Excel Charts continue to display on the TFS SharePoint sites. See References for configuring Office Online Server for SharePoint 2016 later in this article for more information.
The first step is to set up a SharePoint 2016 server.
The next step is to export the SharePoint content database from SharePoint 2013.
The next step would normally be to import the SharePoint content database into SharePoint 2016.
The import validation step fails, because the TFS SharePoint sites are referencing TFS artifacts that don't exist on the SharePoint 2016 server, such as site templates, web parts, and features.
The types of errors displayed on import are:
=========================================================================================================================
Category : MissingSiteDefinition
Error : True
UpgradeBlocking : False
Message : 2 Sites in database [WSS_Content] have reference(s) to a missing site definition, Id = [12001], Lcid
= [1033], compatibility level = [15].
Remedy : The site definition with Id 12001 is referenced in the database [WSS_Content], but is not installed
on the current farm for sites with compatibility level 15. The missing site definition may cause
upgrade to fail. Please install any solution which contains the site definition and restart upgrade
if necessary.
=========================================================================================================================
Category : MissingFeature
Error : True
UpgradeBlocking : False
Message : Database [WSS_Content] has reference(s) to a missing feature: Id =
[a654fec6-ae10-43f4-8730-076ea76a36e9], Name = [Team Foundation Server Agile Reports], Description =
[], Install Location = [TfsDashboardAgileReports].
Remedy : The feature with Id a654fec6-ae10-43f4-8730-076ea76a36e9 is referenced in the database
[WSS_Content], but is not installed on the current farm. The missing feature may cause upgrade to
fail. Please install any solution which contains the feature and restart upgrade if necessary.
=========================================================================================================================
Category : MissingSetupFile
Error : True
UpgradeBlocking : False
Message : File [Features\TswaWebParts\WebParts\WorkItemSummary.webpart] is referenced [1] times in the
database [WSS_Content], but is not installed on the current farm. Please install any
feature/solution which contains this file.
Remedy : One or more setup files are referenced in the database [WSS_Content], but are not installed on the
current farm. Please install any feature or solution which contains these files.
=========================================================================================================================
Category : MissingWebPart
Error : True
UpgradeBlocking : False
Message : WebPart class [bda9196d-87dc-18f4-469b-1c42dd26bfa7] (class
[Microsoft.TeamFoundation.WebAccess.WebParts.WorkItemSummaryWebPart] from assembly
[Microsoft.TeamFoundation.WebAccess.WebParts, Version=15.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a]) is referenced [12] times in the database [WSS_Content], but is not
installed on the current farm. Please install any feature/solution which contains this web part.
Remedy : One or more web parts are referenced in the database [WSS_Content], but are not installed on the
current farm. Please install any feature or solution which contains these web parts.
=========================================================================================================================
Steps for solution
The solution is to install the TFS Disconnector for SharePoint on the SharePoint 2016 server first. To do this, follow these steps:
Execute the guidelines described in Upgrade to SharePoint Server 2016, until you get to the "Verify custom components" step.
Download the TFS Disconnector for SharePoint to the SharePoint 2016 server. Unzip the files. You will be running script-2016.ps1 later.
The TFS Disconnector for SharePoint was last updated on Sep 9, 2017. Support for non-English was added.
Run "SharePoint 2016 Management Shell" as administrator.
From the shell, run script-2016.ps1 and answer all the prompts.
Open Central Administration -> Monitoring -> Check Job Status -> Running section and verify that the uninstall jobs finished prior to proceeding
Proceed with "Verify custom components" step.
Note
If you have problems running the scripts, please reach out to Customer Support.
Go to the Team Foundation Server support page, select the appropriate TFS version, then select "SharePoint Integration" as the Problem Type. Our support team will work with you to resolve the issue as quickly as possible.
This installs all the required references for TFS Sites to display properly, while disabling TFS/SharePoint integration.
After the TFS Disconnector for SharePoint is installed, you can then successfully import the SharePoint 2013 content database:
After the upgrade, your TFS SharePoint sites will display, but all integration functionality is disabled. This is what the site would look like after the upgrade:
References for configuring Office Online Server for SharePoint 2016
Deploying Office Online Server requires a considerable amount of configuration. We recommend you familiarize yourself with the topics below to ensure a successful deployment.
- Deploy Office Online Server
- Configure Office Online Server for SharePoint Server 2016
- Configure server-to-server authentication between Office Online Server and SharePoint Server 2016
- Configure an Analysis Services (data model) server for Excel Online
- Configure Analysis Services and Kerberos Constrained Delegation (KCD)
- ExcelWarnOnDataRefresh