Lanzamiento de GitLab 11.1: Panel de control de seguridad y búsqueda avanzada

imagen


En GitLab 11.1, mejoramos la visualización de la seguridad a través de paneles, mejoramos la búsqueda por código para recibir oportunamente la información necesaria, realizamos cambios en la experiencia de usuario y mucho más.


Visualización mejorada para el equipo de seguridad.


GitLab está diseñado para trabajar juntos. La misión de GitLab es que todos puedan contribuir, por lo que creamos una herramienta que permite que los especialistas en gestión de productos, desarrollo, pruebas, operación y seguridad de la información trabajen juntos. Es por eso que incorporamos tanto el desarrollo de software como DevOps en una sola aplicación. Y creemos que la solicitud de fusión es una de las herramientas más poderosas para la colaboración.


Pero a veces una solicitud de fusión no es exactamente lo que necesita.


Las solicitudes de fusión son buenas cuando necesita ver cómo los cambios individuales afectan la aplicación. Pero, ¿qué pasa si necesita un mayor nivel de rendimiento? En ocasiones, debe analizar todos los problemas de seguridad actuales que afectan a la sucursal en su conjunto. Un nuevo panel de control de seguridad le permite hacer esto. Puede priorizar el tablero para centrarse en las vulnerabilidades más importantes. Ahora no hay necesidad de verificar informes sobre todas las solicitudes de fusión, todo en un solo lugar. Creemos que esto será especialmente útil para los responsables de la seguridad de la información. GitLab ahora tiene una herramienta especial para ayudarlos a hacer su trabajo. Trabajar con el panel de seguridad permite a los equipos de seguridad administrar la prioridad de las vulnerabilidades críticas, eliminar algunas y omitir otras (cuando no son esenciales para un proyecto determinado) para que al reducir la prioridad no se repitan en los informes.


Búsqueda acelerada


La búsqueda de código confiable es uno de los valores centrales para el desarrollador. Si usted es un desarrollador nuevo en un equipo, o si está tratando de descifrar gran parte del código anterior antes de agregar una nueva función, la búsqueda es una buena manera de conocer las áreas clave.


La búsqueda por código estaba disponible antes, pero la mejoramos. La sintaxis de búsqueda avanzada le permite acelerar la búsqueda de los archivos necesarios debido a la capacidad de filtrar por nombre de archivo, ruta y su extensión.


¡Y aún más!


Además de las nuevas características de seguridad, también mejoramos la experiencia de usuario : rehicimos el widget de solicitud de fusión , agregamos el panel de solicitud de fusión al IDE web y revisamos las estadísticas de depósito en GitLab y más allá.


Siga leyendo para conocer todos los cambios en GitLab 11.1


Te invitamos a nuestras reuniones.


Insignia MVP de GitLab


MVP de este mes - Jasper Maes


La contribución de Jasper ha sido y sigue siendo una parte integral del esfuerzo para actualizar GitLab a Rails 5 en los últimos meses.


¡Gracias, Jasper, por mejorar constantemente GitLab! En agradecimiento, le enviamos recuerdos de marca, incluyendo una sudadera, calcetines hechos a mano y tanuki.


Nuevas características clave de GitLab 11.1


Panel de control de seguridad del proyecto (ULTIMATE, GOLD)


Los profesionales de seguridad se centran en prevenir las amenazas que podrían dañar la aplicación. Incluso después de que el código se descargue en una rama estable o ya se haya publicado, estas personas necesitan rastrear y resolver problemas que pueden afectar la seguridad.


Para facilitarles la vida, agregamos un panel de control de seguridad en GitLab 11.1 que informa el estado de seguridad actual de la sucursal principal en cada proyecto. Esto permite al equipo de seguridad determinar fácilmente que algo salió mal y comprender si hay que hacer algo. El panel se puede encontrar en el menú Proyecto . El panel es interactivo, puede usarse para descartar errores falsos positivos o crear soluciones para vulnerabilidades existentes.


Panel de seguridad para proyectos


Documentación del panel de control de seguridad


