Notas de la versión de Team Foundation Server 2018 RC1

Last Update: 25/09/2017

En este artículo encontrará información sobre la versión más reciente de Team Foundation Server 2018 RC1. Haga clic en el botón para realizar la descarga.

Descargar la última versión de Team Foundation Server

Para obtener más información sobre Team Foundation Server 2018, vea la página Compatibilidad y requisitos de Team Foundation Server.


Comentarios

Queremos que nos dé su opinión. Si tiene algún problema, puede notificarlo y realizar su seguimiento a través de la Comunidad de desarrolladores y recibir consejos en Stack Overflow. Como siempre, si tiene alguna idea que le gustaría que priorizáramos, vaya a UserVoice para agregarla o para votar una existente.


Fecha de lanzamiento: 30 de agosto de 2017

Resumen: Actualizaciones de Team Foundation Server en TFS 2018 RC1

Hemos incorporado muchos valores nuevos a Team Foundation Server 2018. Entre los aspectos destacados se incluyen:

Resumen: Novedades de esta versión

Características eliminadas en esta versión:


Resumen: Novedades de esta versión

Seguimiento de elementos de trabajo

Asistente para la creación de proyectos en la Web

Se ha mejorado la experiencia de creación de proyectos de equipo desde la Web. Ahora incluye la mayoría de las características que están disponibles al crear un proyecto de equipo en el cliente de Visual Studio. La ventaja de utilizar la interfaz web es que no necesita una versión coincidente de Visual Studio. La diferencia entre utilizar Visual Studio o la versión web es que la versión web no ofrece informes SSRS. Si ha utilizado la versión web para la creación de proyectos de equipo, puede ejecutar el comando tfsconfig en la capa de aplicación para que se proporcionen o actualicen los informes SSRS. Puede consultar los detalles en agregar informes del proyecto.

Administrador de plantillas de proceso en la Web

Con TFS 2018, puede usar el acceso web para cargar plantillas de proceso. La interfaz web es una experiencia mucho más sencilla porque no tiene que instalar la versión correcta de Visual Studio para interactuar con las plantillas de proceso. Aunque Visual Studio 2017 Update 4 y las versiones anteriores seguirán mostrando el cuadro de diálogo del Administrador de plantillas de proceso, le recomendamos que utilice la interfaz web. Visual Studio 2017 Update 5 y las versiones posteriores le redirigirán automáticamente a la Web.

Formulario de elemento de trabajo para móviles

Tenemos una experiencia de un extremo a otro con una apariencia y un funcionamiento optimizados de los elementos de trabajo (Figura 1), que le permite interactuar de forma sencilla con los elementos que tiene asignados, de los que hace un seguimiento o que ha visitado o editado recientemente desde el teléfono.

Consulta del elemento de trabajo móvil

(Figura 1) Consulta del elemento de trabajo móvil

Junto con el aspecto, esta experiencia admite controles optimizados para todos los tipos de campo (Figura 2).

Formulario de elemento de trabajo para móviles

(Figura 2) Formulario de elemento de trabajo para móviles

Con la nueva navegación para móviles (Figura 3), los usuarios pueden ir a otras partes de TFS optimizadas para móviles y regresar al sitio de escritorio completo si necesitan interactuar con otros concentradores.

Navegación para móviles

(Figura 3) Navegación para móviles

Filtrar según los trabajos pendientes, los paneles kanban, los sprints y las consultas

Ahora, en todas nuestras experiencias de cuadrícula para el seguimiento de elementos de trabajo (consultas, trabajos pendientes, paneles kanban, trabajos pendientes de sprints y administración de casos de prueba) se utilizan nuestros componentes de filtrado comunes y homogéneos (Figura 4). Además de aplicar un filtro de palabras clave en las columnas mostradas y en las etiquetas de selección, también puede filtrar por tipos de elemento de trabajo, estados y asignaciones para obtener rápidamente acceso a los elementos de trabajo que está buscando.

Filtrado por consulta

(Figura 4) Filtrado por consulta

Expandir para mostrar campos vacíos en una tarjeta kanban

Ahora puede agregar campos adicionales a una tarjeta y ocultar campos vacíos (Figura 5) desde la configuración del panel para quitar elementos innecesarios. El inconveniente de esta característica es que, una vez que se ha ocultado un campo vacío, la única forma de actualizarlo es abriendo el formulario de elemento de trabajo. La nueva opción de expansión de las tarjetas kanban le permite beneficiarse de la ocultación de campos vacíos en el tablero, pero sin perder el acceso con un solo clic a la actualización de un campo concreto de la tarjeta. Para actualizar el campo oculto, basta con mover el puntero por encima de la tarjeta y buscar el botón de contenido adicional que apunta hacia abajo y que está situado en la parte inferior de la tarjeta.

Campo oculto

(Figura 5) Campo oculto en una tarjeta kanban

Para actualizar el campo, haga clic en el botón de contenido adicional que apunta hacia abajo y que está situado en la parte inferior de la tarjeta (Figura 6).

Actualizar campo oculto

(Figura 6) Actualizar campo oculto en una tarjeta kanban

Extensiones para bloquear el guardado de elementos de trabajo

Ahora se puede bloquear el guardado de elementos de trabajo con los controles personalizados del formulario, los grupos y las páginas del elemento de trabajo. De este modo se pueden validar los datos y se garantiza que el usuario rellena cualquier información necesaria antes de guardar el formulario del elemento de trabajo.

Control de versiones

Bifurcaciones

En TFS 2018 se ha agregado compatibilidad con bifurcaciones de Git (Figura 7). Una bifurcación es la copia de un repositorio que se hace en un servidor. Con las bifurcaciones, puede permitir que un gran número de personas contribuya a su repositorio sin concederles acceso de confirmación directo, ya que confirman su trabajo en su propia bifurcación del repositorio (Figura 7). Esto le permite revisar los cambios en una solicitud de incorporación de cambios antes de aceptar los cambios en el repositorio central.

Bifurcaciones de Git

(Figura 7) Bifurcaciones de Git

Opción para desactivar la edición web para repositorios de TFVC

Los equipos que utilizan TFVC a menudo usan directivas de protección en Visual Studio para garantizar la calidad del código. Sin embargo, como estas directivas las debe cumplir el cliente, el código que se edita en la Web no está sujeto a las mismas directivas.

Muchas personas nos han preguntado cómo pueden deshabilitar la edición web para protegerse de los cambios que omiten las directivas de protección. Hemos habilitado una forma de desactivar la edición web (las opciones de agregar, eliminar, cambiar el nombre y editar) para TFVC en un proyecto o repositorio concreto.

Para impedir la edición web desde la página Archivos, vaya a Configuración y, a continuación, a Control de versiones (Figura 8). En el árbol, haga clic en el repositorio de TFVC, vaya al control dinámico Opciones y desmarque Habilitar la edición web para este repositorio de TFVC. De forma predeterminada, la edición web está habilitada. Nota: La edición del archivo Léame de la página de información general del proyecto no se ve afectada.

Desactivar la edición web

(Figura 8) Desactivar la edición web

Si intenta editar desde la Web un proyecto con la edición web deshabilitada, se le indicará que la edición web no está permitida (Figura 9).

Cuadro de diálogo Edición web no permitida

(Figura 9) Cuadro de diálogo Edición web no permitida

Esto se ha desarrollado en función de una sugerencia relacionada.

Identificar ramas obsoletas

Si mantiene el repositorio limpio mediante la eliminación de ramas que ya no necesita, los equipos podrán encontrar las ramas que les interesen y establecer los favoritos con la granularidad adecuada. En cambio, si el repositorio contiene muchas ramas, puede ser difícil determinar cuáles están inactivas y se pueden eliminar. Hemos simplificado la identificación de ramas “obsoletas” (ramas que se dirigen a confirmaciones de más de 3 meses de antigüedad). Para ver las ramas obsoletas, vaya al control dinámico Obsoletas en la página Ramas (Figura 10).

