Compartir a través de


Compatibilidad con caracteres comodín y expresiones condicionales en archivos de canalización YAML

En este sprint, hemos incluido compatibilidad con caracteres comodín y expresiones condicionales en archivos de canalización YAML. Además, hemos realizado varias actualizaciones en las imágenes hospedadas de Azure Pipelines.

Eche un vistazo a las siguientes descripciones de las características para obtener más información.

Azure Pipelines

Azure Repos

Azure Pipelines

Nuevas expresiones condicionales de YAML

Escribir expresiones condicionales en archivos YAML es más fácil con el uso de ${{ else }} expresiones y ${{ elseif }} . A continuación se muestran ejemplos de cómo usar estas expresiones en los archivos de canalizaciones de YAML.

steps:
- script: tool
  env:
    ${{ if parameters.debug }}:
      TOOL_DEBUG: true
      TOOL_DEBUG_DIR: _dbg
    ${{ else }}:
      TOOL_DEBUG: false
      TOOL_DEBUG_DIR: _dbg
variables:
  ${{ if eq(parameters.os, 'win') }}:
    testsFolder: windows
  ${{ elseif eq(parameters.os, 'linux') }}:
    testsFolder: linux
  ${{ else }}:
    testsFolder: mac

Compatibilidad con comodines en los filtros de ruta de acceso

Las tarjetas comodín se pueden usar al especificar ramas de inclusión y exclusión para desencadenadores de CI o PR en un archivo YAML de canalización. Sin embargo, no se pueden usar al especificar filtros de ruta de acceso. Por ejemplo, no puede incluir todas las rutas de acceso que coincidan con src/app/**/myapp*. Esto ha sido señalado como un inconveniente para varios clientes. Esta actualización rellena este hueco. Ahora, puede usar caracteres comodín (**, *o ?) al especificar filtros de ruta de acceso.

Compatibilidad con varios estados en Bitbucket

Azure Pipelines se integra con repositorios de Bitbucket y admite desencadenadores de CI y PR. Puede configurar varias canalizaciones desde un único repositorio de Bitbucket. Sin embargo, cuando se completaron estas canalizaciones, solo podía ver un estado en Bitbucket. Hemos oído comentarios de la Comunidad de desarrolladores que solicitan ver el estado de cada canalización por separado en Bitbucket. Con esta actualización, actualizamos nuestras llamadas API a Bitbucket y pasamos información adicional sobre el nombre de la canalización.

Estado de la compilación

Permitir que los colaboradores omitan la búsqueda de comentarios de solicitudes de incorporación de cambios antes de que se valide la compilación

Al usar Azure Pipelines con repositorios de GitHub, se recomienda no ejecutar automáticamente una canalización de validación de pr para las contribuciones recibidas de un repositorio bifurcada. Este es el procedimiento recomendado para que uno de los colaboradores del repositorio revise el cambio y agregue un comentario a la solicitud de incorporación de cambios para desencadenar la canalización. Para configurar estas opciones, seleccione el menú Desencadenadores (para canalizaciones YAML) o la pestaña Desencadenadores (para canalizaciones de compilación clásicas) en el editor web de canalización. En lugar de exigir que un miembro del equipo revise primero cada solicitud de incorporación de cambios de una bifurcación, también puede aplicar esta directiva solo en contribuciones que se originen en miembros que no sean del equipo.

Con esta actualización, le permitimos omitir la búsqueda de un comentario de solicitud de incorporación de cambios de las contribuciones recibidas por cualquier colaborador. Como miembro que no es de equipo, al crear una bifurcación y crear una solicitud de incorporación de cambios en la cadena ascendente, no se considera colaborador en el repositorio ascendente hasta que se combine la solicitud de incorporación de cambios. Una vez combinada la solicitud de incorporación de cambios, se considerará colaborador. Al seleccionar la nueva opción que se muestra a continuación, cuando un miembro que no es miembro del equipo envía una solicitud de incorporación de cambios desde una bifurcación por primera vez, alguien del equipo tendría que revisar la solicitud de incorporación de cambios y agregar un comentario para desencadenar la canalización. Sin embargo, una vez combinada la solicitud de incorporación de cambios, las contribuciones adicionales realizadas por ese miembro que no sea miembro del equipo desencadenarán directamente la canalización sin esperar un comentario de solicitud de incorporación de cambios.

Requerir el comentario de un miembro del equipo antes de crear una solicitud de incorporación de cambios

Windows Server 2022 con Visual Studio 2022 ya está disponible en agentes hospedados por Microsoft (versión preliminar)

Windows Server 2022 y Visual Studio Enterprise 2022 Preview ya están disponibles en versión preliminar en agentes hospedados por Microsoft. Puede usarlo haciendo referencia windows-2022 a la imagen en la canalización.

pool:
  vmImage: 'windows-2022'

steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
  inputs:
    restoreSolution: '**/*.sln'
- task: VSBuild@1 # Visual Studio 2022 build
  inputs:
    solution: '**/*.sln'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
    platform: 'Any CPU'
    configuration: 'Release'

Al hacer referencia al grupo más reciente de Windows en las canalizaciones de YAML, seguirá significando windows-2019 y no windows-2022, mientras que este último está en versión preliminar.

