Nos complace anunciar el lanzamiento de GitLab 11.4 con increíbles actualizaciones diseñadas para ayudar a los equipos de desarrollo a trabajar juntos de manera más eficiente. La mayoría de los equipos de desarrollo de devOps buscan acortar su ciclo de trabajo. Por lo tanto, tales mejoras son bienvenidas que reducen la pérdida de tiempo y el trabajo innecesario y, por lo tanto, permiten acelerar la entrega de aplicaciones y lograr mejores resultados comerciales.

El lanzamiento de GitLab 11.4 mejora la eficiencia de la revisión de código utilizando herramientas como las revisiones de solicitudes de fusión y el árbol de archivos en la lista de diferencias . Se propone una nueva función de banderas de características (versión alfa). Las canalizaciones de Auto DevOps y CI se han vuelto aún más eficientes ya que tienen la capacidad de migrar bases de datos PostgreSQL e implementaciones programadas incrementales . Git se ha vuelto aún más rápido con la llegada del soporte para el protocolo Git v2 .
Revisión de código
La herramienta de revisión de solicitud de fusión reducirá el caos de múltiples comentarios de código y solicitudes de fusión. La función de comentarios por lotes permite al revisor ingresar varios comentarios a solicitud de un código o fusión, y luego finalizarlos y enviarlos en un paquete. Ahora, las personas que se suscriben a este proyecto pueden realizar un seguimiento más eficaz de los cambios.
Para que se suministre un código de alta calidad, es necesario que las personas más adecuadas para este propósito revisen y aprueben los cambios. En la versión 11.3 , se introdujo el concepto de "propietario del código". Ahora, basado en el archivo CODEOWNERS
que contiene información sobre los propietarios del código, GitLab sugiere aquellas personas que deberían revisar y aprobar una solicitud de fusión específica. Por lo tanto, es posible revisar y aprobar cambios rápidamente y a un costo mínimo. También es útil para determinar la separación de deberes y roles en un equipo cuando es necesario definir revisores para partes específicas del código.
Al revisar las solicitudes de fusión, ahora puede ver el árbol de archivos. Para los revisores, la navegación entre varios archivos modificados se simplifica y acelera, y pueden dejar comentarios y comentarios.
Russell Levy, cofundador y director técnico de Chorus.ai , explica cómo revisar y explorar el árbol de archivos ayuda a su equipo:
Revisamos cuidadosamente el código y, por lo general, cada solicitud de fusión de tamaño mediano tiene 10-20 comentarios, así como varias rondas de discusiones. El uso de la función de revisión reduce el caos y las demoras en el proceso de revisión.
Cuando se trabaja en las solicitudes de fusión más grandes, la nueva función "árbol de archivos en la lista de diferencias" acelera significativamente el proceso de revisión, ya que se puede usar para navegar fácilmente el código para comprender las dependencias.
Banderas de funciones
Estamos presentando una versión alfa de los "indicadores de funciones", un sistema de activación / desactivación de funciones. Los equipos de desarrollo ahora pueden practicar la entrega continua de aplicaciones, implementando nuevas características en un entorno de producción en paquetes pequeños y, por lo tanto, reduciendo el riesgo de una implementación completa.
Auto DevOps y transportadores CI / CD
También proporcionamos a todos los usuarios la capacidad de usar .gitlab-ci.yml include
archivos adicionales. Ahora está disponible no solo en la versión Starter, sino también en Core. Esto permite que todos los equipos utilicen esta mejor práctica y hace que la gestión de las canalizaciones de CI / CD sea más simple y más eficiente.
Agradables cambios cosméticos
Junto con la comunidad más amplia de GitLab, se han agregado muchas de las grandes mejoras que hemos incluido en esta versión. Estos incluyen: un nuevo diseño de perfil, acceso rápido al estado del perfil, resaltando comentarios de @mentions
, nuevas acciones rápidas y la capacidad de cerrar épicas.
Siga leyendo para obtener más información sobre todas las excelentes características de la versión GitLab 11.4.
La persona más valiosa de este mes ( MVP ): Luke Piccho .
Luke agregó la capacidad de descargar códigos de recuperación 2FA como un archivo , lo que simplifica su copia de seguridad. Los códigos de recuperación 2FA son necesarios para recuperar el acceso a su cuenta de GitLab si pierde el acceso a su teléfono o contraseña secreta de un solo uso.
¡Gracias Luke por tu aporte!
Características clave agregadas a GitLab 11.4
Revisar solicitudes de fusión
Disponible en versiones: PREMIUM, ULTIMATE, SILVER, GOLD
La revisión de código en solicitudes de fusión es una característica poderosa en GitLab. Los miembros del equipo participan en diálogos relacionados con líneas de código específicas en la lista de diferencias, e incluso pueden resolver inconsistencias. Sin embargo, si las diferencias en una solicitud de fusión en particular son grandes, el proceso puede volverse muy confuso. A menudo, los revisores pueden necesitar dejar 10 o más comentarios en un solo ciclo de conversación. Y puede resultar que el noveno o décimo comentario hace innecesarios los comentarios anteriores. El resultado final es que el autor de la solicitud de fusión recibe muchas notificaciones y debe ordenarlas de una en una.
En este número, presentamos la capacidad de revisar las solicitudes de fusión. Esto permitirá al revisor crear tantos comentarios de código de borrador como desee en la solicitud de fusión, asegurarse de que todos sean consistentes y luego enviarlos de una vez. Dado que los comentarios preliminares se guardan en GitLab, el revisor puede incluso extender su trabajo en varias sesiones. Puede, por ejemplo, comenzar a revisar en su computadora de escritorio durante las horas de trabajo, y luego más tarde en la noche para formar una revisión final en su tableta doméstica. Tan pronto como se envían los borradores de comentarios, toman la forma de comentarios individuales ordinarios. Esto permite a los miembros individuales del equipo revisar el código en el orden que sea más conveniente para ellos, pero al mismo tiempo mantener la compatibilidad con todo el equipo.
En futuras iteraciones, mejoraremos esta característica al proporcionar una vista previa antes del envío por lotes, y también combinaremos todas esas notificaciones que se generan actualmente en función de estos comentarios en una notificación por lotes .