Ramas obsoletas

(Figura 10) Ramas obsoletas

Buscar una rama eliminada y volver a crearla

Cuando una rama se elimina por error del servidor, puede ser difícil saber dónde ha ido a parar. Ahora puede buscar las ramas eliminadas, ver quién las ha eliminado y cuándo, y volver a crearlas, si lo desea.

Para buscar una rama eliminada, escriba el nombre completo de la rama en el cuadro de búsqueda de ramas. Se mostrarán todas las ramas existentes que coincidan con ese texto. También verá una opción para buscar una coincidencia exacta en la lista de las ramas eliminadas. Haga clic en el vínculo para buscar ramas eliminadas (Figura 11).

Buscar ramas obsoletas

(Figura 11) Buscar ramas obsoletas

Si se encuentra una coincidencia, verá quién la ha eliminado y cuándo. También puede restaurar la rama (Figura 12).

Restaurar ramas eliminadas

(Figura 12) Restaurar ramas eliminadas

Al restaurar una rama, se volverá a crear en la confirmación a la que se dirigió por última vez. Sin embargo, las directivas y los permisos no se restaurarán.

Buscar una confirmación en ramas que empiezan con un prefijo

Si tiene una estructura de ramas en formato jerárquico, en el que todas las ramas tienen un prefijo de texto, esta característica le ayudará a buscar una confirmación en todas las ramas que tengan ese texto como prefijo. Por ejemplo, si desea ver si una confirmación se dirigió a todas las ramas que tenían “dev” como prefijo, escriba “dev” en el cuadro de búsqueda y seleccione Buscar ramas que empiecen por “dev” (Figura 13).

Buscar una confirmación

(Figura 13) Buscar una confirmación

Llamada de solicitud de incorporación de cambios enriquecida en la página de detalles de la confirmación

La llamada de solicitud de incorporación de cambios en la página de detalles de la confirmación muestra la información más relevante para ayudarle a hacer un mejor diagnóstico (Figura 14). Ahora también se muestra la primera solicitud de incorporación de cambios que introdujo la confirmación en alguna de las ramas y la solicitud de incorporación de cambios asociada a la rama predeterminada en la llamada.

Llamada de la solicitud de incorporación de cambios

(Figura 14) Llamada de la solicitud de incorporación de cambios

Filtrar la vista de árbol en el código

Para tener acceso a sus archivos, ya no es necesario que se desplace por todos los archivos que pueda haber modificado una confirmación. Ahora se pueden filtrar archivos y carpetas en la vista de árbol de los detalles de la confirmación, las solicitudes de incorporación de cambios, los detalles del conjunto de cambios agregados pendientes de confirmación y la página de detalles del conjunto de cambios. Se trata de un filtro inteligente que muestra los archivos secundarios de una carpeta al filtrar por el nombre de la carpeta y muestra la vista de árbol contraída de un archivo para exponer la jerarquía de archivos al filtrar por el nombre de archivo.

Busque un filtro de archivo o carpeta en el árbol de confirmación (Figura 15) y (Figura 16):

Buscar un archivo o una carpeta

(Figura 15) Buscar un archivo o una carpeta

Vista filtrada

(Figura 16) Vista filtrada en el árbol de confirmación

La página Actualizaciones de ramas se convierte en Inserciones

La página Actualizaciones de ramas es muy útil. Sin embargo, estaba oculta como un control dinámico en el concentrador Historial. A partir de ahora, la página Actualizaciones de ramas estará visible como un concentrador denominado Inserciones (Figura 17) en Código, junto a Confirmaciones, Ramas, Etiquetas y Solicitudes de incorporación de cambios. La nueva dirección URL de la página de inserciones es: <tfsserverurl>/<projectname>/_git/<reponame>/pushes. Las direcciones URL antiguas seguirán funcionando.

Página Inserciones

(Figura 17) Página Inserciones

Al mismo tiempo, se ha cambiado el nombre del concentrador Historial, que ahora se denomina Confirmaciones (Figura 18), puesto que en este concentrador solo se muestran confirmaciones. Hemos recibido comentarios de los usuarios en los que indicaban que les resultaba difícil solucionar problemas relacionados con la confirmación, porque en la lista de confirmaciones solo se veía la hora al pasar el puntero por encima. Ahora, en la vista de lista de confirmaciones de la instancia, se mostrará la fecha y la hora en el formato dd/mm/aa hh:mm. La nueva dirección URL de la página de confirmaciones es: <tfsserverurl>/<projectname>/_git/<reponame>/commits. Las direcciones URL antiguas seguirán funcionando.

Página Confirmaciones

(Figura 18) Página Confirmaciones

Conservar el nombre de archivo al mover de Archivos a Confirmaciones

Hemos recibido comentarios de usuarios que indicaban que, al aplicar un filtro a un archivo determinado en el directorio del control dinámico Archivos del concentrador Código y después cambiar al controlador dinámico Historial, el nombre de archivo no se conservaba si con la confirmación se modificaban más de 1000 archivos. Como consecuencia, los usuarios tenían que cargar más archivos y filtrar el contenido para buscar el archivo en cuestión, lo cual influía en la productividad. Normalmente, los programadores trabajan en el mismo directorio y quieren conservar los directorios en los que trabajan para hacer el seguimiento de los cambios. Ahora, el nombre de archivo se mantiene al cambiar de un control dinámico de concentrador Código a otro, independientemente del número de archivos que se modifiquen en una confirmación. Esto significa que no es necesario que haga clic en Cargar más para buscar el archivo que desea.

Ver etiquetas de Git

Puede ver todas las etiquetas en el repositorio de la página Etiquetas (Figura 19). Si administra todas las etiquetas como versiones, un usuario puede ir a la página de etiquetas para obtener una visión global de todas las versiones del producto.

Ver etiquetas de Git

(Figura 19) Ver etiquetas de Git

Aquí puede diferenciar fácilmente entre una etiqueta sencilla y una anotada, porque en las etiquetas anotadas se muestra el etiquetador y la fecha de creación junto con la confirmación asociada, mientras que en las etiquetas sencillas solo se muestra información de la confirmación.

Eliminar etiquetas de Git

Es posible que se quiera eliminar una etiqueta del repositorio remoto a causa de un error de escritura en el nombre de la etiqueta o porque se ha etiquetado la confirmación que no era. Las etiquetas se pueden eliminar fácilmente en la interfaz de usuario web. Para ello, haga clic en el menú contextual de una etiqueta desde la página Etiquetas y seleccione Eliminar etiqueta (Figura 20).

Nota: Debe tener precaución a la hora de eliminar etiquetas en repositorios remotos.

Eliminar etiquetas de Git

(Figura 20) Eliminar etiquetas de Git

Filtrar etiquetas de Git

En los repositorios antiguos, el número de etiquetas puede aumentar significativamente con el tiempo. También puede haber repositorios cuyas etiquetas se hayan creado en jerarquías, lo que puede dificultar la búsqueda de etiquetas.

Si no encuentra la etiqueta que está buscando en la página de etiquetas, busque el nombre de la etiqueta utilizando el filtro situado en la parte superior de la página Etiquetas (Figura 21).

Filtrar etiquetas de Git

(Figura 21) Filtrar etiquetas de Git

Seguridad de las etiquetas de Git

Ahora puede conceder permisos específicos a los usuarios del repositorio para administrar etiquetas. Puede conceder a los usuarios permiso para eliminar etiquetas o para administrar etiquetas desde esta interfaz (Figura 22).

Seguridad de las etiquetas de Git

(Figura 22) Seguridad de las etiquetas de Git

Obtenga más información acerca de las etiquetas de Git en el blog de Microsoft DevOps.

Completar automáticamente elementos de trabajo al completar solicitudes de incorporación de cambios

