miércoles, 20 de febrero de 2013

Links útiles #22 Team Foundation Server

1-Custom Work items

http://msdnrss.thecoderblogs.com/2013/02/tfs-how-to-customize-work-item-types/

2-Tools nuevas en TFS 2012 (Activity Log, TFS Job Monitoring)

http://blogs.msdn.com/b/granth/archive/2013/02/13/tfs2012-new-tools-for-tfs-administrators.aspx

3-TFS API builds

http://blogs.microsoft.co.il/blogs/baruchf/archive/2013/02/15/tfs-api-search-for-builds.aspx

4-Migrar las bases de datos de TFS a otro servidor

http://anyrest.wordpress.com/2013/02/14/migrate-team-foundation-servers-sql-server-to-another-sql-server-same-or-new-version/

5-TFS API Work Item

http://blogs.microsoft.co.il/blogs/shair/archive/2013/02/20/tfs-api-part-48-workitemcontrol-and-bypass-work-item-rules.aspx

Tips /info #13 Team Foundation Server

1-Obtener todos los Workspaces con el comando TF

Para ver todos los workspaces de un ambiente TFS, ejecute el siguiente comando:

tf workspaces Collection:http://tfsURL:8080/tfs/defaultcollection /computer:*

2-Usar Windows Authentication con Web Deploy

De forma predeterminada en Windows Server 2008 cuando se utiliza el Web Management Service (WMSVC) y Web Deploy (también conocido como MSDeploy) utilizará la autenticación básica (User y Password) para llevar a cabo sus despliegues. Si desea habilitar la autenticación de Windows (usar el usuario que genera el build, en este caso el usuario del build controler), tendrá que configurar una clave del registro para que el Web Management Service también admita el uso de NTLM. Para ello, actualice el registro en el servidor mediante la adición de una clave DWORD llamado "WindowsAuthenticationEnabled" en HKEY_LOCAL_MACHINE \ Software \ Microsoft \ WebManagement \ Server, con el valor 1. Reinicie el Web Management Service, o reinicie la máquina para que tome la nueva configuración.

net stop wmsvc

net start wmsvc

Más info: http://technet.microsoft.com/en-us/library/dd722796%28WS.10%29.aspx

3-Claves de registro útiles en TFS 2010 

image

Asociar (Associate) un work item a un check in por default

image

Editar la siguiente clave, y agregarle el valor False,

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Behavior\ResolveAsDefaultCheckinAction

Excluir de forma automática extensiones de archivos

image

Editar la siguiente clave de registro y editar las extensiones d e archivos separados por punto y coma:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\AddOptions\ExcludeMasks

image

Configurar el Team Foundation Build para que use el proxy de TFS

Edita la siguiente clave, y seteela a True,

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy\Enabled