La imagen de canalización de Windows Server 2022 tiene diferentes herramientas y versiones de herramientas en comparación con Windows Server 2019. Puede ver los detalles en el problema del anuncio de software y en el repositorio de entornos virtuales de documentación.

Disponibilidad general de macOS 11 en agentes hospedados por Microsoft

MacOS 11 ya está disponible con carácter general en agentes hospedados por Microsoft. Puede usarlo haciendo referencia macos-11 a la imagen en la canalización.

pool:
  vmImage: macos-11

Eliminación de la imagen de Ubuntu 16.04 en agentes hospedados por Microsoft

Como se anunció anteriormente, se quitará la imagen de Ubuntu 16.04 de los agentes hospedados por Microsoft el 20 de septiembre de 2021. El soporte tradicional de 5 años de Ubuntu 16.04 por Canonical finalizó en abril de 2021. Deberá migrar canalizaciones ubuntu-16.04 a ubuntu-18.04 o ubuntu-latest, que se ejecutará en Ubuntu 20.04 LTS.

Las compilaciones que usan Ubuntu-16.04 ya tienen una advertencia que se está registrando. Para asegurarnos de que todos conozcan este cambio, programamos 2 cortos "brownouts". Las compilaciones de Ubuntu 16.04 producirán un error durante el período de brownout. Por lo tanto, se recomienda migrar los flujos de trabajo antes del 6 de septiembre de 2021.

Los brownouts están programados para las fechas y horas siguientes (tenga en cuenta que se han ampliado por una hora a partir de las horas anunciadas anteriormente): 6 de septiembre de 2021 4:00 UTC : 10:00PM UTC 14 de septiembre de 2021 4:00 UTC – 10:00PM UTC

Azure Repos

Nuevas páginas de TFVC disponibles con carácter general

Hemos actualizado varias páginas de Azure DevOps para usar una nueva plataforma web con el objetivo de hacer que la experiencia sea más coherente y accesible en los distintos servicios. Las páginas de TFVC se han actualizado para usar la nueva plataforma web y esos cambios se han realizado en versión preliminar durante varios meses. Con esta actualización, estamos haciendo que las nuevas páginas de TFVC estén disponibles con carácter general. Con esta actualización, ya no verá una característica en versión preliminar denominada "Nuevas páginas tfVC" en su configuración de usuario.

Configuración de los creadores de ramas para que no obtengan "permisos de administración" en sus ramas

Al crear una nueva rama, obtendrá "Administrar permisos" en esa rama. Este permiso le permite cambiar los permisos de otros usuarios o admitir usuarios adicionales para contribuir a esa rama. Por ejemplo, un creador de rama puede usar este permiso para permitir que otro usuario externo realice cambios en el código. O bien, pueden permitir que una canalización (identidad del servicio de compilación) cambie el código de esa rama. En determinadas organizaciones con requisitos de cumplimiento más altos, los usuarios no deben poder realizar estos cambios.

Con esta actualización, puede configurar todos y todos los repositorios del proyecto de equipo y restringir a los creadores de ramas para que obtengan el permiso "Administrar permisos". Para ello, vaya a la configuración del proyecto, seleccione Repositorios y, después, Configuración para todos los repositorios o un repositorio específico.

Todas las configuraciones de repositorios

Esta configuración está activada de forma predeterminada para imitar el comportamiento existente. Sin embargo, puede desactivarlo si desea usar esta nueva característica de seguridad.

Impedir que los usuarios de bifurcaciones voten sobre las solicitudes de incorporación de cambios de niveles superiores

Con Azure Repos, los usuarios con permiso de "lectura" en un repositorio pueden bifurcar el repositorio y realizar cambios en su bifurcación. Para enviar una solicitud de incorporación de cambios con sus cambios en la cadena ascendente, los usuarios necesitan el permiso "contribuir a las solicitudes de incorporación de cambios" en la cadena ascendente. Sin embargo, este permiso también rige quién puede votar sobre las solicitudes de incorporación de cambios en el repositorio ascendente. Como resultado, puede terminar en situaciones en las que un usuario, que no es colaborador del repositorio, puede enviar una solicitud de incorporación de cambios y hacer que se combine en función de cómo configure las directivas de rama.

En las organizaciones que promueven un modelo de origen interno, bifurcación y contribución es un patrón común. Para proteger y promover este patrón aún más, estamos cambiando el permiso para votar en una solicitud de incorporación de cambios de "contribuir a las solicitudes de incorporación de cambios" para "contribuir". Sin embargo, este cambio no se realiza de forma predeterminada en todas las organizaciones. Tiene que participar y seleccionar una nueva directiva en el repositorio, denominada "Modo de voto estricto" para cambiar este permiso. Se recomienda hacerlo si confía en bifurcaciones en Azure Repos.

Configuración del repositorio

Pasos siguientes

Nota:

Estas características se implementarán en las próximas dos a tres semanas.

Vaya a Azure DevOps y eche un vistazo.

Cómo enviar sus comentarios

Nos encantaría escuchar lo que piensas sobre estas características. Use el menú de ayuda para notificar un problema o proporcionar una sugerencia.

Hacer una sugerencia

También puede obtener consejos y sus preguntas respondidas por la comunidad en Stack Overflow.

Gracias,

Aaron Hallberg