Si va a vincular elementos de trabajo a solicitudes de incorporación de cambios, tener todo el contenido actualizado le simplificará las cosas. Así, al completar una solicitud de incorporación de cambios, podrá optar por completar automáticamente los elementos de trabajo vinculados cuando la solicitud se haya combinado correctamente (Figura 23). Si utiliza directivas y solicitudes de incorporación de cambios establecidas para realizar un completado automático, verá la misma opción. Ya no tendrá que acordarse de acceder de nuevo a los elementos de trabajo para actualizar su estado cuando la solicitud de incorporación de cambios se haya completado. Este proceso se realizará automáticamente.

Completar elementos de trabajo vinculados

(Figura 23) Completar elementos de trabajo vinculados

Restablecer los votos de la iteración nueva o de inserción

Los equipos que opten por un flujo de trabajo de aprobación más estricto en las solicitudes de incorporación de cambios, pueden restablecer los votos al insertar nuevos cambios (Figura 24). La nueva opción de configuración se encuentra en la directiva para requerir un número mínimo de revisores.

Restablecer el valor Votos

(Figura 24) Restablecer el valor Votos

Si se define esta opción, se restablecerán todos los votos de todos los revisores siempre que la rama de origen de la solicitud de incorporación de cambios se actualice. La escala de tiempo de esta solicitud registrará una entrada cada vez que se restablezcan los votos como resultado de esta opción (Figura 25).

Restablecer los votos en la escala de tiempo

(Figura 25) Restablecer los votos en la escala de tiempo

Filtrar el árbol de solicitudes de incorporación de cambios por nombre de archivo

Buscar un archivo específico en una solicitud de incorporación de cambios es más fácil que nunca. El nuevo cuadro de filtrado de la vista Archivos permite a los usuarios filtrar la lista de archivos en la vista de árbol (Figura 26).

Buscar un archivo o una carpeta en una solicitud de incorporación de cambios

(Figura 26) Buscar un archivo o una carpeta en una solicitud de incorporación de cambios

El filtro coincide con cualquier parte de la ruta de los archivos de la solicitud de incorporación de cambios. De este modo, se puede buscar por nombres de carpeta, rutas de acceso parciales, nombres de archivo o extensiones (Figura 27).

Buscar resultados

(Figura 27) Buscar resultados

Más opciones de filtrado para los comentarios de la solicitud de incorporación de cambios

Ahora, los comentarios de la vista general de la solicitud de incorporación de cambios y de la vista de archivos tienen las mismas opciones (Figura 28). También puede filtrar para ver solo las conversaciones en las que ha participado.

Filtrado de comentarios en las solicitudes de incorporación de cambios

(Figura 28) Filtrado de comentarios en las solicitudes de incorporación de cambios

Ver las diferencias originales de los comentarios de código en los detalles de la solicitud de incorporación de cambios

A veces cuesta encontrarle el sentido al comentario de una solicitud de incorporación de cambios si el código al que hace referencia se ha modificado (muchas veces, cuando se ha realizado un cambio solicitado) (Figura 29).

Ver diferencias originales

(Figura 29) Ver diferencias originales

Si esto sucede, verá una notificación con un número de actualización en el que puede hacer clic para ver el aspecto del código en el momento en que se creó el comentario (Figura 30).

Notificación de actualización

(Figura 30) Notificación de actualización

Comentarios a la solicitud de incorporación de cambios que se pueden contraer

La revisión del código es una parte fundamental de la experiencia de solicitud de incorporación de cambios. Por ello, hemos agregado nuevas características que permiten a los revisores centrarse en el código. Los revisores de código pueden ocultar fácilmente los comentarios para que no les estorben mientras revisan un código nuevo por primera vez (Figura 31).

Ocultar comentarios

(Figura 31) Ocultar comentarios

Al ocultar los comentarios (Figura 32), estos desaparecen de la vista de árbol y los hilos de comentarios se contraen en la vista del archivo:

Comentarios contraídos

(Figura 32) Comentarios contraídos

Los comentarios contraídos se pueden expandir fácilmente haciendo clic en el icono situado en el margen. Para volver a contraerlos, basta con volver a hacer clic en el icono. La información sobre herramientas (Figura 33) permite echar un vistazo al comentario sin tener que ver todo el hilo.

Información sobre comentarios contraídos

(Figura 33) Información sobre comentarios contraídos

Listas de tareas en descripciones y comentarios de la solicitud de incorporación de cambios

Al preparar una solicitud de incorporación de cambios o al hacer comentarios, a veces se empieza con una lista breve de los elementos de los que se desea realizar el seguimiento, pero se acaba editando el texto o agregando varios comentarios. Las listas de tareas ligeras son una buena forma de hacer el seguimiento de las tareas pendientes, tanto si es el creador como el revisor de la solicitud en la descripción o en un único comentario consolidado. Haga clic en la barra de herramientas de Markdown para empezar o aplicar el formato al texto seleccionado (Figura 34).

Barra de herramientas de la lista de tareas

(Figura 34) Barra de herramientas de la lista de tareas

Cuando haya agregado una lista de tareas (Figura 35), puede activar las casillas para marcar los elementos como completados. Estos se expresan y se almacenan en el comentario como [ ] y [x] en Markdown. Para obtener más información, consulte la guía de Markdown.

Lista de tareas

(Figura 35) Lista de tareas

Posibilidad de hacer “Me gusta” en los comentarios de las solicitudes de incorporación de cambios

Si está de acuerdo con un comentario en una solicitud de incorporación de cambios, puede hacer clic en el botón de Me gusta (Figura 36). Para ver una lista de todas las personas a las que les ha gustado el comentario, pase el botón por encima del botón.

Hacer “Me gusta” a comentarios a la solicitud de incorporación de cambios

(Figura 36) Hacer “Me gusta” a comentarios a la solicitud de incorporación de cambios

Mejora en el flujo de trabajo para la aprobación de sugerencias

Usar la opción Autocompletar (Figura 37) con las solicitudes de incorporación de cambios es una buena forma de mejorar la productividad, pero no sirve para interrumpir los debates activos con los revisores de código. Para facilitar estos debates, se mostrará la opción Aprobar con sugerencias cuando se establezca que una solicitud de incorporación de cambios se complete automáticamente. El usuario podrá cancelar el completado automático para que sus comentarios se puedan leer, o mantener el completado automático definido y permitir que la solicitud de incorporación de cambios se complete automáticamente cuando se cumplan todas las directivas.

Cuadro de diálogo para cancelar el completado automático

(Figura 37) Cuadro de diálogo para cancelar el completado automático

Filtrado de rutas de acceso para las notificaciones de Git

En vez de recibir notificaciones en relación a todas las carpetas de un repositorio, ahora puede optar por recibir notificaciones cuando los miembros del equipo creen solicitudes de incorporación de cambios o código de inserción solamente en las carpetas que le interesen. Al crear suscripciones personalizadas a notificaciones por correo electrónico de solicitudes de inserción o de incorporación de cambios de GIT, verá una nueva opción para filtrar estas notificaciones por la ruta de acceso de la carpeta (Figura 38).

Filtrado de rutas de acceso para las notificaciones

(Figura 38) Filtrado de rutas de acceso para las notificaciones

Plantillas de correo electrónico increíbles para flujos de trabajo de solicitudes de incorporación de cambios

Las alertas por correo electrónico de solicitudes de incorporación de cambios se han actualizado para que sean claras, concisas y se pueda actuar en ellas (Figura 39). La línea de asunto empieza con el título de la solicitud e información secundaria, como el nombre del repositorio, y el id. aparece al final. El asunto incluye el nombre del autor para que sea más fácil aplicar reglas y filtros basados en la persona que ha creado la solicitud de incorporación de cambios.

El cuerpo de los correos electrónicos de alerta incluye una plantilla actualizada que, en primer lugar, resume el motivo por el que se envió la alerta, después agrega los metadatos importantes (título, nombre de rama y descripción) y, por último, un botón principal de llamada a la acción. Más abajo, en el correo electrónico, se recoge información adicional, como los revisores, los archivos y las confirmaciones.

Plantilla de correo electrónico mejorada