Creación y cambio de banderas de funciones para aplicaciones (versión alfa)
Disponible en: PREMIUM, ULTIMATE, PLATA, ORO
Esta característica le permite crear indicadores de función y administrar las capacidades de su software directamente en el producto. Simplemente cree una nueva marca de función, verifíquela en su programa usando instrucciones API simples, y tendrá la oportunidad de controlar el comportamiento del programa en el entorno de producción desde dentro de GitLab usando la marca.
Los indicadores de función son un sistema para habilitar y deshabilitar la funcionalidad de su aplicación. Permiten a los equipos realizar entregas de manera continua mediante la implementación de nuevos componentes en un entorno de producción en pequeños lotes para que las pruebas puedan controlarse. El suministro de componentes está separado en el tiempo de su lanzamiento por el cliente. Esto ayuda a reducir el riesgo y facilita el control de la inclusión y desactivación de ciertas funciones.
Tenga en cuenta que esta es una función alfa que se está introduciendo por primera vez, por lo que le recomendamos que verifique esta función y proporcione comentarios, y también le informamos que su implementación puede cambiar en futuras versiones.

Árbol de archivos para ver las diferencias en la solicitud de fusión
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
La revisión de código es una técnica importante utilizada en cada proyecto exitoso, pero es difícil entender exactamente qué ha cambiado de la lista no estructurada de diferencias. GitLab ahora tiene un árbol de archivos de búsqueda con el que puede ver qué archivos han cambiado y cambiar de uno a otro.
El árbol de archivos, como diff-stats
, muestra la estructura y el tamaño de los cambios. Con su ayuda, es más conveniente ver los cambios y pasar de una diferencia a otra. Una búsqueda en árbol permite a los revisores restringir la visualización del código a un subconjunto específico de archivos especificando una ruta específica o tipo de archivo. Esto simplifica la revisión por pares para aquellos que se centran solo en un subconjunto específico de archivos de una solicitud de fusión.
Anteriormente, se podía acceder a la lista de archivos modificados a través de una lista desplegable de búsqueda, que era más conveniente para navegar a un archivo específico.

Posibilidad de ofrecer a los propietarios de códigos como aprobadores de solicitudes
Disponible en: ARRANQUE, PREMIUM, ULTIMATE, BRONCE, PLATA, ORO
No siempre es obvio quién es la persona más adecuada para revisar los cambios en el código. Ahora, al crear o editar una solicitud de fusión, los propietarios del código se indican como personas recomendadas para aprobar la solicitud. Esto simplifica el nombramiento de una persona adecuada.
El soporte para identificar a los propietarios del código se introdujo en la versión GitLab 11.3 . En futuras versiones, la participación de los propietarios del código aumentará en el flujo de trabajo de solicitud de fusión. Para esto, servirán las funciones de asignación automática y los requisitos de aprobación del propietario.