Filtros para búsqueda avanzada: nombre de archivo y ruta de acceso (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Dado que los equipos crean constantemente grandes cantidades de código, buscarlo no es una tarea fácil. En este caso, es fundamental contar con una herramienta para administrar el código y, en particular, buscarlo.


Esta versión presenta nuevas opciones de sintaxis avanzadas que le permiten buscar por código utilizando tres filtros. Ahora puede buscar por nombre de archivo (nombre de archivo ), ruta a él ( ruta ) e incluso por extensión ( extensión de archivo ), y el resultado de la búsqueda será más preciso. Estos filtros están disponibles tanto en la interfaz web como en la API.


Para el plan Core, estos filtros están disponibles a nivel de proyecto.


Para principiantes y superiores: si usa Elasticsearch , los filtros también están disponibles a nivel de grupo y a nivel global.


En todos los planes de suscripción a GitLab.com, los filtros funcionan solo a nivel de proyecto, ya que Elasticsearch aún no está allí. Sin embargo, estamos trabajando en la implementación de Elasticsearch en GitLab.com .


Búsqueda avanzada de documentación de sintaxis


Nombre de archivo y filtros de ruta para búsqueda avanzada de código


Escaneo de contenedores e informes de tuberías DAST (ULTIMATE, GOLD)


Los informes de seguridad en las solicitudes de fusión son muy útiles para detectar nuevos problemas en el nuevo código, incluso si el código aún no ha llegado a la rama master . Pero dado que las vulnerabilidades pueden aparecer antes de que se cree la solicitud de fusión, a veces los desarrolladores necesitan conocer el estado de seguridad de una rama en particular en un momento determinado.


En GitLab 11.1, el conjunto de informes de seguridad que se muestran en forma de canalización se complementa con pruebas de seguridad de aplicaciones dinámicas (DAST) y escaneo de contenedores. Simplemente mire la pestaña Reports para obtener toda la información de seguridad y tomar las medidas adecuadas.


Documentación de informes de seguridad


Escaneo de contenedores e informes DAST a nivel de tubería


Soporte SAST para Node.js (ULTIMATE, GOLD)


Las pruebas de seguridad de aplicaciones estáticas (SAST) le permiten detectar vulnerabilidades en el código tan pronto como los cambios lleguen al repositorio. Esta información está disponible en la solicitud de fusión, que le permite corregir las vulnerabilidades encontradas. Ahora no entrarán en producción, ya que el 'desplazamiento a la izquierda' se logra automáticamente.


En GitLab 11.1, agregamos Node.js a la lista de idiomas SAST compatibles. Ahora no necesita cambiar la configuración de sus proyectos en Node.js, el nuevo idioma es detectado automáticamente y probado por sast .


Documentación SAST


Soporte SAST para Node.js


Rediseño de la sección de información y la sección del transportador para el widget de solicitud de fusión (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En GitLab, las solicitudes de fusión en general y el widget de solicitud de fusión en particular son una característica poderosa que muestra mucha información y funciones útiles. Evaluamos constantemente el diseño y queremos asegurarnos de que la información sea útil y fácil de leer.


En esta versión, finalizamos el diseño de la sección de información y la sección del transportador. Los separamos del resto del contenido en el widget para una percepción más fácil.


Documentación de solicitud de fusión


Combinar información de widget de solicitud y rediseño de secciones de canalización


Menú desplegable Grupos en navegación (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Cambiar entre grupos debería ser una tarea simple sin interrumpir su flujo de trabajo. Para facilitar este paso, agregamos un menú desplegable para grupos a la barra de navegación superior para un acceso rápido. Esto le evita tener que cambiar a otra pantalla mientras trabaja para encontrar un grupo cuyo nombre sea difícil de recordar. Al igual que el menú Proyectos, Grupos mostrará grupos visitados con frecuencia.


Documentación grupal


Grupos desplegable en navegación


Vea la descripción de la solicitud de fusión en IDE web (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Cuando esté trabajando en una solicitud de fusión o realizando una revisión de la misma, es conveniente volver a su descripción para averiguar con qué propósito y en qué contexto se realizaron los cambios.


Comenzando con esta versión, en lugar de cambiar las pestañas, simplemente puede abrir la descripción de la solicitud de fusión junto al código directamente en el IDE web.


Documentación web IDE


Ver la descripción de la solicitud de fusión en el IDE web


Otras mejoras en GitLab 11.1


Rediseño de la página de análisis para la contribución al desarrollo (STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)


Rediseñamos la página de análisis para el desarrollo a fin de mejorar la legibilidad y la coherencia en la interfaz de usuario. Nos enfocamos en habilitar esta página para acomodar a un gran número de desarrolladores para comprender mejor cómo contribuyen los contribuyentes.


Rediseño de análisis de contribución


Documentación de análisis de contribución al desarrollo


Rediseño de las páginas de la lista de hitos (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En esta versión, redibujamos la lista de hitos, incluidas las páginas con listas de proyectos, grupos y tableros, en aras de la uniformidad en la interfaz.


Este es el primer paso para simplificar el diseño. Lo hacemos más hermoso y conveniente, lo que en última instancia permitirá a los equipos gestionar mejor sus hitos.


Rediseño de páginas de lista de hitos


Documentación de hito


Subgrupos de GitLab en el panel de Desarrollo en Jira (PREMIUM, ULTIMATE, SILVER, GOLD)


Los equipos que usan Jira con GitLab tienen la capacidad de integrarse con el panel de Desarrollo en Jira. Esto permite a los usuarios de Jira ver solicitudes de fusión, ramas y confirmaciones de GitLab en el panel de desarrollo correcto en la tarea de Jira. En particular, configura la integración apuntando el servidor Jira a un grupo de nivel superior en GitLab; Ahora para este servidor todos los proyectos del grupo serán visibles.


Con esta versión, estamos ampliando el alcance para que todos los proyectos en este grupo de nivel superior, así como los subgrupos anidados, sean visibles para el servidor Jira. Esto amplía las opciones de integración, permitiéndole estructurar de manera más flexible sus proyectos en la jerarquía desde el lado de GitLab, sin cambiar la administración de tareas desde el lado de Jira.


Subgrupos de GitLab en el panel de desarrollo de Jira


Documentación de integración del panel de desarrollo de Jira con GitLab


Markit con sabor a GitLab con CommonMark (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


GitLab Flavored Markdown (GFM) permite a los usuarios formatear y diseñar texto de forma fácil y rápida en GitLab, incluidas tareas, solicitudes de fusión, epopeyas, comentarios y otros lugares. Hasta ahora, GitLab para GFM ha utilizado Redcarpet, una implementación anterior de Markdown. Esto condujo a una serie de problemas .


A partir de esta versión, en los archivos nuevos, GFM se representa utilizando CommonMark moderno; y los archivos Markdown creados previamente permanecen en Redcarpet. Esto se describe con más detalle en la documentación de Markdown .


Además de resolver la mayoría de los problemas mencionados, CommonMark tiene un mejor rendimiento. Además, GitHub también usa CommonMark; por lo tanto, los usuarios de GitHub que han cambiado a GitLab ahora usarán el mismo Markdown. En el futuro, cuando los archivos del repositorio de Markdown se procesen en CommonMark , la importación de proyectos de GitHub a GitLab manejará los archivos de Markdown exactamente de la misma manera.


¡Gracias a blackst0ne por esta función!


Markit con sabor a GitLab con CommonMark


Documentación de descuento de GitLab con sabor


Acción rápida para traducir tareas en confidenciales (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Ahora puede hacer que la tarea sea confidencial directamente desde el campo de comentarios; Esto le permitirá escribir un comentario y transferir la tarea a confidencial, sin distraerse del teclado.


¡Gracias a Jan Beckmann por su contribución!


Problema confidencial acción rápida


Documentación de acción rápida


Autocompletado en epopeyas y etiquetas en epopeyas (ULTIMATE, GOLD)


En esta versión, mejoramos la finalización automática épica. En particular, cuando describe o comenta una epopeya, puede ingresar el signo & , y GitLab buscará automáticamente las epopeyas en este grupo, y el signo ~ activará una búsqueda por etiqueta, tal como ya funciona en las tareas ( # ) y fusionar- Solicitudes ( ! ).


Autocompletar epopeyas y etiquetas en epopeyas


Documentación épica


Refactorización de comentarios sobre solicitudes de fusión en Vue.js (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Desde 2016, cuando GitLab decidió cambiar a Vue.js , lo utilizamos no solo para crear nuevas funciones, sino también para refactorizar las existentes para mejorar la interfaz y aumentar la productividad.


En esta versión, reescribimos la interfaz de comentarios de solicitud de fusión. Esto nos da más control sobre el rendimiento: lo abordaremos en las próximas versiones. Y también ayudará a crear nuevas características usando Vue.js. más fácil y más eficientemente. Por ejemplo, ya estamos trabajando en comentarios por lotes .


Eche un vistazo al trabajo actual con esta interfaz , además de lo que ya hemos agregado a esta versión.


Solicitud de fusión comenta Vue.js refactor


Documentación de solicitud de fusión


API para personalizar tableros de tareas (STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)


Anteriormente, en GitLab 10.2, lanzamos tableros de tareas personalizados que permiten a los equipos guardar la configuración para el tablero de tareas. Esta característica ahora está disponible a través de la API de GitLab.


Esto permite a los equipos crear sus propios flujos de trabajo, incluidos los automáticos. Por ejemplo, si desea utilizar el mismo tablero de tareas para cada iteración, ahora puede cambiar el hito de configuración a través de la API y automatizar esto con un script externo entre iteraciones.


Documentación API para personalizar tableros de tareas


El estado bloqueado de las solicitudes de fusión se ha agregado a la API (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En esta versión, agregamos un estado bloqueado para solicitudes de fusión en la API de GitLab; anteriormente era un estado interno al que no se podía acceder a través de la API. La solicitud de fusión está en este estado bloqueado mientras que la rama de origen se fusiona con la de destino.


Al abrir el acceso a este estado a través de la API, permitimos que los sistemas externos accedan de manera confiable a todas las solicitudes de fusión, incluso aquellas que se encuentran en este estado bloqueado transitorio.


Solicitud de fusión API Documentation


Transferencia de proyectos entre espacios de nombres utilizando la API (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En la configuración del proyecto, los propietarios pueden transferir un proyecto existente a otro espacio de nombres (a otro usuario o grupo). Esto le permite organizar de manera flexible proyectos dentro de espacios de nombres personales y grupales.


En esta versión, agregamos acceso a esta configuración a través de nuestra API de proyecto, lo que le permite mover múltiples repositorios a la vez en un solo paso.


¡Gracias a Aram Visser por esta característica!


Documentación de proyecto de migración


Inicialización de README al crear un proyecto (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En GitLab creemos que todos pueden contribuir al desarrollo. Un paso significativo hacia este objetivo es hacer que la creación de un nuevo proyecto en GitLab sea lo más simple e intuitiva posible.


En la versión 11.1, presentamos una nueva configuración que le permite inicializar el repositorio agregando un archivo README al crear un nuevo proyecto. Si esta característica está habilitada, el repositorio del proyecto se inicializa con la rama master predeterminada, que se puede clonar inmediatamente. El archivo README generado contiene el nombre y la descripción del proyecto.


Inicializar README en la creación de proyectos.


Documentación de creación de proyectos


Mejora de la experiencia del usuario al configurar claves SSH (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Usando GitLab, cualquiera debería poder contribuir e impulsar proyectos sin la necesidad de aprender cosas complejas adicionales. Centrándonos en este ideal, descubrimos que configurar las claves SSH, la condición básica para comenzar, sigue siendo demasiado complicado.


En esta versión, estamos mejorando la experiencia del usuario con la configuración de claves SSH (elemento de configuración de claves SSH) y la documentación relacionada.


Experiencia de usuario mejorada en la configuración de claves SSH


Documentación clave de SSH en GitLab


Confirmación mejorada en Web IDE (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En esta versión, hemos simplificado los commits en el IDE web al agregar el prellenado a la descripción del commit y la capacidad de agregar un commit ( Stage & Commit ) con un solo clic. Ahora, al editar una rama que no se puede escribir (por ejemplo, la rama master ), el IDE web ofrecerá por defecto crear una nueva rama y rellenar su nombre de manera significativa, para que siempre pueda crear una confirmación con un solo clic.


Anteriormente, la descripción de la confirmación no se había completado previamente y el botón para crear una confirmación en tales casos estaba bloqueado. Esto ralentizó los cambios y dejó al usuario perplejo: "¿Por qué no puedo comprometerme?"


Mejoras en la organización y el compromiso de IDE web


Documentación web IDE


Contribuir a GitLab (CORE, GRATIS)


GitLab es fuerte con su comunidad, ¡y nada nos inspira más que la aparición de nuevas personas involucradas en el desarrollo!


En esta versión, facilitamos a los usuarios de GitLab Core y GitLab.com la búsqueda de la página "Contribuir a GitLab": agregamos un enlace conveniente que está disponible directamente en el menú de perfil de usuario.


Enlace 'Contribuir a GitLab'


Consulte nuestra guía para colaboradores de GitLab para obtener más detalles.


Posibilidad de cancelar la autenticación de dos factores en SAML (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


En muchos casos, los proveedores de SAML ya admiten o incluso requieren autenticación de dos factores para proporcionar un nivel de seguridad.


A partir de GitLab 11.1, puede deshabilitar la autenticación de dos factores en el lado de GitLab y llevarla a cabo en el lado del proveedor SAML para cumplir con sus requisitos. Para hacer esto, agregamos un nuevo parámetro a la configuración de SAML.


¡Gracias Roger Rüttimann por esta característica!


Documentación del proveedor OmniAuth de SAML


Nuevo método HEAD en el archivo API (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Nuestra API de archivos le permite realizar operaciones CRUD (crear, leer, actualizar y eliminar) en archivos almacenados en su proyecto GitLab.


Con GitLab 11.1, agregamos soporte para el método HEAD HTTP al archivo API, que le permite leer los metadatos del archivo. Esta solicitud se puede utilizar, por ejemplo, para verificar el tamaño de un archivo y decidir si descargarlo.


¡Gracias Ahmet Demir por esta característica!


Documentación del repositorio de API de archivos


Diseño mejorado de la página de clúster de Kubernetes (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Hemos mejorado el diseño de la página de Kubernetes para minimizar la visualización de información irrelevante al agregar un clúster. Para este fin, ahora usamos pestañas separadas para cada opción.


Este es el primer paso en una serie de cambios de diseño para agregar un clúster y administrar clústeres para que sea más fácil e intuitivo.


Intentamos simplificar la administración de clústeres y agregar nuevos. El rediseño de la página es el primer paso en el camino


Diseño mejorado de la página de Kubernetes Cluster


Documentación del clúster de Kubernetes


Las métricas de aplicación ahora están disponibles en el menú Operaciones (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


Al agregar el menú Metrics a Operations es más fácil y rápido ver las métricas de rendimiento de su aplicación. Al hacer clic en Métricas, se abre inmediatamente el panel de rendimiento de su entorno de production , si tiene uno, y también proporciona una lista desplegable para cambiar a otros entornos.


En versiones anteriores, el usuario tenía que encontrar el entorno deseado en el menú Entornos y hacer clic en el botón Supervisión.
Para cambiar a otro entorno, era necesario pasar por todo este proceso nuevamente.
Ahora, sus métricas de producción están a solo un clic de distancia.


Las métricas de la aplicación ahora están disponibles en el menú Operaciones


Documentación de monitoreo de aplicaciones


Gestión de ofertas de terceros (CORE, STARTER, PREMIUM, ULTIMATE)


En la versión 10.8, comenzamos a informar a los usuarios sobre ofertas de terceros que podrían considerar valiosas para el desarrollo de sus proyectos.


Hay momentos en que estas oraciones no tienen sentido, o simplemente no desea que aparezcan en la aplicación. En GitLab 11.1, puede controlar la visualización de ofertas de administración de terceros.


Administrar ofertas de terceros


Documentación de oferta de terceros


Guardar ID de usuario en la subconsulta OpenID Connect (CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)


GitLab se puede usar como un proveedor de identidad de OpenID Connect (OIDC) para servicios externos. Esta capa está basada en OAuth 2.0.


En la versión anterior, almacenamos la subconsulta OIDC basada en la versión hash del ID de usuario de GitLab. Esto podría conducir a una API potencialmente inestable, ya que el método de hash puede cambiar en el futuro. Ahora, siguiendo la especificación OIDC, almacenamos la ID de usuario directamente en la subconsulta ( sub ). Para habilitar la migración, el valor anterior aún está disponible en la solicitud sub_legacy .


Documentación de OpenID Connect




Las notas detalladas de la versión y las instrucciones de actualización / instalación se pueden encontrar en la publicación original en inglés: GitLab 11.0 lanzado con Auto DevOps y License Management .


La traducción del inglés fue realizada por rishavant , cattidourden , ainoneko y nick_volynkin .

Source: https://habr.com/ru/post/es419363/


All Articles