(Figura 39) Plantilla de correo electrónico mejorada

En la mayoría de las alertas, la llamada a la acción (Figura 40) sirve para ver la solicitud de incorporación de cambios en la Web. Sin embargo, si recibe una notificación sobre un comentario concreto, la llamada a la acción le dirigirá directamente al comentario para que pueda encontrar fácilmente el código y la conversación anterior que le sirvan como contexto.

Llamada a la acción en el correo electrónico

(Figura 40) Llamada a la acción en el correo electrónico

Extensibilidad del estado de solicitud de incorporación de cambios

Usar directivas de rama puede ser una buena forma de aumentar la calidad del código. Sin embargo, estas directivas se limitan a las integraciones proporcionadas de forma nativa por VSTS. Con la nueva API de estado de las solicitudes de incorporación de cambios y la directiva de rama correspondiente, los servicios de terceros se pueden utilizar en el flujo de trabajo de la solicitud igual que las características nativas de VSTS.

Cuando se envía un servicio a la API de estado para una solicitud de incorporación de cambios, aparece inmediatamente en la vista de detalles de la solicitud en la nueva sección Estado (Figura 41). En la sección Estado se muestra la descripción y se crea un vínculo a la dirección URL proporcionada por el servicio. Las entradas de estado también admiten un menú de acción (...) que es extensible para que las extensiones web puedan agregar nuevas acciones.

Sección Estado de la solicitud de incorporación de cambios

(Figura 41) Sección Estado de la solicitud de incorporación de cambios

El Estado por sí solo no impide la realización de una solicitud de incorporación de cambios; aquí es donde entra en juego la directiva. Después de publicar el estado de la solicitud, se puede configurar una directiva. Desde la experiencia de las directivas de rama, hay una nueva directiva disponible para requerir la aprobación de servicios externos. Seleccione + Agregar servicio para que empiece el proceso (Figura 42).

Agregar una nueva directiva

(Figura 42) Agregar una nueva directiva de solicitud de incorporación de cambios

En el cuadro de diálogo, seleccione de la lista el servicio que está publicando el estado y elija las opciones de la directiva que quiera (Figura 43).

Establecer una directiva de estado

(Figura 43) Establecer una directiva de estado de la solicitud de incorporación de cambios

Cuando la directiva esté activa, el estado se mostrará en la sección Directivas, en Obligatorias u Opcionales en función del caso, y se forzará la finalización de la solicitud de incorporación de cambios según corresponda.

Para obtener más información sobre la API de estado y probarla personalmente, consulte la documentación y los ejemplos.

Wiki

Ahora todos los proyectos son compatibles con su propio Wiki (Figura 44). Puede escribir páginas cómodamente que permitan a los miembros del equipo entender su proyecto, utilizarlo y hacer contribuciones en él.

Página Wiki

(Figura 44) Página de Wiki de la solicitud de incorporación de cambios

Algunas de las características principales del nuevo Wiki son:

  • Una experiencia de edición simplificada gracias a la sintaxis de Markdown.
  • La nueva página permite especificar un título y agregar contenido. (Figura 45) Title wiki

    (Figura 45) Título del wiki para la solicitud de incorporación de cambios

  • Compatibilidad con etiquetas HTML en Markdown (Figura 46).

Etiquetas HTML del Wiki

(Figura 46) Etiquetas HTML del Wiki para la solicitud de incorporación de cambios

  • Posibilidad de cambiar el tamaño de las imágenes según le convenga en la carpeta de Markdown (Figura 47).

Cambiar el tamaño de la imagen

(Figura 47) Cambiar el tamaño de la imagen en la solicitud de incorporación de cambios

  • Un completo panel de administración de páginas que permite modificar el orden, cambiar la prioridad y administrar las páginas.
  • Posibilidad de filtrar por título las páginas de los wikis de gran tamaño (Figura 48).

Menú del Wiki

(Figura 48) Menú del Wiki en la solicitud de introducción de cambios

Obtenga más información sobre cómo empezar con Wiki.

  • A medida que vaya utilizando Wiki, es posible que guarde cambios por error. Ahora puede revertir a una versión anterior de una página Wiki. Para ello, vaya a los detalles de la revisión y haga clic en el botón Revertir (Figura 49).

Botón Revertir wiki

(Figura 49) Botón Revertir wiki en la solicitud de introducción de cambios

Crear una página Wiki a partir de un vínculo roto. Durante la creación de wikis, hemos detectado que a veces se crea una tabla de contenido en una página Wiki que incluye vínculos que no existen (Figura 50). y en los que los usuarios hacen clic para crear las páginas reales. Anteriormente, solucionábamos esta situación con una advertencia en la que sugeríamos que el vínculo estaba roto o que la página no existía. Ahora lo tratamos como un escenario estándar de Wiki, y se permite la creación de páginas.

Crear una página Wiki

(Figura 50) Crear una página Wiki en una solicitud de introducción de cambios

La extensión Wiki de Marketplace está en desuso. Si anteriormente utilizaba esa extensión, puede migrar las páginas wiki al nuevo sitio wiki con esta herramienta de migración. Obtenga más información sobre cómo migrar las páginas wiki existentes al nuevo Wiki.

Administración de paquetes

Actualización de la experiencia de administración de paquetes

Ahora las direcciones URL funcionan con el nombre y la versión del paquete, en vez de usar GUID. Esto facilita la creación de direcciones URL de paquetes (Figura 50). El formato es el siguiente: <tfsserverurl>/<project|team>/_packaging?feed=<feed>&package=<package>&version=<version>&protocolType=<NuGet|Npm|Maven>&_a=package.

Dirección URL del paquete

(Figura 51) Dirección URL del paquete en la solicitud de introducción de cambios

Como respuesta a esta sugerencia de UserVoice (Figura 52), ahora puede ocultar versiones de paquetes eliminados de todos los usuarios de la fuente (¡ya no tendrá que tachar más paquetes!).

Ocultar paquetes eliminados

(Figura 52) Ocultar paquetes eliminados

Cualquier acción que pueda realizar desde la página de detalles del paquete ahora la puede llevar a cabo desde el menú contextual en la lista de paquetes.

La lista de paquetes contiene una nueva columna titulada Últimas inserciones (Figura 53), con fechas humanizadas para que pueda encontrar fácilmente los paquetes actualizados recientemente.

Columna Últimas inserciones

(Figura 53) Columna Últimas inserciones

Paquetes de Maven

Ahora ofrecemos soporte para hospedar los artefactos de Maven en TFS 2018 (Figura 54). Los artefactos de Maven permiten a los desarrolladores de Java compartir fácilmente el código y los componentes. Consulte nuestra guía de introducción para saber cómo compartir artefactos de Maven mediante la Administración de paquetes.

Paquetes de Maven

(Figura 54) Paquetes de Maven

Nueva tarea de NuGet unificada

Hemos combinado las tareas NuGet Restore, NuGet Packager y NuGet Publisher en una compilación de NuGet unificada para que se alinee mejor con el resto de la biblioteca de tareas de la compilación. De forma predeterminada, la nueva tarea utiliza NuGet 4.0.0. En consecuencia, hemos descartado las tareas antiguas y le recomendamos que, cuando tenga un momento, se pase a la nueva tarea de NuGet. Este cambio coincide con una serie de mejoras que se describen a continuación, y a las cuales solo podrá acceder utilizando la tarea combinada.

Como parte de este trabajo, también hemos lanzado la nueva tarea Instalador de la herramienta NuGet, que controla la versión de NuGet disponible en la ruta de acceso y que utiliza la nueva tarea de NuGet. Por lo tanto, para usar una versión más reciente de NuGet, agregue la tarea Instalador de la herramienta NuGet al inicio de la compilación (Figura 55).

Tarea de NuGet

(Figura 55) Tarea de NuGet

Opción “Permitir la omisión de duplicados” de NuGet

