GitHub Super Linterna: Una linterna para gobernarlas a todas

Configurar un nuevo repositorio con todas las linternas correctas para los diferentes tipos de código puede llevar mucho tiempo y ser tedioso.

Se necesitan tantas herramientas y configuraciones que a menudo se requieren más de un lintera para cubrir todos los idiomas utilizados dentro de un solo proyecto de código.

GitHub Super Linter fue construido por el equipo de ingenieros de GitHub Servicios DevOps para intentar tapar ese problema, y ahora pasa a ser de código abierto.

¿Qué es la Super Linterna de Github?

Super Linter es un repositorio de código fuente que está empaquetado en un contenedor Docker y llamado por GitHub Actions.

Esto permite que cualquier repositorio en GitHub.com llame al Super Linter y comience a utilizar sus beneficios.

El Super Linter admitirá actualmente muchos idiomas y más en el futuro; por ahora:

  • Ansible, CSS, CoffeeScrip, Dockerfile, Golang, JavaScript, JSON, Markdown, Perl, Python3, Ruby, Shell, Terraform, TypeScript, XML, YAML y ENV.

¿Cómo funciona la super linterna de Github?

Cuando hayas configurado tu repositorio para comenzar a ejecutar esta acción, cada vez que abras una solicitud de extracción, comenzarás a alinear el commit del código y regresará a través de la API de estado.

Posteriormente, se te informará si alguno de los cambios del código se realizó con éxito o si se detectaron errores, dónde están y cuáles son.

Esto te va a permitir regresar al punto del error, solucionar cualquier problema encontrado y crear un nuevo “commit” a la solicitud de extracción abierta con anterioridad.

En este punto, la “Super Linterna de Github” se ejecutará nuevamente y validará el código actualizado, repitiendo nuevamente el proceso.

Además, como una medida adicional, puedes configurar las reglas de protección de la rama para asegurarte de que el código debe pasar las pruebas a través de la linterna antes de ser fusionadas.

Existen un montón de opciones de personalización a través de banderas de control y de plantillas que pueden ayudarte a personalizar la Super Linterna dentro de tu propio repositorio individual.

Simplemente debes seguir las instrucciones detalladas en el repositorio de la Super Linter y el wiki de la Super Linterna, puedes encontrar los enalces a continuación.

Esta herramienta también puede ser útil para cualquier repositorio donde conviven múltiples tipos de código y / o documentación (monorepositorio).

Repositorio de Github Super Lintern
Wiki Super Lintern

? Los Mejores Chollos de Amazon, ¡Agrégalos a tu Lista de Deseos!

Características de Github Super Lint

Super Linter logra resolver muchos problemas a través de la automatización, ofrecienco características como las siguientes:

  • Evita que el código roto se cargue en ramas maestras.
  • Ayuda a establecer las mejores prácticas de codificación con varios idiomas.
  • Crea pautas en el diseño y el formato del código.
  • Automatiza el proceso para ayudar a simplificar las revisiones de código.
  • Con estos criterios básicos, deberíamos enviar un código mejor, más limpio y más estable internamente y a nuestros clientes y socios.

? Los Mejores Chollos de Amazon, ¡Agrégalos a tu Lista de Deseos!

Reglas predeterminadas de la super linterna de Github

La estandarización de un conjunto de reglas en la Super Linterna ha sido un desafío interesante, ya que cada desarrollador es único en su forma de codificar.

Es por ello que permitimos que los usuarios usen las mejores reglas personalizadas para su interfaz concreta. Pero, por si no se definen un conjunto de reglas, se deben establecer unas reglas estándar por defecto para que la linterna sea capaz de funcionar.

Por eso, el conjunto de reglas para Ruby y Rails se extrae de la gema Ruby: rubocop-github y sigue las mismas reglas que usamos en GitHub.com.

Para otros idiomas, elegimos cuál es el valor predeterminado al instalar las linternas que más se suelen usar para cada uno de ellos, como por ejemplo: coffeelint o yamllint .

En otros casos, tratamos de encontrar un término medio que establezca unas simples bases y pueda ayudar a establecer buenas prácticas como: Markdownlint o pylint .

La hermosura de todo esto, es que, desde el primer momento se comenzará a establecer un framework de trabajo común dentro de todo el equipo, y si se necesitará realizar personalizaciones posteriores; nos ofrece una amplia gama de posibilidad de ser implementadas sin demasiado trabajo extra.

Si deseas tener acceso a diferentes plantillas de trabajo, solamente debes ir a la carpeta TEMPLATE del repositorio oficial.

? Plantillas predefinidas para la Linterna

Relacionado

Visual Studio integrado en Github: Codespaces, nuevo editor beta integrado en tus repositorios

Contribuir con código a una comunidad puede ser difícil. Cada repositorio tiene su propia forma de configurar un entorno de desarrollo, que a menudo requiere docenas de pasos antes de poder escribir cualquier código. Peor aún, a veces el entorno de dos proyectos en los que está trabajando entra en conflicto entre sí. Codespaces te brinda un entorno de desarrollo con todas las funciones alojado en ¡SEGUIR LEYENDO!

Universo Github 2021

Un año más Github realiza el evento Universo de Github en el que presentan novedades y lanzan algunos webinar en los que impulsar y mejorar el uso de la plataforma. Si quieres acceder a todo el contenido, se requiere una cuenta de Github y el registro tanto en el Evento como en las sesiones y talleres que más te interesen. ?‍? ACCEDER AL UNIVERSO GITHUB 2021 ¡SEGUIR LEYENDO!

Un token de GitHub mal Gestionado expuso el Código fuente de Mercedes-Benz

El 29 de septiembre de 2023, ocurrió un importante incidente de seguridad en Mercedes-Benz, un reconocido fabricante de automóviles alemán. Un incidente de mal manejo de un token de GitHub resultó en un acceso no restringido al servidor interno de GitHub de la empresa, exponiendo código fuente crítico al público. Este artículo profundiza en los detalles del incidente, sus posibles consecuencias y las acciones posteriores tomadas ¡SEGUIR LEYENDO!

Scripting con GitHub CLI

Ha pasado un año desde que lanzamos la primera versión pública de GitHub CLI. Desde entonces, hemos agregado funcionalidad para administrar repositorios, comentar problemas, habilitar la fusión automática para solicitudes de extracción, configurar de forma segura valores secretos para acciones de GitHub y más. Sin embargo, donde las herramientas de línea de comandos realmente brillan es en su capacidad para combinarse con otras utilidades e integrarse ¡SEGUIR LEYENDO!

Presentación del Nuevo Director de Seguridad de GitHub

El mundo funciona con software, y una gran parte de él, especialmente el software de código abierto que es parte de todo lo que experimentamos, lo crean millones de desarrolladores en GitHub todos los días. GitHub está fuertemente invertido tanto en la seguridad de la plataforma como en ayudar a los desarrolladores a cambiar sus inversiones de seguridad en la creación de software seguro. La seguridad ¡SEGUIR LEYENDO!

Deja un comentario