Hola,
tras escuchar un par de charlas en la London Perl Conference 2019 (
vídeos aquí) tenía pendiente agregar una validación por
integración continua a uno de nuestros repositorios en GitHub. Opté por
Travis, aunque otra buena opción si empiezas de cero es
https://about.gitlab.com
|
https://travis-ci.org |
Para qué sirve esto? Pues para no romper nada en bases de código que ya tienen un cierto tamaño cuando haces cambios a lo largo del tiempo. En mi caso, el repositorio
https://github.com/eead-csic-compbio/get_homologues tiene más de 20K líneas de código y acumula actualizaciones (
commits) desde noviembre de 2016. Al vincular este repositorio a Travis (
https://travis-ci.com/eead-csic-compbio/get_homologues) cada vez que hago un nuevo
commit/push se lanza una máquina virtual que hace una batería de tests y me informa si va todo bien o si algo se ha roto.
Es sencillo, debes seguir estos pasos:
- Vincular tu repositorio GitHub en https://travis-ci.com con el mismo usuario que usas en GitHub.
- Agrega al repositorio un fichero .travis.yml con instrucciones para que Travis sepa como instalar correctamente el código del repositorio y sus dependencias. Puedes comprobar mi ejemplo .travis.yml , adecuado para un proyecto en Perl. Verás que las dependencias de Perl están en el fichero cpanfile. Hay documentación para otrs lenguajes, por ejemplo python .
- En tu repositorio preparar una batería de tests o pruebas para comprobar que todo funciona cómo esperas. Por defecto Travis hace $ make test, por tanto lo más fácil es crear un fichero Makefile con un objetivo test incluído. Ejemplo: Makefile
- En el fichero markdwon README.md de tu repositorio puedes agregar la siguiente línea, adaptada a tu proyecto, para tener el certificado actualizado de que el repositorio pasa los tests en su estado actual:
[![Build Status](https://travis-ci.com/eead-csic-compbio/get_homologues.svg?branch=master)](https://travis-ci.com/eead-csic-compbio/get_homologues)
Hasta pronto,
Bruno