Muchos clientes de NuGet nos han dicho que generan un conjunto de paquetes de los que solo actualizan unos cuantos (y que, por lo tanto, tienen números de versión actualizados). La tarea de compilación de NuGet tiene una nueva opción Permitir la omisión de duplicados que permitirá que la tarea continúe si intenta insertar paquetes en una fuente de TFS/VSTS cuya versión ya se esté utilizando.

Actualizaciones de tareas de la compilación de npm

Tanto si crea un proyecto de npm en Windows como en Linux o en Mac, la nueva tarea de compilación de NPM funcionará perfectamente. También hemos reorganizado la tarea para facilitar tanto la instalación de npm como la publicación de npm. En la instalación y la publicación, hemos simplificado la adquisición de credenciales para que las credenciales de los registros que aparecen en el archivo .npmrc del proyecto se puedan almacenar de forma segura en un punto de conexión de servicio. Asimismo, si utiliza una fuente de VSTS/TFS, tenemos un selector que le permitirá seleccionar una fuente. A continuación, se generará un .npmrc con credenciales necesarias que utilizará el agente de compilación.

Ahora Maven admite fuentes autenticadas

A diferencia de NuGet y npm, anteriormente la tarea de compilación de Maven no funcionaba con fuentes autenticadas. Hemos actualizado la tarea de Maven para que pueda trabajar fácilmente con fuentes de VSTS/TFS (Figura 56).

Tarea de dotnet

(Figura 56) Tarea de dotnet

La tarea de dotnet admite fuentes autenticadas y proyectos web

Con la siguiente versión principal de la tarea dotnet (2.x) se solucionan muchas de las solicitudes que hemos recibido y se corrige un conjunto de errores de los que hemos hecho el seguimiento durante un tiempo.

  1. En primer lugar, ahora dotnet admite fuentes de paquetes autenticadas, como la administración de paquetes, por lo que ya no tendrá que utilizar la tarea de NuGet para restaurar paquetes desde fuentes de paquetes privados.
  2. El comportamiento del campo Ruta de acceso a proyectos ha cambiado en la versión 2.0 de la tarea. En versiones anteriores de la tarea, si no se encontraban los archivos de proyecto que coincidieran con el patrón especificado, la tarea acostumbraba a registrar una advertencia y, a continuación, se realizaba correctamente. En tales situaciones, a veces puede ser difícil de entender por qué la compilación se ha realizado correctamente pero las dependencias no se han restaurado. Ahora, si no se encuentran los archivos de proyecto que coincidan con el patrón especificado, la tarea no se realizará correctamente. Esto está en consonancia con el comportamiento de otras tareas y es fácil de entender y usar.
  3. En versiones anteriores del comando de publicación de la tarea, la tarea modificaba la ruta de acceso de salida colocando todos los archivos en una carpeta que llevaba el mismo nombre del archivo de proyecto, incluso si se pasaba una ruta de acceso de salida explícita. Esto dificultaba la concatenación de comandos. Ahora es posible controlar el archivo de la ruta de acceso de salida.

También hemos lanzado la nueva tarea Instalador de la herramienta dotnet, que controla la versión de dotnet disponible en la ruta de acceso y que utiliza la nueva tarea de dotnet. Por lo tanto, para usar una versión más reciente de dotnet, agregue la tarea Instalador de la herramienta dotnet al inicio de la compilación.

Trabajar fuera de su cuenta/colección

Ahora trabajar con fuentes fuera de su servidor de TFS o su cuenta de VSTS es más fácil, tanto si se trata de fuentes de Administración de paquetes en otra cuenta de VSTS o servidor de TFS, como si son fuentes que no sirven para administrar paquetes, como NuGet.org/npmjs.com, Artifactory o MyGet (Figura 57). Los tipos de punto de conexión de servicio dedicados para NuGet y npm facilitan la introducción de credenciales correctas y permiten que las tareas de la compilación funcionen adecuadamente durante las operaciones de descarga e inserción de paquetes.

Fuentes que se van a utilizar

(Figura 57) Fuentes que se van a utilizar

Selector de fuentes para fuentes de VSTS/TFS

Siempre recomendamos que se registre un archivo de configuración (por ejemplo, NuGet.Config, .npmrc, etc.) para que el repositorio de la fuente tenga registrado de dónde provienen los paquetes. Aun así, hemos oído casos en los que esta opción no es la más adecuada, así que hemos agregado una nueva opción, Usar paquetes de esta fuente de VSTS/TFS, que permite seleccionar una fuente y generar automáticamente un archivo de configuración que se usará en ese paso de compilación (Figura 58).

Selector de fuentes

(Figura 58) Selector de fuentes

Compilación y versión

Eliminación de la compatibilidad con las compilaciones XAML

En TFS 2015, se introdujo un sistema de compilación multiplataforma basado en web. En TFS 2018, este es el único modelo que se admite. Las compilaciones de XAML no se admiten en TFS 2018. Le recomendamos que migre las compilaciones XAML. Si no está preparado para migrar y necesita seguir utilizando las compilaciones XAML, no debe pasar a TFS 2018.

Al actualizarse a TFS 2018:

  • Si tiene datos de la compilación XAML en su colección de proyectos de equipo, recibirá una advertencia sobre la eliminación de las características de la compilación XAML.

  • En TFS 2018, podrá ver compilaciones XAML finalizadas, pero no podrá poner nuevas a la cola.

  • No hay ninguna versión nueva del agente o controlador de compilaciones XAML en TFS 2018, y no puede configurar ninguna versión anterior del agente o controlador de compilaciones XAML para que funcione con TFS 2018.

Para obtener una explicación de nuestro plan de obsolescencia de la compilación XAML, consulte este artículo de blog.

Exportar e importar las definiciones de la compilación

Las definiciones de la compilación se implementan internamente como archivos .json, por lo que en el historial del archivo podrá ver los detalles de los cambios. A partir de las definiciones de la compilación se pueden clonar y hacer plantillas, pero muchos usuarios deseaban poder hacer una copia de la lógica de compilación de integración continua para reutilizarla en otros proyectos de equipo. De hecho, esta fue una de las diez solicitudes más frecuentes en UserVoice.

Por ello, nos complace anunciar que ahora ya es posible hacerlo (Figura 59) y (Figura 60).

Exportar la definición de la compilación

(Figura 59) Exportar la definición de la compilación

Importar la definición de la compilación

(Figura 60) Importar la definición de la compilación

Extensiones con plantillas de compilación

Las plantillas de compilación permiten crear una base de referencia para que los usuarios empiecen a definir su proceso de compilación. Hoy hemos enviado unas cuantas. Aunque se podían cargar plantillas nuevas a la cuenta, los autores de las extensiones no podían incluir plantillas nuevas como parte de una extensión. Ahora puede incluir plantillas de compilación en las extensiones. Por ejemplo:

{  "id": "Template1", 
   "type": "ms.vss-build.template", 
   "targets": [ "ms.vss-build.templates" ], 
   "properties": { "name": "Template1" } }

Para consultar un ejemplo completo, vea https://github.com/Microsoft/vsts-extension-samples/tree/master/fabrikam-build-extension.

Sugerencia

Puede utilizar esta capacidad para ofrecer y compartir la misma plantilla personalizada en todos los proyectos de equipo.

Dejar de utilizar una tarea en una extensión

Ahora puede dejar de utilizar una tarea en una extensión. Para que funcione, debe agregar la siguiente variable a la versión más reciente de la tarea:

"deprecated": true

Cuando el usuario busca tareas en desuso (Figura 61), estas tareas se insertan al final y se agrupan en una sección que está contraída de forma predeterminada. Si una definición ya está utilizando una tarea en desuso, mostramos un distintivo de la tarea en desuso para instar a los usuarios a cambiar a la opción de reemplazo.

Notificación sobre tarea en desuso

(Figura 61) Notificación sobre tarea en desuso

Puede ayudar a los usuarios a obtener información sobre la tarea de reemplazo si la menciona en la descripción de la tarea (Figura 62). De esta forma, la descripción orientará a los usuarios para utilizar la tarea correctamente tanto en el catálogo de tareas como en las definiciones de la compilación/versión existentes.

