Diferencia entre revisiones de «Gestión de código fuente e Integración Continua»
De Wiki de EGC
(→Ejercicio 7. Chrome) |
|||
(No se muestran 6 ediciones intermedias de 2 usuarios) | |||
Línea 52: | Línea 52: | ||
# Incluya alguna prueba de Selenium en su código. | # Incluya alguna prueba de Selenium en su código. | ||
# Configura Travis CI para que instale las dependencias de python necesarias. | # Configura Travis CI para que instale las dependencias de python necesarias. | ||
− | # Configura Travis CI para que la máquina virtual disponga de Chrome. Puedes seguir [https://docs.travis-ci.com/user/chrome | + | # Configura Travis CI para que la máquina virtual disponga de Chrome. Puedes seguir [https://docs.travis-ci.com/user/chrome estas instrucciones] |
# ¿Obtiene los resultados esperado? ¿Por qué? | # ¿Obtiene los resultados esperado? ¿Por qué? | ||
Línea 59: | Línea 59: | ||
# Analiza el reporte de Codacy para el proyecto. | # Analiza el reporte de Codacy para el proyecto. | ||
# ¿Crees que el estado de los problemas (Issues), cobertura y duplicidad de decide son importantes? | # ¿Crees que el estado de los problemas (Issues), cobertura y duplicidad de decide son importantes? | ||
− | # Siguiendo [https://docs.codacy.com/repositories/badges/ | + | # Siguiendo [https://docs.codacy.com/repositories/badges/ estas instrucciones] configura el README.md de tu proyecto para que muestre el estado de la calidad del proyecto. |
---- | ---- | ||
Línea 65: | Línea 65: | ||
[https://thucnc.medium.com/how-to-show-current-git-branch-with-colors-in-bash-prompt-380d05a24745 Cómo mostrar la rama de Git en el promt de Bash] | [https://thucnc.medium.com/how-to-show-current-git-branch-with-colors-in-bash-prompt-380d05a24745 Cómo mostrar la rama de Git en el promt de Bash] | ||
+ | |||
+ | = Grabación de la práctica en ASCII = | ||
+ | |||
+ | Video de la clase: [https://hdvirtual.us.es/discovirt/index.php/s/NbT6bifcneaRBtm aquí] |
Revisión actual del 20:53 15 dic 2020
Página_Principal -> 2020/2021 -> Prácticas - 20/21
Contenido
Prerrequisitos
- Ver video de presentación aquí: aquí
- Configuraciones Previas
Uso de Git
Ejercicio 1. git rebase y git merge
- Trabajando en local, crea una rama con el objetivo de desarrollar alguna nueva funcionalidad. Haz algunos commits ahí.
- Muevete a la rama master y haz algún commit más.
- Ahora quieres subir los cambios al servidor remoto con push, pero no te interesa que la rama que has creado exista en el remoto, ya que era algo local tuyo. ¿Qué consideras más oportuno antes de hacer un push? ¿Rebase ó Merge hacia master?
- ¿Qué diferencias habría en la rama master?
Ejercicio 2. git reset
- Trabajando en local, haz varios commits sobre la rama master pero no lo subas al servidor remoto.
- Suponiendo que te los cambios de código que has hecho están bien, pero que los commits y sus mensaje no te parecen tan correctos, ¿cómo deshacemos esos commits sin perder el código fuente?
- Y, si quieres desahacer también los cambios hechos en el código, ¿cómo podemos hacerlo?
- ¿Podemos hacer esto con commits que hayan sido enviados al servidor remoto? ¿Por qué? ¿Qué habría que hacer entonces si quiere revertir cambios en el servidor remoto?
Ejericicio 3. git cherry-pick
- Trabajando en local, crea una rama y haz varios commits.
- Vuelve a la rama master.
- De todos los commits que has hecho en la rama anterior, sólo te interesa uno o dos de ellos, pero no la rama entera, ¿cómo puedes traerte esos cambios a la rama master?
- ¿Crees que es buena práctica usarlo?
Más ejercicios de Git aquí
Uso de Travis
Ejercicio 4. Análisis de pull-request
- Crea una rama donde reduciremos la carga de tests. Comentaremos los tests de mixnet y el test_complete_voting del módulo Voting.
- Crea un pull-request siguiendo estas instrucciones (Fíjate bien que la pull request la haces a la rama
master
de tu repositorio y no a otro repositorio ni aEGCETSI/decide
). - Si abres la pull request que se ha creado, podrás observar abajo cómo se ejecuta una nueva build en Travis CI con la pull request.
- ¿Es exitoso o fallido? ¿Por qué?
Ejercicio 5. Notificaciones
Siguiendo estas instrucciones:
- Configura el README.md de tu proyecto para que muestre una imagen con el estado de la construcción.
- Configura Travis CI para que envíe un correo siempre que haya una nueva build, tanto si tiene éxito como si falla, y que además notifique siempre a tu correo electrónico independientemente de quién haya hecho el commit.
- ¿Te ha llegado el correo? ¿Por qué?
Ejercicio 6. Build Matrix
- Siguiendo estas instrucciones, configura Travis CI para que lanze las pruebas con varias versiones de Python y django.
- ¿Cuántos jobs se están lanzando?
Ejercicio 7. Chrome
- Incluya alguna prueba de Selenium en su código.
- Configura Travis CI para que instale las dependencias de python necesarias.
- Configura Travis CI para que la máquina virtual disponga de Chrome. Puedes seguir estas instrucciones
- ¿Obtiene los resultados esperado? ¿Por qué?
Uso de Codacy
Ejercicio 8. Calidad de código
- Analiza el reporte de Codacy para el proyecto.
- ¿Crees que el estado de los problemas (Issues), cobertura y duplicidad de decide son importantes?
- Siguiendo estas instrucciones configura el README.md de tu proyecto para que muestre el estado de la calidad del proyecto.
Cómo mostrar la rama de Git en el promt de Bash
Grabación de la práctica en ASCII
Video de la clase: aquí