clase:daw:daw:tema07
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| clase:daw:daw:tema07 [2026/10/28 10:09] – Añadida GitHub CLI (issues, workflows) y GitHub Projects con los scripts de issues, traído de daw-proyecto claude | clase:daw:daw:tema07 [2026/10/28 10:18] (actual) – Quitar la sección «Contenedor con Jenkins»: el concepto ya está en la introducción claude | ||
|---|---|---|---|
| Línea 8: | Línea 8: | ||
| * [[https:// | * [[https:// | ||
| - | Es despliegue continuo es desplegar las aplicaciones web lo más pronto posible. | + | El despliegue continuo es desplegar las aplicaciones web lo más pronto posible: cada cambio que se sube al repositorio acaba en el servidor sin que nadie tenga que hacerlo a mano. |
| - | Hay varias formas de hacer eso, las 2 que vamos a comentar son: | + | Para eso se usa un **servidor de automatización**: un programa que, cuando ocurre algo (un '' |
| - | | + | |
| - | | + | |
| + | - Descargar el código del repositorio. | ||
| + | - Compilarlo y pasar los tests. | ||
| + | - Construir la imagen Docker. | ||
| + | - Conectarse al servidor y arrancar la nueva versión. | ||
| - | ===== Contenedor con Jenkins ===== | + | Si un paso falla, se para ahí y avisa: |
| - | Jenkins es lo que se llama un " | + | |
| - | {{clase:daw:daw:jenkins_logo.png?200|}} | + | Los dos que vamos a ver son: |
| + | * [[https:// | ||
| + | * [[https:// | ||
| - | Hay abundante documentación sobre él , en los siguientes enlaces: | + | ^ ^ Jenkins ^ GitHub Actions ^ |
| - | * [[https:// | + | | Dónde se ejecuta | En un servidor nuestro | En máquinas de GitHub | |
| - | * [[https:// | + | | Hay que instalarlo y mantenerlo | ✓ | | |
| - | * [[https:// | + | | Dónde se escriben los pasos | En Jenkins | En el repositorio, |
| - | * [[https:// | + | | Sirve para repositorios fuera de GitHub | ✓ | | |
| - | Aunque Jenkins pueda parecer sencillo o superfluo, usar Jenkins //**es el camino**// para hacer software de calidad.: | + | Si el proyecto está en GitHub, usa GitHub Actions. |
| - | + | ||
| - | {{clase: | + | |
| ===== GitHub Actions ===== | ===== GitHub Actions ===== | ||
| - | GitHub | + | Un **workflow** es un fichero YAML dentro de la carpeta '' |
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Lo que no debe estar en el repositorio (contraseñas, | ||
| + | |||
| + | <note important> | ||
| + | <note important> | ||
| - | Para ello en el código fuente del proyecto Java , hay que añadir el fichero '' | + | Para desplegar |
| <sxh yml> | <sxh yml> | ||
| Línea 91: | Línea 103: | ||
| </ | </ | ||
| - | Ahora al hacer cualquier cambio en la rama '' | + | Ahora al hacer cualquier cambio en la rama '' |
| + | |||
| + | Cada ejecución sale en la pestaña //Actions// del repositorio, | ||
| Puedes ver un ejemplo en [[https:// | Puedes ver un ejemplo en [[https:// | ||
| Línea 172: | Línea 186: | ||
| Un **Project** es un tablero de GitHub con los issues del repositorio como tarjetas, repartidas en columnas por su estado: //Todo//, //In Progress// y //Done//. Está en GitHub, en el menú // | Un **Project** es un tablero de GitHub con los issues del repositorio como tarjetas, repartidas en columnas por su estado: //Todo//, //In Progress// y //Done//. Está en GitHub, en el menú // | ||
| - | {{: | + | {{: |
| ==== Crear el tablero ==== | ==== Crear el tablero ==== | ||
| Línea 180: | Línea 194: | ||
| * En //Start from scratch//, la plantilla **Board**. | * En //Start from scratch//, la plantilla **Board**. | ||
| - | {{: | + | {{: |
| * El nombre del proyecto y, marcado, //Import items from repository// | * El nombre del proyecto y, marcado, //Import items from repository// | ||
| - | {{: | + | {{: |
| * Sale con las tres columnas, //Todo//, //In Progress// y //Done//, las que usan los scripts. | * Sale con las tres columnas, //Todo//, //In Progress// y //Done//, las que usan los scripts. | ||
| - | {{: | + | {{: |
| <note important> | <note important> | ||
clase/daw/daw/tema07.1793178581.txt.gz · Última modificación: por claude