Descripción de la tarea en desuso

(Figura 62) Descripción de la tarea en desuso

Permitir que las secciones de la compilación en las que se ha contribuido controlen la visibilidad de la sección

Anteriormente, si usaba una extensión que tenía tareas de compilación y secciones del resumen de la compilación, veía la sección de resumen de la compilación aunque no utilizara la tarea de compilación en esa compilación. Ahora puede optar por ocultar o mostrar esta sección en la página de resumen de la compilación. Para ello, agregue la siguiente línea en el código de extensión y establezca el valor en true o false:

VSS.getConfiguration().setSectionVisibility("$(publisherId).$(extensionId).$(sectionId)", false);

Vea el ejemplo que se incluye en el repositorio vsts-extension-samples de Microsoft.

Compatibilidad con grupos de variables

Los grupos de variables estaban disponibles para utilizarse en definiciones de la versión y ahora ya se pueden usar también en las definiciones de la compilación. Obtenga más información sobre la creación de un grupo de variables. Esto se ha desarrollado y se le ha dado prioridad a partir de las sugerencias relacionadas con variables de compilación/versión en el nivel de proyecto y grupos de variables en las definiciones de la compilación.

Trabajar con archivos seguros, como certificados de Apple

Hemos agregado una biblioteca de archivos seguros de uso general (Figura 63).

Biblioteca de archivos seguros

(Figura 63) Biblioteca de archivos seguros

Utilice la biblioteca de archivos seguros para almacenar en el servidor archivos como certificados de firma, perfiles de aprovisionamiento de Apple, archivos de almacén de claves de Android y claves SSH sin tener que confirmarlos en el repositorio fuente.

El contenido de los archivos seguros se cifra y solo se puede usar durante los procesos de compilación o lanzamiento, haciendo referencia a ellos desde una tarea. Los archivos seguros están disponibles en diferentes definiciones de compilación y versión del proyecto de equipo en función de la configuración de seguridad. Los archivos seguros siguen el modelo de seguridad de la biblioteca.

También hemos agregado algunas tareas de Apple que sacan partido de esta nueva característica:

Nueva versión del editor de definiciones

Activado de forma predeterminada: el nuevo editor de definición de versiones está activado de forma predeterminada para todos los usuarios. Tanto usted como los administradores de TFS podrán desactivarlo desde la opción Características de vista previa que encontrará en el menú de perfil. Consulte Características de vista previa para obtener más información.

Siguiendo nuestro recorrido por la actualización de experiencias de compilación y versión, y después del nuevo editor de definiciones de la compilación, hemos reinventado nuestro editor de definiciones de la versión para crear una experiencia más limpia e intuitiva, hemos corregido algunos puntos débiles y hemos agregado nuevas capacidades. Una de las características más eficaces del nuevo editor es su capacidad para ayudarle a crear un modelo mental o a visualizar cómo podrían progresar las implementaciones de sus entornos. Además, ahora las opciones de configuración de las aprobaciones, del entorno y de la implementación están en contexto y se pueden configurar fácilmente (Figura 65).

Visualización de la canalización

La canalización (Figura 64) en el editor proporciona una vista gráfica de cómo progresan las implementaciones en una versión. La versión consumirá los artefactos y los implementará en los entornos. El diseño y la vinculación de los entornos reflejan la configuración del desencadenador definida para cada entorno.

Canalización

(Figura 64) Canalización de la versión

Interfaz de usuario de la configuración en contexto

Ahora los artefactos, los desencadenadores de la versión, las aprobaciones de implementación previa y posterior, las propiedades del entorno y las opciones de configuración de la implementación se muestran en contexto y se pueden configurar fácilmente (Figura 65).

Configuración de la versión

(Figura 65) Configuración de la versión

Introducción a las plantillas de implementación

Para facilitar los primeros pasos al crear un nuevo entorno, se muestra una lista de plantillas (estándares y personalizadas) (Figura 66).

Plantillas de implementación

(Figura 66) Plantillas de implementación

Editor de tareas y fases mejorado

Todas las mejoras incluidas en el nuevo editor de definición de compilación ahora también están disponibles en el editor de definición de la versión (Figura 67). Puede buscar tareas y agregarlas utilizando el botón Agregar o arrastrando y colocando. Puede cambiar el orden de las tareas o clonarlas con arrastrar/colocar.

Editor de tareas

(Figura 67) Editor de tareas

Pestañas Grupos de variables, Retención y Opciones

Ahora, desde la pestaña Opciones, puede vincular o desvincular grupos de variables (Figura 68), establecer directivas de retención para entornos individuales y modificar la configuración en el nivel de definición de la versión, como el formato del número de la versión. También puede guardar un entorno como una plantilla de implementación, establecer permisos en el nivel del entorno y cambiar el orden de las fases desde la pestaña Tareas.

Grupos de variables

(Figura 68) Grupos de variables

Use las operaciones en el nivel de entorno para guardarlas como plantillas y establecer la seguridad (Figura 69).

Menú Entorno

(Figura 69) Menú Entorno

Implementación de la máquina virtual con grupos de implementación

Ahora, Release Management admite una sólida implementación estándar en varios equipos. Puede organizar las implementaciones en varios equipos y realizar actualizaciones graduales, y asegurarse mientras tanto de que la aplicación estará totalmente disponible.

La capacidad de implementación basada en agentes se basa en los mismos agentes de compilación e implementación. Sin embargo, a diferencia del planteamiento que había hasta ahora, en el que debía instalar los agentes de compilación e implementación en un conjunto de servidores proxy de un grupo de implementaciones y dirigir las implementaciones a los servidores de destino, ahora deberá instalar el agente directamente en cada uno de los servidores de destino y dirigir la implementación gradual hacia esos servidores. Puede usar el catálogo de tareas completo en los equipos de destino.

Un grupo de implementaciones (Figura 70) es un grupo lógico de destinos (equipos) con agentes instalados en cada uno de ellos. Los grupos de implementación representan entornos físicos, como desarrollo de cuadro único, control de calidad en varios equipos y una granja de máquinas para UAT/Prod. También especifican el contexto de seguridad para los entornos físicos.

Grupos de implementación

(Figura 70) Grupos de implementación

Puede utilizar esta opción en cualquier máquina virtual que registre con nuestro agente. También hemos facilitado mucho el registro con Azure, gracias a la compatibilidad con una extensión de máquina virtual de Azure que instala automáticamente el agente cuando se inicia la máquina virtual. Al registrarla, la máquina virtual de Azure hereda las etiquetas automáticamente.

Cuando tenga un grupo de implementaciones, solo tendrá que configurar las opciones que quiera que ejecutemos en dicho grupo (Figura 71). Las etiquetas le permiten controlar qué se ejecuta en cada equipo, pero también puede supervisar la velocidad de ejecución del lanzamiento.

Configurar los grupos de implementaciones

(Figura 71) Configurar los grupos de implementaciones

Al ejecutar la implementación, en los registros se muestra la progresión de todo el grupo de equipos de destino (Figura 72).

Progreso del grupo de implementaciones

(Figura 72) Progreso del grupo de implementaciones

Esta característica está ahora integrada en Release Management. No se requieren licencias adicionales para usarla.

Referencias del grupo de tareas

Los grupos de tareas le permiten definir un conjunto de tareas que puede agregar a las definiciones de la implementación o versión. Esto resulta útil si tiene que usar la misma agrupación de tareas en diferentes compilaciones o versiones. Para ayudarle a hacer el seguimiento de los consumidores de un grupo de tareas, ahora puede ver las definiciones de la compilación, las definiciones de la versión y los grupos de tareas que hacen referencia a su grupo de tareas (Figura 73).

Referencias del grupo de tareas

(Figura 73) Referencias del grupo de tareas

Si intenta eliminar un grupo de tareas al que todavía se hace referencia, le avisaremos y le ofreceremos un vínculo a dicha página.