Actualización de la apariencia de una página de perfil de usuario
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
No importa qué tan involucrado esté en GitLab, su actividad es una fuente importante de información y un indicador de participación, que se muestra directamente en su página de perfil personal. Su perfil personal debe dar una idea simple de lo que le interesa y en qué está trabajando.
En este número, presentamos una apariencia actualizada de la página de perfil, que refleja sus actividades a través del programa de contribución personal anteriormente familiar pero ahora acortado. La página también muestra sus actividades recientes y los proyectos personales más importantes en GitLab.

Configurar y mostrar el estado en el menú del usuario
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
En el lanzamiento de GitLab 11.2, primero presentamos mensajes de estado personales que le permiten mostrar su disponibilidad o estado de ánimo en este momento, o simplemente poner una imagen de su animal favorito.
En esta versión, la configuración de estado se ha vuelto aún más simple y uniforme. Cuando selecciona el nuevo elemento "Establecer estado" en el menú del usuario, aparece una nueva ventana modal, con la que puede establecer y restablecer su estado directamente en el contexto. Además, el estado que establezca se muestra en su menú de usuario, encima de su nombre completo y nombre de usuario, incluido el emoticón y el mensaje instalados.

La capacidad de usar Incluir en .gitlab-ci.yml
movido de Starter a Core
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Nos complace anunciar que, a partir de esta versión, el uso del operador "incluir" en .gitlab-ci.yml
ahora está disponible en la versión Core. Esto ayudará a garantizar la compatibilidad de las plantillas y otros recursos comunes para los usuarios de versiones gratuitas y de pago de GitLab, y proporcionará una oportunidad para que todos los usuarios realicen el desarrollo utilizando un método avanzado que utiliza fragmentos de código reutilizables en canalizaciones de CI / CD.

Ejecutar only
/ except
trabajos para cambios en una ruta específica o en un archivo específico
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
La necesidad de tal función a menudo se afirma en las solicitudes de los usuarios. Estamos orgullosos de ofrecer la oportunidad de usar only
/ except
reglas en archivos .gitlab-ci.yml
para aquellas tareas en las que se producen cambios en un archivo específico o en una ruta específica (global).
Esto proporcionará un control adicional para los usuarios cuyos repositorios contienen varios tipos de recursos (activos) o conjuntos. Se garantiza que para los tipos de cambios que se han realizado, solo se realizarán las etapas correspondientes a ellos; reduciendo así el tiempo de ejecución general de la tubería.

Implementaciones incrementales programadas agregadas a la canalización de Auto DevOps
Disponible en: PREMIUM, ULTIMATE, PLATA, ORO
En versiones anteriores, ya era posible configurar implementaciones incrementales en Auto DevOps, y en esta versión agregamos un parámetro que le permite configurar implementaciones incrementales en un horario . La implementación continuará automáticamente en una determinada línea de tiempo hasta que se produzca un error.

Soporte Kubernetes RBAC para aplicaciones desarrolladas de GitLab
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Cuando configura su infraestructura por primera vez o se conecta a una existente, la seguridad es de suma importancia. El control de acceso basado en roles (RBAC) se ha hecho público como parte del lanzamiento de Kubernetes 1.8, proporcionando controles de acceso a recursos de Kubernetes más granulares.
Ahora, integrar GitLab con Kubernetes le permite crear un clúster habilitado para RBAC en GKE o conectarse a un clúster habilitado para RBAC existente. Esto proporciona una mayor seguridad de la infraestructura.

Soporte RBAC en la canalización de Auto DevOps
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Auto DevOps ahora admite la interfaz con clústeres de Kubernetes habilitados para RBAC y la implementación de aplicaciones en ellos.
El control de acceso basado en roles (RBAC) es una herramienta importante que permite a los operadores garantizar la confiabilidad, seguridad y eficiencia de su clúster Kubernetes. El uso de Auto DevOps en combinación con un clúster habilitado para RBAC garantiza que sus aplicaciones aprovechen la seguridad mejorada de la infraestructura.

Soporte de migración e inicialización de bases de datos PostgreSQL para Auto DevOps
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Al usar Auto DevOps para descubrir, construir, probar, implementar y monitorear automáticamente su aplicación, se agregan características adicionales. A partir de la versión 11.4, Auto DevOps brinda la capacidad de inicializar o migrar una base de datos PostgreSQL a su proyecto.
Simplemente defina una variable de proyecto para inicializar o migrar su base de datos PostgreSQL, y Auto DevOps hace el resto.

