TFS Build: `Microsoft.TeamFoundation.PowerShell' is not installed on this computer - powershell

When I'm logged in to tfs build server using local account and execute following powershell command:
Add-PSSnapin Microsoft.TeamFoundation.PowerShell
it loads the tfs cmdlets correctly. However, when I trigger a build on tfs server that invokes the script, it fails with message:
'Microsoft.TeamFoundation.PowerShell' is not installed on this computer.
The build agent runs under service account. What should I do?
EDIT:
I had to edit the reqistry entry from the first link in #Alexis Coles' answer to make it work with version 2015 of TFS PowerTools:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell]
"PowerShellVersion"="4.0"
"Vendor"="Microsoft Corporation"
"Description"="This is a PowerShell snap-in that includes the Team Foundation Server cmdlets."
"VendorIndirect"="Microsoft.TeamFoundation.PowerShell,Microsoft"
"DescriptionIndirect"="Microsoft.TeamFoundation.PowerShell,This is a PowerShell snap-in that includes the Team Foundation Server cmdlets."
"Version"="14.0.0.0"
"ApplicationBase"="C:\\Program Files (x86)\\Microsoft Team Foundation Server 2015 Power Tools"
"AssemblyName"="Microsoft.TeamFoundation.PowerTools.PowerShell, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
"ModuleName"="C:\\Program Files (x86)\\Microsoft Team Foundation Server 2015 Power Tools\\Microsoft.TeamFoundation.PowerTools.PowerShell.dll"
"CustomPSSnapInType"="Microsoft.TeamFoundation.PowerTools.PowerShell.TFPSSnapIn"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell]
"PowerShellVersion"="4.0"
"Vendor"="Microsoft Corporation"
"Description"="This is a PowerShell snap-in that includes the Team Foundation Server cmdlets."
"VendorIndirect"="Microsoft.TeamFoundation.PowerShell,Microsoft"
"DescriptionIndirect"="Microsoft.TeamFoundation.PowerShell,This is a PowerShell snap-in that includes the Team Foundation Server cmdlets."
"Version"="14.0.0.0"
"ApplicationBase"="C:\\Program Files (x86)\\Microsoft Team Foundation Server 2015 Power Tools"
"AssemblyName"="Microsoft.TeamFoundation.PowerTools.PowerShell, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
"ModuleName"="C:\\Program Files (x86)\\Microsoft Team Foundation Server 2015 Power Tools\\Microsoft.TeamFoundation.PowerTools.PowerShell.dll"
"CustomPSSnapInType"="Microsoft.TeamFoundation.PowerTools.PowerShell.TFPSSnapIn"
Double check AssemblyName, ApplicationBase, ModuleName and Version entries. Script above works with Microsoft Team Foundation Server 2015 Power Tools

I had this issue and to solve I notice that by default the cmdlets are not added during the PowerTools installation. You need to run a full install to make it work.
I posted here some pictures:
https://fabiostawinski.wordpress.com/2016/07/11/the-windows-powershell-snap-in-microsoft-teamfoundation-powershell-is-not-installed-on-this-computer/

I am going to have a quick punt here and say it is probably something to do with 32-bit vs 64-bit powershell. If I run Add-PSSnapinicrosoft.TeamFoundation.PowerShell from normal 64-bit powershell fine. But if I run it from C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell_ise.exe I get the above exception. I am going to go ahead and say that the build server is a 32-bit application and there for starting a 32-bit runtime.
Not really sure what the fix is exactly but maybe the following will point you in the right direction.
PowerShell (2.0, 32-bit) can't load TFS 2010 snap-in... except when it can
https://social.msdn.microsoft.com/Forums/en-US/a116799a-0476-4c42-aa3e-45d8ba23739e/tfs-power-tools-2008-powershell-snapin-wont-run-in-on-64bit-in-windows-2008-r2?forum=tfspowertools

For me it was another issue because I was trying to use Power Tools with only Visual Studio 2017 Pro installed.
For Visual Studio 2017 they didn't released Microsoft Team Foundation Server 2017 Power Tools. They are saying that the previous version it should work with any higher version of Visual Studio that has TFS.
The problem is that if you have only Visual Studio 2017 installed you will not be able to install Microsoft Team Foundation Server 2015 Power Tools for example, because having Visual Studio 2015 (any version) installed is a requirement for installing Microsoft Team Foundation Server 2015 Power Tools.
In other words I had to install Visual Sudio 2015 then install Microsoft Team Foundation Server 2015 Power Tools and then Add-PSSnapin Microsoft.TeamFoundation.PowerShell worked.
Please refer also to this:
https://developercommunity.visualstudio.com/content/problem/103642/team-foundation-server-2015-power-tools-install-is.html
Hopefully this would help somebody.

Related

How do I install Microsoft.SqlServer.SqlManagementObjects (SMO) for SQL 2017 without Visual Studio?

Here's the scenario, we're installing Microsoft Dynamics 365 (Formerly CRM) v9 On Prem on SQL 2017. RTM is only compatible with SQL 2016, but as of update 0.03 it does support SQL 2017. Using a Setup script I can install the latest update (0.22) during installation, but the installer only installs the SQL components for SQL 2016 and not 2017. So when using it I get errors about missing CLR Type and SMO for Sql 2017. I was able to get CLR Type installed using SQL 2017 Feature Pack, but they have removed SMO from this, it's only installable through a Nuget package in Visual Studio from what I'm seeing.
I would rather not install Visual Studio on our Dynamics 365 web servers just to get this package. One work around I found was I installed SSMS 18 which added it, but again I'd rather not install any dev tools on the web servers just to get SMO. Does anyone have other options on how to satisfy this requirement? I tried some PowerShell scripts that supposedly would install it, but nothing worked.
Thanks.
If you have both admin and web access on the target host you can simply install SMO via PowerShell package manager:
Install-Package Microsoft.SqlServer.SqlManagementObjects -Version 161.44091.28
Alternatively you can download the NuGet package manually from:
https://www.nuget.org/api/v2/package/Microsoft.SqlServer.SqlManagementObjects/161.44091.28
move it to "-o$env:ProgramFiles\PackageManagement\ProviderAssemblies" and register by:
Register-PSRepository -Name "SMO" -SourceLocation "location" -InstallationPolicy Trusted
Install-Module SMO

PowerShell Team foundation server 2017

Does anyone know what happened to the Powershell power tools for TFS 2017?
I have existing scripts for TFS and would like to keep using them.
I tried installed the 2015 tools but they will not install because it requires VS 2015 and I am using 2017.
To my knowledge there are no Power Tools for Team Foundation Server 2017 (see https://www.visualstudio.com/en-us/news/releasenotes/tfs2017-relnotes).
That said you can leverage #igor-abade Powershell CmdLets (https://github.com/igoravl/tfscmdlets) which offer a good deal of features.

Error installing Visual Studio for PowerShell on Windows Server 2012

Trying to install PowerShell Tools for Visual Studio on Windows Server 2012 I get an error:
Signaturedescription cannot be created...
Is SQL Server Data Tools Visual Studio different from Power Shell Visual Studio in this regard? I have installed and using SQL Server Data Tools for Visual Studio 2013 successfully. Can I use the same SSDT VS 2013 for PowerShell too?

TFS integration into WIndows 10 File Explorer

when running windows 8.1 I had the windows explorer extension that allowed TFS 2013 integration.
After an upgrade to Windows 10 that has "made off" as the police would like to say.
Has anyone got this working and if they have what did they do?
Beginning with Visual Studio 2017, a new extension called Microsoft Team Foundation Version Control Windows Shell Extension has been published to the Visual Studio Marketplace.
The description says:
This release requires a computer with Visual Studio 2017 and all of the Visual Studio system requirements. It supports all TFS Server versions that are supported by Visual Studio 2017:
Team Foundation Server 2018
Team Foundation Server 2017
Team Foundation Server 2015
Team Foundation Server 2013
Team Foundation Server 2012
Team Foundation Server 2010 SP1
Visual Studio Team Services
I have finally got to the bottom of this. It turns out that you dont match the power tools to teh TFS version (even though they are TFS power tools), you match them to the Visual Studio version regardless of the TFS version.
So in my case I have visual studio 2015 and TFS 2013. I need to install the power tools for TFS 2015.
Thanks for your help everyone
Dave is correct that, you need to install TFS 2013 Power Tool to use Windows Shell Extension.
Then you can get the extension in a local folder which is in a TFVC mapped workspace folder.

How to migrate TFS 2008 Project Version Control to TFS 2010?

I have Microsoft Team Foundation Server 2008 installed on my company since tree years. I installed TFS 2010 and I want to migrate the version control from 2008 to 2010.
I tried to use Team Foundation Server Integration Tools (March 2011 Release) but I've got an error/conflict when I tried to migrate:
The target server http://tfs2008:8080/
is not a TFS2010 server
I don't know why it says target and not source even I've putted it (tfs 2008) on the left source!!
Can anyone any idea what's going on?
Thank you and Kind Regards.
I was able to migrate from the tfs 2008 server, I ran the TFS integration tool from 2008 and it worked.