Versiones del grupo de tareas

Realizar cambios en grupos de tareas puede parecer arriesgado porque el cambio se hace efectivo en todas las definiciones que utilizan el grupo de tareas. Con las versiones de los grupos de tareas, ahora puede crear un borrador, previsualizar las versiones de grupos de tareas y seguir ofreciendo versiones estables para las definiciones más importantes hasta que esté todo listo para hacer el cambio. Después de hacer algunos borradores y algunas iteraciones, puede publicar una versión estable. Si los cambios son importantes por naturaleza, puede optar por publicar el grupo de tareas como versión preliminar (una nueva versión principal). También puede publicarla directamente como una versión estable actualizada (Figure 74).

Cuando haya disponible una nueva versión principal (o vista preliminar) del grupo de tareas, el editor de la definición le avisará de ello. Si esa versión principal es una versión preliminar, incluso verá un mensaje en que se le indica “Pruébela”. Cuando el grupo de tareas sale de la versión preliminar, las definiciones que lo usen se actualizarán automáticamente, deslizándose por ese canal principal (Figura 75).

Guardar como borrador

(Figura 74) Guardar el grupo de tareas como borrador

Publicar el grupo de tareas como vista previa

(Figura 75) Publicar el grupo de tareas como vista previa

Importar y exportar grupos de tareas

Aunque los grupos de tareas se pueden reutilizar dentro de un mismo proyecto, sabemos que recrear un grupo de tareas en diferentes proyectos y cuentas puede ser muy complicado. Con la importación y exportación del grupo de tareas (Figura 76), como hemos hecho con las definiciones de la versión, ahora puede hacer una exportación como archivo JSON e importarlo donde quiera. También hemos habilitado los grupos de tareas anidados, que se expanden durante la exportación.

Exportar grupos de tareas

(Figura 76) Exportar grupos de tareas

Compatibilidad con la configuración múltiple en las tareas del lado del servidor (sin agente)

Si especifica multiplicadores variables de tareas del lado del servidor (sin agente) (Figura 77), ahora puede ejecutar el mismo conjunto de tareas en una fase con diferentes configuraciones que se ejecutan en paralelo.

Configuración múltiple de tareas sin agente

(Figura 77) Configuración múltiple de tareas sin agente

Compatibilidad con variables en la tarea de intervención manual

Ahora la tarea de intervención manual (Figura 78) admite el uso de variables dentro del texto de instrucciones que se muestra a los usuarios durante la ejecución de la tarea, en el punto en el que el usuario puede reanudar o rechazar la ejecución del proceso de lanzamiento. Se puede incluir cualquier variable definida y disponible en la versión, y los valores se usarán en las notificaciones, así como en el correo electrónico que se envía a los usuarios (Figura 79).

Tarea de intervención manual

(Figura 78) Tarea de intervención manual

Cuadro de diálogo de intervención manual pendiente

(Figura 79) Cuadro de diálogo de intervención manual pendiente

Controlar las versiones de un entorno en función de la rama de origen

Se puede configurar la definición de una versión para que desencadene automáticamente una implementación al crear una versión, normalmente después de que se complete correctamente una compilación del origen. Sin embargo, puede ser que desee implementar solamente compilaciones de ramas específicas de la fuente, en vez de hacerlo cuando una compilación se completa correctamente.

Por ejemplo, puede ser que quiera que todas las compilaciones se implementen en entornos de desarrollo y de pruebas, pero que solo determinadas compilaciones se implementen en el entorno de producción. Para ello, anteriormente, debía conservar dos canalizaciones de la versión: uno para el entorno de desarrollo y pruebas, y otro para el entorno de producción.

Release Management admite ahora el uso de filtros de artefactos para cada entorno. Esto significa que puede especificar qué versiones se implementarán en cada entorno cuando se cumplan las condiciones que desencadenan la implementación (por ejemplo, cuando una compilación se completa correctamente y crea una nueva versión). En la sección Desencadenador del cuadro de diálogo Condiciones de implementación del entorno (Figura 80), seleccione las condiciones del artefacto, como la rama de origen y las etiquetas para las compilaciones que desencadenarán una nueva implementación para ese entorno.

Cuadro de diálogo con las condiciones de implementación

(Figura 80) Cuadro de diálogo con las condiciones de implementación

Además, ahora la página Resumen de la versión (Figura 81) contiene una sugerencia emergente que indica el motivo por el que todas las implementaciones "no iniciadas" se encuentran en ese estado y sugiere cómo y cuándo se iniciará la implementación.

Sugerencia en el resumen de la versión

(Figura 81) Sugerencia en el resumen de la versión

Desencadenadores de la versión para repositorios Git como una fuente de artefacto

Release Management permite ahora configurar un desencadenador de implementaciones continuas (Figura 82) para repositorios de GIT vinculados a una definición de la versión en cualquiera de los proyectos de equipo de la misma cuenta. Esto le permite desencadenar automáticamente una versión cuando se realiza una confirmación nueva en el repositorio. También puede especificar una rama en el repositorio de Git, en el que la confirmación desencadene una versión.

Desencadenadores de la versión

(Figura 82) Desencadenadores de la versión

Desencadenadores de la versión: implementación continua para cambios insertados en un repositorio Git

Release Management siempre ha ofrecido la posibilidad de configurar una implementación continua cuando se completa una compilación. Sin embargo, ahora también puede configurar una implementación continua en la inserción de Git. Esto significa que los repositorios de Git de Team Foundation y GitHub se pueden vincular como orígenes de artefacto a una definición de la versión. A continuación, pueden desencadenar automáticamente versiones para aplicaciones como Node.JS y PHP, que no se generan a partir de una compilación y, por lo tanto, no necesitan una acción de compilación para la implementación continua.

Mejoras en las tareas del servidor

Hemos realizado dos mejoras en las tareas del servidor (tareas que se ejecutan dentro de una fase de servidor).

Hemos agregado una nueva tarea que puede usarse para invocar las API de REST HTTP genéricas (Figura 83) como parte de la canalización automatizada. Por ejemplo, se puede utilizar para invocar el procesamiento específico con una función de Azure y esperar a que finalice.

Tarea de la API de REST

(Figura 83) Tarea de la API de REST

También hemos agregado la sección Opciones de control (Figura 84) en todas las tareas de servidor. El comportamiento de la tarea ahora pasa por definir las opciones Habilitada, Continuar en caso de error, Ejecutar siempre y Tiempo de espera.

Opciones del control de tareas

(Figura 84) Opciones del control de tareas

Notificación del estado de la versión en el concentrador de código

Actualmente, si desea saber si una confirmación está implementada en el entorno de producción del cliente, primero debe identificar qué compilación consume la confirmación y, a continuación, comprobar todos los entornos de versión en los que se ha implementado la compilación. Ahora esto es mucho más fácil gracias a la integración del estado de implementación en la notificación del estado del concentrador de código para mostrar la lista de entornos en los que está implementado el código. En cada implementación, el estado se registra en la última confirmación que formaba parte de la implementación. Si se implementa una confirmación en diferentes definiciones de la versión (con diferentes entornos), cada una tiene una entrada en la notificación y se muestra el estado de cada entorno (Figura 85). De esta forma se mejora la rastreabilidad de la confirmación de código en las implementaciones.

Notificación del estado de la versión

(Figura 85) Notificación del estado de la versión

De forma predeterminada, al crear una definición de la versión, el estado de la implementación se registra para todos los entornos. Pero puede elegir de forma selectiva los entornos cuyo estado de implementación deba mostrarse en la notificación de estado (por ejemplo, mostrar únicamente los entornos de producción) (Figura 86).

Cuadro de diálogo con las opciones de implementación

(Figura 86) Cuadro de diálogo con las opciones de implementación

Mejoras en el menú de definición de la compilación al agregar artefactos