Después editar la siguiente clave de registro, y setee la url del proxy (http://ServidorProxy:Puerto).

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy\Url

Recuerde reiniciar la máquina del cliente.

Habilitar obtener la última versión cuando se hace check out

checkout-21

Editar la siguiente clave de registro y seteela a True.

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\GetLatestOnCheckOut

4-Todos los archivos que están como checked out en el proyecto $/TeamProjectName:  (TFS 2010)

Abrir una consola de windows e ir hasta C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE, y ejecutar lo siguiente:

tf.exe status $/TeamProjectName /user:*  /s:http://url_tfs:8080 /recursive > c:\check-out.txt

5-Conectarse a TFS 2010 desde Visual Studio 2008 y SQL Server Business Intelligence Development 2008

Instalar Visual Studio System 2008 Team Explorer : http://www.microsoft.com/en-us/download/details.aspx?id=16338

Services Pack 1 de Visual Studio 2008: http://www.microsoft.com/en-us/download/details.aspx?id=10986

y instalar el modo compatibilidad de Visual Studio 2008 SP1 con TFS 2012 y TFS preview: http://www.microsoft.com/en-us/download/details.aspx?id=29983

martes, 12 de febrero de 2013

Links útiles #21 Team Foundation Server

1-TFS Build Extension Enero 2013

http://mikefourie.wordpress.com/2013/01/31/community-tfs-build-extensions-jan-2013-release-available/

2-Reporting sobre TFS 2010

http://blogs.msdn.com/b/sunder/archive/2009/11/24/reporting-in-team-foundation-server-2010-part-1-introduction.aspx

http://blogs.msdn.com/b/sunder/archive/2010/01/05/reporting-in-team-foundation-server-2010-part-2-sharepoint-dashboards-sharepoint-server-dashboard.aspx

http://blogs.msdn.com/b/sunder/archive/2010/01/07/reporting-in-team-foundation-server-2010-part-3-sharepoint-dashboards-sharepoint-server-dashboard-customization.aspx

http://blogs.msdn.com/b/sunder/archive/2010/02/02/reporting-in-team-foundation-server-2010-part-4-sharepoint-dashboards-creating-a-team-dashboard.aspx

http://blogs.msdn.com/b/sunder/archive/2010/02/18/reporting-in-team-foundation-server-2010-part-5-sharepoint-foundation-dashboard.aspx

http://blogs.msdn.com/b/sunder/archive/2010/02/23/reporting-in-team-foundation-server-2010-part-6-rich-sql-reporting-services-reports.aspx

http://blogs.msdn.com/b/sunder/archive/2010/02/24/adding-reports-dashboards-and-updating-reports-on-an-existing-team-project.aspx

http://blogs.msdn.com/b/sunder/archive/2010/03/02/reporting-in-team-foundation-server-part-7-excel-reports-from-work-item-queries.aspx

http://blogs.msdn.com/b/sunder/archive/2010/04/07/reporting-in-team-foundation-server-2010-part-8-custom-reports-options-tools.aspx

http://blogs.microsoft.co.il/blogs/eranruso/archive/2013/01/29/sharepoint-dashboards-modification-queries.aspx?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+EranRuso+%28Eran+Ruso%29

3-TFS API – comentarios sobre work items

http://www.codewrecks.com/blog/index.php/2013/02/02/tfs-api-to-associate-work-item-with-check-in-using-comment-tags

4-Team Foundation Mobile (OData)

http://programandonet.com/web/team-foundation-service-mobile/

5-PSExec con TFS Build

http://www.codewrecks.com/blog/index.php/2010/07/10/deploy-remotely-with-tfs-build/

http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

http://blogs.itpro.es/david/2011/09/02/ejecutando-aplicaciones-de-manera-remota-con-psexec/

http://stackoverflow.com/questions/9496949/psexec-with-tfs-build

http://www.danielcolomb.com/2011/06/27/deploying-windows-services-from-tfs/

http://www.andygeldman.com/index.php/2012/02/case-study-automated-build-deployment-of-a-legacy-web-app/

6-Custom Activity counters

http://geekswithblogs.net/charliemott/archive/2013/02/04/tfs-build-custom-activity--todo-counter.aspx

7-SCOM 2012 (Operations Manager 2012) y TFS 2010/2012

http://blogs.like10.com/2013/02/04/welcome-to-the-new-age-scom-2012-sp1-and-tfs-20102012-devops/

8-TF.exe ejemplos de uso

http://mohamedradwan.wordpress.com/2013/02/03/tf-exe-fast-overview/

9-TFS Build y archivos .config – transformations

http://geeklyeverafter.blogspot.pt/2013/02/xdt-transformsmostly-known-as-web.html

10-Extensiones útiles para Visual Studio y TFS

http://visualstudiogallery.msdn.microsoft.com/96ca3487-ef76-4c99-8e9e-0d4ae53a11f9

http://visualstudiogallery.msdn.microsoft.com/2c490d1b-bfa4-45e9-b991-3c9a0a0fbadd

http://visualstudiogallery.msdn.microsoft.com/a306ddcc-abe1-4ec3-ba77-56a807c34f8f

11-Customize Build Template para TFS 2012

http://lajak.wordpress.com/2013/01/29/customize-build-template-in-tfs2012-to-build-all-solutions-part-1/

http://lajak.wordpress.com/2013/01/30/customize-build-template-in-tfs2012-to-build-all-solutions-part-2/

sábado, 2 de febrero de 2013

Tips/info #12 Team Foundation Server

1-TFS 2010 – Cruz roja sobre la carpete Documents y Reports (red X over Reports and Documents)

TFS_Red Cross next to documents and reports

Cierra el Visual Studio. Limpia la cache de TFS en tu máquina:

C:\Users\<UserName>\Local Settings\Application Data\Microsoft\Team Foundation\2.0\Cache
C:\Users\<UserName>\Local Settings\Application Data\Microsoft\Team Foundation\3.0\Cache

También borra la cache de Team Web Access, la carpeta se encuentra en el web.config que está en la siguiente ubicación:

C:\Program Files\Microsoft Team Foundation Server 2010\Application Tier\Web Access\Web

En el web.config aparece la key WorkItemTrackingCacheRoot

<appSettings>
    <!-- Directory path where cache is stored. –>

    <add key="WorkItemTrackingCacheRoot" value="C:\ProgramData\Microsoft\Team Foundation\Web Access\Cache_v10.0.30319"/>

    <!--<add key="DetailedRequestTrace" value="true" />-->
  </appSettings>

También se recomienda resetear los permisos tanto en el Reporting Services como en Sharepoint.

http://tfs:8080/tfs/web/ –> Project Portal –> Site Actions –> Site Settings –> People and Groups –> New –> Add Users

http://tfs/Reports –> Folder Settings –> Security –> New Role Assignment.

Otra posibilidad es que el nombre de los servers de TFS/Sharepoint/Reporting  no esté como FQDN.

Ej:El TFS se encuentra publicado en miTFS.dominio.com, y tu configuraste Visual Studio con miTFS

Para solucionarlo, se puede usar el archivo host de tu máquina.

2-TFS 210 client tracing (Visual Studio 2010)

El tracing de lo que ocurre del lado del cliente al conectarse con TFS, puede ser útil para ver solucionar errores. Para activarlo haga lo siguiente:

  • Cerrar Visual Studio 2010
  • Abrir el directorio: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
  • Hacer backup del archivo devenv.exe.config
  • Editar el archivo agregando las siguientes líneas, antes de tag </configuration>
 <appSettings>     <add key="VersionControl.EnableSoapTracing" value="true" />
<add key="VersionControl.TraceDownloadContent" value="false" />     <add key="VersionControl.EnableCompression" value="true" />
</appSettings>

<system.diagnostics>
  <switches>
    <add name="TeamFoundationSoapProxy" value="4" />
    <add name="VersionControl" value="4" />
  </switches>
  <trace autoflush="true" indentsize="3">
    <listeners>
      <add name="myListener"
   type="Microsoft.TeamFoundation.TeamFoundationTextWriterTraceListener,Microsoft.TeamFoundation.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
       initializeData="c:\Logs\tfs.log" />
      <add name="perfListener" type="Microsoft.TeamFoundation.Client.PerfTraceListener,Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
               />
    </listeners>
  </trace>
</system.diagnostics>



  • Los datos se guardaran en el path c:\Logs\tfs.log

  • Inicia Visual Studio, y empezará a hacer tracing de lo que pasa entre VS y TFS.

2-TFS 2010 Server tracing


Los logs de la consola de TFS se encuentran en C:\ProgramData\Microsoft\Team Foundation\Server Configuration\Logs


TFS Application Tier Trace Logging

Ir hasta C:\Program Files\Microsoft Team Foundation Server 2010\Application Tier\Web Services\


Abrir el web.config, y agregar las siguientes líneas:


<appSettings>
<add key="traceWriter" value="true" />


<add key="traceDirectoryName" value="c:\Logs\" />
</appSettings>


Recuerda que el usuario de app pool de TFS, debe tener permisos para escribir en el archivo de logs. Para editar el tipo de trace level, hay que editar una clave de registro. También se puede hacer desde la línea de comando: reg.exe add HKLM\SOFTWARE\Microsoft\TeamFoundationServer\10.0\Admin /t REG_DWORD /v TraceLevel /d 4 /f



0 – Off, 1 – Error, 2 – Warning, 3 – Information, 4 – Verbose


Hay otra posibilidad para habilitar el verbosity para 2010 y es a través de un web services:


http://<tfsserver>:<port>/tfs/tftrace.ashx?[traceWriter=<true|false>][&][All=<traceLevel>]

Ej: http://<tfs_server>:8080/<WebServices>/tftrace.ashx?traceWriter=true&All=Verbose

Para deshabilitar los traces, ejecute lo siguiente:

http://<tfs_server>:8080/<WebServices>/tftrace.aspx?traceWriter=false&All=Verbose

<WebServices> puede reemplazarse por: Build, services, VersionControl, Warehouse, y WorkItemTracking

Ej: para VersionControl

http://localhost:8080/VersionControl/tftrace.aspx?traceWriter=true&All=Verbose

Recuerde, que la opción del handle vía web services NO es persistente, ya que cuando se haga un recycle o un iisreset, la configuración se pierde. Para ello se debe usar la opción de la clave de registro o el web.config (C:\Program Files\Microsoft Team Foundation Server 2010\Application Tier\Web Services\)

<system.diagnostics>

<assert assertuienabled="true" />

<trace autoflush="false" indentsize="4" />

<!-- Trace Switches
Each of the trace switches should be set to a value between 0 and 4, inclusive.
0: No trace output
1-4: Increasing levels of trace output; see Systems.Diagnostics.TraceLevel
-->

<switches>
<add name="API" value="4" />
<add name="Authentication" value="0" />
<add name="Authorization" value="0" />
<add name="Database" value="0" />
<add name="General" value="0" />
<!-- WorkItem trace switches -->
<add name="traceLevel" value="4" />
</switches>

</system.diagnostics>


Recuerde que puede utilizar http://localhost:8080/tfs/trace.axd para ver el trace de la ejecución.


clip_image008

Puedes usar DebugView http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx para revisar los logs. Recuerda habilitar Capture Win 32, Pass-Through y Capture Events

image

image



3-Configuración del delay de Notification en TFS 2010


Por default, TFS genera un delay de 2 minutos antes de enviar las alertas o notificaciones.


Para modificarlo, ejecute lo siguiente en una consola de PowerShell:


[Reflection.Assembly]::Load("Microsoft.TeamFoundation.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")

# Modifica la url de tu TFS

$configServer = new-object Microsoft.TeamFoundation.Client.TfsConfigurationServer "http://localhost:8080/tfs/"

# Obtiene el servicio de registry de TFS

$tfsRegService = $configServer.GetService([Microsoft.TeamFoundation.Framework.Client.ITeamFoundationRegistry])

# Seteo un delay de  30 seg.

$tfsRegService.SetValue("/Service/Integration/Settings/NotificationJobDelay", 30)

Otra posibilidad es usar la tool http://www.teamsystempro.com/downloads/TfsReg.zip

tfsreg.exe /server:https://yourtfs:8080/tfs/path:/Service/Integration/Settings/NotificationJobDelay /value:30

Recuerda hacer un recycle del app pool de  TFS.