Otras mejoras en GitLab 11.4
Listas de etiquetas a las que está suscrito el usuario.
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Las etiquetas en GitLab son una herramienta muy poderosa, ya que se pueden aplicar a problemas, solicitudes de fusión y epopeyas. Cuantas más etiquetas use, más difícil será mantenerlas.
En el número anterior, agregamos la capacidad de buscar por etiquetas en la página de la lista de etiquetas del proyecto. En este número, puede buscar por etiquetas, ordenar las etiquetas por nombre, fecha de creación y fecha de actualización e incluso ver una lista de etiquetas para las que tiene notificaciones. Esta característica está disponible en las páginas de la lista de etiquetas tanto para el grupo como para el proyecto.

Filtro de solicitud de fusión WIP
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Las solicitudes de fusión son una parte importante de GitLab; Proporcionan a los miembros del equipo una colaboración transparente en el desarrollo de código. En particular, alentamos a los equipos a compartir su trabajo desde el principio. En este caso, es aconsejable utilizar la función WIP (trabajo en progreso) para indicar que el trabajo activo todavía se está llevando a cabo en esta solicitud de fusión, y en esta etapa aún no se debe ejecutar.
En esta versión, será más fácil para los usuarios distinguir entre solicitudes de fusión WIP y no WIP gracias a un filtro especialmente diseñado para este propósito, que es aplicable en las listas de solicitudes de fusión tanto a nivel de grupo como a nivel de proyecto. Esto permite a los usuarios centrarse en aquellas solicitudes que aún se encuentran en una etapa temprana de trabajo, en lugar de aquellas que se encuentran en las etapas finales de revisión antes de la fusión.

@mentions
claramente resaltadas para el usuario actual
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Muchos usuarios a menudo participan en una larga discusión conjunta sobre un problema o solicitud de fusión, lo que dificulta ver rápidamente los comentarios dirigidos específicamente a usted.
A partir de esta versión, los comentarios ( @mentions
) que se le envían (es decir, el usuario actual) se resaltan en un color especial. Esto le permite ver qué comentarios están relacionados específicamente con usted y le ayuda a concentrarse rápidamente en ellos.

Inserte tablas y enlaces con solo hacer clic en un botón
Disponible en: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab admite el uso de las herramientas de marcado de GitLab Flavored Markdown (GFM) en la mayoría de los casos cuando se trabaja en GitLab, en el que debe ingresar texto. GFM combina un formato potente con una sintaxis simple. En particular, usando GFM puedes crear tablas. Esto solía ser difícil, especialmente para tablas grandes, ya que tenía que ingresar muchos caracteres o insertar la tabla anterior para formatearla según sus necesidades. GFM también admite incrustar URL. Pero a veces puede olvidar la sintaxis específica.
A partir de esta versión, puede hacer clic en el botón de tabla en el editor de GFM, y se agregará automáticamente una nueva tabla. Luego puede ingresar valores fácilmente o expandir la tabla y formatearla según lo necesite. Puede usar esta función en descripciones y comentarios en GitLab.
Ahora puede hacer clic en el botón de enlace y, al mismo tiempo, se creará el esqueleto de sintaxis del enlace URL. Puede poner fácilmente un enlace allí y registrar su nombre.
¡Gracias a George Tsiolis por la capacidad de insertar tablas!
¡Gracias a Jan Beckmann por la capacidad de insertar enlaces URL!

Inclusión de nuevos problemas en el horario de trabajo.
Disponible en: ARRANQUE, PREMIUM, ULTIMATE, BRONCE, PLATA, ORO
Los horarios de trabajo ayudan a los equipos a rastrear el trabajo a medida que avanza dentro de la fase de trabajo. Por lo general, la cantidad de trabajo se determina y se acuerda antes del inicio de la fase. Pero a veces pueden ocurrir excepciones importantes a esta regla (por ejemplo, un error que causó una emergencia o una solución de seguridad), y se debe agregar una nueva cantidad de trabajo al programa en forma de nuevos problemas.
En esta versión, los nuevos problemas que surgen durante el trabajo y conducen a un salto en la línea ahora se tendrán en cuenta en los horarios de las tareas.

Pesos extendidos en publicaciones API
Disponible en: ARRANQUE, PREMIUM, ULTIMATE, BRONCE, PLATA, ORO
En la versión anterior, ampliamos los valores de peso permitidos de la publicación, que ahora puede ser casi cualquier cosa si es mayor que cero.
API , API.
" "
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
( ). .
, / .
!