Al agregar artefactos de compilación a una definición de versión, ahora puede ver las definiciones con la información de organización de carpetas y simplificar la elección de la definición deseada (Figura 87). Esto permite diferenciar más fácilmente el mismo nombre de la definición de la compilación en diferentes carpetas.

Agregar un artefacto

(Figura 87) Agregar un artefacto

La lista de definiciones se filtra en función de las que contengan el término de filtrado.

Revertir la definición de la versión a una versión anterior

Hasta el momento, al actualizar la definición de una versión, no se podía revertir directamente a una versión anterior. La única forma consistía en buscar los cambios en el historial de definiciones de la versión y, a continuación, editar manualmente la definición de la versión. Ahora, con la característica Revertir definición (Figura 88), puede elegir una versión anterior de la definición de una versión (o revertir a una anterior) desde la pestaña Historial de la definición de la versión.

Revertir la definición de la versión

(Figura 88) Revertir la definición de la versión

Pruebas

Se ha retirado la compatibilidad con el Centro de laboratorio y los flujos de pruebas automatizadas en Microsoft Test Manager

Con la evolución de la administración de compilación y versión (Release Management), las compilaciones XAML ya no se admiten en TFS 2018 y, por consiguiente, actualizaremos la compatibilidad para usar Microsoft Test Manager (MTM) con TFS. A partir de TFS 2018, ya no se admite el uso del Centro de pruebas o del Centro de laboratorio en MTM para hacer pruebas automatizadas. Si no está preparado para migrar y dejar de utilizar las compilaciones XAML y el Centro de laboratorio, no debe pasar a TFS 2018.

La actualización a TFS 2018 tiene el impacto siguiente:

Centro de laboratorio:
  • Ya no se admite:
    • Los controladores de pruebas no se pueden registrar con TFS para crear y administrar entornos de laboratorio.
    • Los controladores de pruebas existentes registrados con TFS pasarán a funcionar sin conexión y los entornos de laboratorio existentes se mostrarán con el estado “No está listo”.
  • Alternativa recomendada:
Pruebas automatizadas:
Pruebas manuales:
  • Todos los escenarios de pruebas manuales siguen siendo totalmente compatibles. Mientras que las pruebas manuales se pueden ejecutar utilizando MTM con TFS 2018, los entornos de laboratorio no se pueden utilizar para ejecutar pruebas manuales.
  • En todos los escenarios de pruebas manuales, es muy recomendable utilizar el concentrador de pruebas en el acceso web de TFS.

Mejoras en la rastreabilidad de las pruebas exploratorias para los vínculos de elementos de trabajo, iteraciones y rutas de acceso

A partir de los comentarios recibidos de los equipos que realizan pruebas exploratorias, estamos mejorando los vínculos de rastreabilidad mientras archivamos errores, tareas o casos de prueba en la extensión Prueba y comentarios. Ahora los errores y las tareas creados durante la exploración de requisitos se crearán con la misma ruta de acceso e iteración que la del requisito, en vez de usar las opciones predeterminadas del equipo. Ahora los casos de prueba creados durante la exploración de los requisitos se vincularán a un vínculo Pruebas <-> Prueba realizada por en vez de usar el vínculo Primario <-> Secundario, de forma que los casos de prueba que cree se agregarán automáticamente al requisito en función de los conjuntos de pruebas. Por último, los elementos de trabajo creados mientras no se exploraba específicamente ningún requisito se archivarán en la iteración predeterminada del equipo en lugar de usar la iteración actual, de forma que los elementos de trabajo nuevos no entren en la iteración actual una vez completada la planificación del sprint.

Filtros para elementos de trabajo del caso de prueba en conjuntos y planes de pruebas en el concentrador de pruebas

Además de los filtros en los campos Prueba, como Resultado, Configuración o Evaluador, ahora puede usar los filtros en campos de elementos de trabajo de casos de pruebas, como Título, Estado y Asignado a (Figura 89).

Filtros del caso de prueba

(Figura 89) Filtros del caso de prueba

Gráficos de tendencia de pruebas para ejecuciones de pruebas y entornos de la versión

Estamos agregando compatibilidad con los entornos de versión en el widget Tendencia de los resultados de la prueba (Figura 90) para que pueda hacer el seguimiento del estado de los entornos de prueba en los paneles de VSTS. Igual que para los resultados de las pruebas en Compilación, ahora puede crear gráficos de tendencias que muestren la tasa de pruebas superadas, el recuento de pruebas total, las pruebas correctas o con errores y la duración de la prueba en los entornos de la versión. El filtro Serie de pruebas también le permite filtrar los gráficos según una ejecución de prueba concreta dentro de un entorno.

Gráfico de tendencias de prueba

(Figura 90) Gráfico de tendencias de prueba

Compatibilidad con el formato de Markdown para los comentarios de la ejecución de pruebas y del resultado de las pruebas

Estamos agregando compatibilidad para dar formato a los comentarios de Serie de pruebas y de Resultado de pruebas con la sintaxis de Markdown. Puede utilizar esta característica para crear texto con formato o vínculos rápidos a direcciones URL en los comentarios. Puede actualizar los comentarios de Resultado de pruebas en la página Resumen de los resultados con Actualizar análisis y los comentarios de Serie de pruebas en la página Resumen de ejecución con Actualizar comentarios en el concentrador Prueba.

Al analizar el resultado de la prueba en la página de resumen Compilación o Versión o en el concentrador Prueba, ahora puede asociar un error existente con una prueba que presente fallos. Esto resulta útil cuando se producen errores en una prueba a causa de un motivo conocido que presenta un error ya registrado.

Ya no se proporciona la extensión de TFS para SharePoint

TFS 2018 y las versiones posteriores ya no admiten la extensión de TFS para SharePoint. Además, las pantallas que se utilizan para configurar la integración entre un servidor de TFS y un servidor de SharePoint se han quitado de la Consola de administración de Team Foundation.

En el futuro, no ofreceremos soporte para la integración de servidor a servidor e integraremos el uso de API públicas y marcos de extensibilidad.

Si va a actualizar un servidor con la integración de TFS/SharePoint configurada, le ofrecemos una solución para abandonar la integración de servidor a servidor. Los sitios de TFS SharePoint se seguirán mostrando después de la actualización, pero las características de integración se deshabilitarán. Para obtener más información e instrucciones, visite este enlace.

Interrumpir los Centros de reunión

Los equipos de desarrollo modernos se basan en gran medida en la colaboración. Las personas quieren (y necesitan) un lugar para controlar la actividad (notificaciones) y hablar sobre ella (chat). Hace unos cuantos años, detectamos esta tendencia y creamos los Centros de reunión para dar respuesta a esta necesidad. Desde entonces, han surgido más soluciones de colaboración en el mercado. En concreto, vio la luz Slack y, más recientemente, se ha anunciado el lanzamiento de Microsoft Teams.

Con tantas soluciones disponibles que se integran bien con TFS y Visual Studio Team Services, en enero anunciamos nuestra intención de retirar la característica Centro de reunión de TFS 2018 y de Visual Studio Team Services.


Problemas conocidos

Servicio de importación de bases de datos de TFS no compatible con versiones RC

El servicio de importación de bases de datos de TFS para Visual Studio Team Services no es compatible con las versiones RC de TFS. Si tiene previsto importar su base de datos de colección a Team Services mediante el uso de este servicio, es importante que no actualice la base de datos de producción a esta versión RC. Si lo hace, tendrá que esperar y actualizarla a la versión RTW, o bien restaurar una copia de seguridad de la base de datos desde una versión anterior de TFS para realizar la importación.

La tarea de la versión 1 de Visual Studio Test en Compilación/Versión no puede ejecutar pruebas utilizando Visual Studio 2017 Update 3

La tarea de la versión 1 de Visual Studio Test en Compilación/Versión no puede ejecutar pruebas utilizando Visual Studio 2017 Update 3. Se produce un error en la tarea, en el que se indica “No se puede determinar la ubicación de vstest.console.exe”. La solución consiste en utilizar la tarea de la versión 2 de Visual Studio Task.