Diferencia entre revisiones de «Caso práctico: Integración de Travis con GitHub.»

De Wiki de EGC
Saltar a: navegación, buscar
(Solución)
Línea 8: Línea 8:
 
'''''2. Configurar Travis'''''
 
'''''2. Configurar Travis'''''
 
:Una vez accedido pueden seguirse las instrucciones que ofrece Travis, en nuestro caso añadimos el repositorio del proyecto y añadimos en la raiz :del proyecto el fichero de configuración de .travis.yml con el siguiente  codigo:
 
:Una vez accedido pueden seguirse las instrucciones que ofrece Travis, en nuestro caso añadimos el repositorio del proyecto y añadimos en la raiz :del proyecto el fichero de configuración de .travis.yml con el siguiente  codigo:
<code>
+
:<code>
 
   language:
 
   language:
 
       - java
 
       - java
Línea 29: Línea 29:
 
   notifications:
 
   notifications:
 
       - email: false
 
       - email: false
 +
:</code>
 +
 +
:Con este fichero estámos indicando que:
 +
:* Se trata de un proyecto java
 +
:* Se usa una base de datos de MySQL
 +
:* Debe funcionar tanto en java 7 como en java 8
 +
:* Antes de comenzar el script cargar el fichero de la base de datos bbdd_Tavis.sql que crea la base de datos y usuarios.
 +
:* Los comandos de maven a ejecutar son clean y test
 +
 +
:fichero bbdd.Travis.sql:
 +
<code>
 +
  start transaction;
 +
  DROP DATABASE IF EXISTS `egc-frontend`;
 +
  CREATE DATABASE `egc-frontend`;
 +
  USE `egc-frontend`;
 +
  GRANT ALL ON `egc-frontend`.* TO 'user-frontend'@'localhost' IDENTIFIED BY 'us4r-front4nd';
 +
commit;
 
</code>
 
</code>
 
 
'''''3. Observar funcionamiento de Travis'''''
 
'''''3. Observar funcionamiento de Travis'''''
 
:A partir de este punto Travis ejecutará las pruebas cada vez que se haga un commit del proyecto en GitHub mostrando en el commit de GitHub un :indicador de si las prueba se han pasado correctamente o ha surgido algún problema.
 
:A partir de este punto Travis ejecutará las pruebas cada vez que se haga un commit del proyecto en GitHub mostrando en el commit de GitHub un :indicador de si las prueba se han pasado correctamente o ha surgido algún problema.

Revisión del 23:10 11 ene 2017

Enunciado

Se pretende conectar Travis a nuestra cuenta de GitHub para que construya el proyecto y pase las pruebas de este== Solución

Solución

1. Conectar Travis con GitHub

Lo primero que se debe hacer es acceder a la pagina de Travis https://travis-ci.org/, una vez en la pagina hay que pulsar en el boton de la :esquina superior izquierda donde dice registrarse con GitHub, donde se nos pedirá nuestros credenciales de GitHub. A continuación GitHub nos :pedirá autorizar a Travis para acceder a nuestra cuenta, una vez autorizado debemos esperar un tiempo para que Travis busque nuestros :repositorios de GitHub.

2. Configurar Travis

Una vez accedido pueden seguirse las instrucciones que ofrece Travis, en nuestro caso añadimos el repositorio del proyecto y añadimos en la raiz :del proyecto el fichero de configuración de .travis.yml con el siguiente codigo:
  language:
      - java
  services:
      - mysql
  jdk:
      - oraclejdk8
      - openjdk7
  before_install:
      - mysql -u root < bbdd_Travis.sql
  script:
      - mvn clean test 
  cache:
      directories:
          - $HOME/.m2
  dist:
      - trusty
  sudo:
      - false
  notifications:
      - email: false
Con este fichero estámos indicando que:
  • Se trata de un proyecto java
  • Se usa una base de datos de MySQL
  • Debe funcionar tanto en java 7 como en java 8
  • Antes de comenzar el script cargar el fichero de la base de datos bbdd_Tavis.sql que crea la base de datos y usuarios.
  • Los comandos de maven a ejecutar son clean y test
fichero bbdd.Travis.sql:

  start transaction;
  DROP DATABASE IF EXISTS `egc-frontend`;
  CREATE DATABASE `egc-frontend`; 
  USE `egc-frontend`;
  GRANT ALL ON `egc-frontend`.* TO 'user-frontend'@'localhost' IDENTIFIED BY 'us4r-front4nd';

commit; 3. Observar funcionamiento de Travis

A partir de este punto Travis ejecutará las pruebas cada vez que se haga un commit del proyecto en GitHub mostrando en el commit de GitHub un :indicador de si las prueba se han pasado correctamente o ha surgido algún problema.