: ULTIMATE, GOLD
( ) GitLab. «», «» «», . , , , , .
( ) , , API, .

: CORE, STARTER, PREMIUM, ULTIMATE
, GitLab - GitLab.
, . , , .

: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, GitLab. « » — , , .
!

: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , .
GitLab 11.4 , . , , .
!

: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
-. . , , , .
« ».
!

: CORE, STARTER, PREMIUM, ULTIMATE
, .

- Docker
: CORE, STARTER, PREMIUM, ULTIMATE
- , Docker. Docker , , #3605 .

Auto DevOps
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
11.4 Auto DevOps (GitLab.com) () , , , . Auto DevOps , .
, Auto DevOps, .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
when
.gitlab-ci.yml
. , , , , , , , , .

Nurtch JupyterHub
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , .
JupyterHub, Kubernetes GitLab, Rubix Nurtch, DevOps. , .

: ULTIMATE, GOLD
, . , . , , .
GitLab 11.4 . « >CI/CD> », .

: ULTIMATE, GOLD
GitLab 11.4 . , , .

Git v2
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , . Git v2 — Git, , , ( ) (GitLab). .
. , (, git fetch origin master
) . , 100 000 , .. 10 .
Git v2 Git v2.18.0 . git config , git config --global protocol.version 2
. Git v2 GitLab.com SSH, .
Geo UX
: PREMIUM, ULTIMATE
Geo .
GitLab 11.4 Geo , . « », «» . «», .
UX !

Prometheus 2.0 Omnibus GitLab
: CORE, STARTER, PREMIUM, ULTIMATE
Omnibus GitLab Prometheus, . Prometheus 2.x, . . , - , 1.x.
Prometheus 2.4.2 GitLab 11.4 Omnibus, .
• 11.4 Prometheus 2.
• . gitlab-ctl prometheus-upgrade
, Prometheus , , . Prometheus .
• GitLab 12.0 Prometheus 2.0 . Prometheus 1.0 .
Prometheus 2.4.2, .
Geo
: PREMIUM, ULTIMATE
Geo . Geo GitLab 11.4:
•
•
•
•
• Sidekiq
, GitLab Geo .
Geo SSH Git -
: PREMIUM, ULTIMATE, SILVER, GOLD
— Geo , GitLab. 11.3 SSH git push
.
, Geo URL-.

GitLab Runner 11.4
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab Runner 11.4! GitLab Runner — , CI/CD GitLab.
:
• JSON
• -
• -
•
•
• gitlab_runner_jobs_total
• ,
• Fix K8S
GitLab Runner: CHANGELOG
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab 11.4:
• Markdown
•
• , ,
•
•
• diff
• « » Gitaly
•
Omnibus
: CORE, STARTER, PREMIUM, ULTIMATE
• redis
3.2.1. , . 11.4 gitlab-ctl restart redis
, , .
• GitLab 11.4 Mattermost 5.3 , Slack . , . , , .
• git
2.18.1, libpng
— 1.6.35.
• gnupg
2.2.10, gpgme
1.10.0, libgcrypt
1.8.3, npth
1.6, libgpg-error
1.32 libassuan
2.5.1.
• trusted_certs
0644
, 0755
.
Docker GitLab Runner
GitLab 11.4 ( 22 2018 ) Docker 1.12 (API 1.24) Docker . 11.4 .
: 22 2018 .
Prometheus 1.x Omnibus GitLab
GitLab 11.4 ( 22 2018 ) Prometheus 1.0 Omnibus GitLab. Prometheus 2.0, 1.0. 2.0 , , .
GitLab 12.0 Prometheus 2.0, . Prometheus 1.0 .
: GitLab 12.0
GitLab 11.3 11.4, . .
, , , .
GitLab.com 34 , .
GitLab Geo Geo .
, Omniauth . , . , omniauth, 11.4. , , , Omniauth .
, :
• GitLab Community Edition
• GitLab Enterprise Edition
• GitLab Runner
GitLab, . GitLab .
Actualización
.
GitLab
GitLab : (SaaS) .
: .
• Core : , GitLab .
• Starter : , , , .
• Premium : , , 24/7.
• Ultimate : , .
SaaS — GitLab.com : , GitLab; .
• Free : . Free , Gold .
• Bronze : , .
• Silver : , DevOps, .
• Gold : CI/CD. Gold , .