Compartir a través de


Compatibilidad con la tabla de subpáginas en la wiki

Ahora puede agregar una tabla de subpáginas a las páginas wiki para que pueda ver el contenido y los vínculos. En Boards, ahora puede agregar colores a la calle y bloquear los campos personalizados de la edición. También continuamos nuestras inversiones en seguridad y agregamos un nuevo ámbito pat para administrar la autorización y las aprobaciones y comprobaciones de canalización.

Consulte las notas de la versión para obtener más información.

Azure Boards

Azure Pipelines

Wiki

Azure Boards

Impedir la edición de campos de listas de selección que se pueden compartir

Los campos personalizados se comparten entre procesos. Esto puede crear un problema para los campos de lista de selección porque permitimos que los administradores de procesos agreguen o quiten valores del campo. Al hacerlo, los cambios afectan a ese campo en cada proceso que lo usa.

Para solucionar este problema, hemos agregado la capacidad de que el administrador de la colección "bloquee" un campo de que se edite. Cuando el campo picklist está bloqueado, el administrador del proceso local no puede cambiar los valores de esa lista de selección. Solo pueden agregar o quitar el campo del proceso.

Gif para la edición de demostración de los campos de lista de selección que se pueden compartir.

Colores de calle

En el panel Kanban, las calles le ayudan a visualizar el estado del trabajo que admite diferentes clases de nivel de servicio. Ahora, puede agregar color a las calles para facilitar su identificación en el tablero.

Gif para mostrar la adición de color a las calles de natación.

Nota:

Esta característica solo estará disponible con la versión preliminar de New Boards Hubs.

Azure Pipelines

Nuevo ámbito pat para administrar la autorización y las aprobaciones de canalización y comprobaciones

Para limitar los daños causados por la pérdida de un token PAT, hemos agregado un nuevo ámbito pat, denominado Pipeline Resources. Puede usar este ámbito pat al administrar la autorización de canalización mediante un recurso protegido, como una conexión de servicio, o para administrar aprobaciones y comprobaciones de ese recurso.

Novedades de la API REST de canalizaciones

Las siguientes llamadas API REST admiten el nuevo ámbito PAT de la siguiente manera:

Mejoras en la experiencia de los permisos de canalización

Hemos mejorado la experiencia sobre la administración de permisos de canalización para que el sistema de permisos recuerde si una canalización había usado previamente un recurso protegido, como una conexión de servicio.

En el pasado, si desactivó "Conceder permiso de acceso a todas las canalizaciones" al crear un recurso protegido, pero después restringió el acceso al recurso, la canalización necesitaba una nueva autorización para usar el recurso. Este comportamiento era incoherente con el acceso de apertura y cierre posteriores al recurso, donde no se requería una nueva autorización. Esto se ha corregido.

Variables como entradas en comprobaciones

Las aprobaciones y comprobaciones son un mecanismo de seguridad en tiempo de ejecución que permite a los propietarios de recursos controlar qué ejecuciones de canalización pueden usar su recurso.

Dos comprobaciones populares son Invoke Azure Function (Invocar función de Azure) e Invoke REST API (Invocar API REST). En el pasado, al configurarlos, uno solo podía usar variables de sistema predefinidas o grupos de variables.

En este sprint, hemos agregado compatibilidad con variables definidas por canalización. Esto funciona cuando se especifican Function keylos parámetros , HeadersBody, y Query para dichas comprobaciones.

Supongamos que tiene la siguiente canalización de YAML. Observe que definimos variables FunctionKey, MyHeader, MyBodyy MyQuery, y una variable definida por el entorno de ejecución denominadaRetryCount.

variables:
  FunctionKey: <<redacted>>
  MyHeader: "FabrikamHeader"
  MyQuery: "FabrikamQuery"
  MyBody: "FabrikamBody"

stages: 
- stage: Build
  jobs:
  - job: SetRC
    steps:
    - script: echo "##vso[task.setvariable variable=RetryCount;isOutput=true]3"
      name: RCValue
- stage: Deploy
  jobs:
  - deployment: 
    environment: Production
    strategy:
      runOnce:
        deploy:
          steps:
          - script: ./deploy.sh

Puede configurar una comprobación invocar función de Azure en el entorno de producción y hacer referencia a $(FunctionKey), $(MyHeader), $(MyBody), $(MyQuery)y $(Build.SetRC.RCValue.RetryCount), como en la captura de pantalla siguiente.

Invocación de la función de Azure

La sintaxis para usar variables definidas en tiempo de ejecución es StageId.JobId.StepOrTaskName.Variable.

Obtenga más información sobre la manera recomendada de usar invocación de las comprobaciones de api rest y función de Azure.

Capacidad de deshabilitar el enmascaramiento para secretos cortos

Azure Pipelines enmascara los secretos en los registros. Los secretos pueden ser variables marcadas como secretas, variables de grupos de variables que están vinculados a Azure Key Vault o elementos de una conexión de servicio marcadas como secretas por el proveedor de conexión de servicio.

Todas las apariciones del valor secreto se enmascaran. Enmascarar secretos cortos, por ejemplo, '1', '2', 'Dev' facilita la adivinación de sus valores, por ejemplo, en una fecha: 'Jan 3, 202***'
Ahora está claro que '3' es un secreto. En tales casos, es posible que prefiera no enmascarar el secreto por completo. Si no es posible marcar el valor como secreto (por ejemplo, el valor se toma de Key Vault), puede establecer el AZP_IGNORE_SECRETS_SHORTER_THAN botón en un valor de hasta 4.

Script para validar automáticamente la versión del agente de canalización

Actualmente tenemos dos versiones del agente de canalización: v2 usa .NET 3.1 Core y v3 usa .NET 6. Estamos implementando lentamente el agente v3 en sistemas operativos compatibles, después de lo cual retiraremos el agente v2. Para más información, consulte la entrada de blog actualización del agente de .NET para Azure Pipelines.

Hemos creado un script para ayudarle a comprobar si los agentes autohospedados podrán actualizarse. Este script procesará todos los grupos de su organización e identificará los agentes v2 en sistemas operativos que no sean compatibles con el agente v3, por ejemplo, CentOS 6, versiones de Fedora anteriores a 31, macOS 10.14, RHEL 6.

Nota:

Las compilaciones recientes del agente v2 no intentarán actualizar automáticamente al agente v3 en un sistema operativo que se sabe que no es compatible con él.

Icono de información general sobre el estado de ejecución de canalización

En este sprint, es más fácil conocer el estado general de una ejecución de canalización.

En el caso de las canalizaciones de YAML que tienen muchas fases, solía ser difícil conocer el estado de una ejecución de canalización, es decir, sigue ejecutándose o ha finalizado. Y si finalizó, cuál es el estado general: correcto, erróneo o cancelado. Se ha corregido este problema agregando un icono de información general sobre el estado de ejecución.

Icono de información general sobre el estado de ejecución de canalización

Wiki

Compatibilidad con la tabla de subpáginas

Ahora puede agregar una tabla de contenido para las subpáginas a las páginas wiki. Esta tabla tendrá vínculos a todas las subpáginas ubicadas en la página donde se muestra la tabla de subpáginas.

Puede agregar la tabla de subpáginas insertando manualmente la etiqueta especial [[_TOSP_]] o desde Más opciones , como se muestra en la imagen animada siguiente. Solo se usa la primera etiqueta [[_TOSP_]] para crear la tabla de subpáginas.

Esta característica se ha priorizado en función de los siguientes vales de sugerencias de la comunidad:

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,

Rajesh Ramamurthy