Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa Próxima revisión Ambos lados, revisión siguiente | ||
clase:daw:daw:2eval:tema09 [2021/01/04 14:44] admin [Contenedor con Jenkins] |
clase:daw:daw:2eval:tema09 [2021/01/04 16:02] admin [Ejercicios] |
||
---|---|---|---|
Línea 26: | Línea 26: | ||
En ejercicios de temas anteriores hemos visto como instalar Jenkins.Ahora vamos a ejecutar un Script desde Jenkins | En ejercicios de temas anteriores hemos visto como instalar Jenkins.Ahora vamos a ejecutar un Script desde Jenkins | ||
- | ==== root por SSH ==== | + | ===== root por SSH ===== |
Antes que nada debemos permitir que se pueda acceder por SSH como root desde la máquina real. Esto lo vamos a necesitar ya que desde Jenkins vamos a ejecutar "npm run deploy" | Antes que nada debemos permitir que se pueda acceder por SSH como root desde la máquina real. Esto lo vamos a necesitar ya que desde Jenkins vamos a ejecutar "npm run deploy" | ||
Línea 42: | Línea 42: | ||
</ | </ | ||
- | ==== SSH2 Easy ==== | + | ===== Plugin |
Otra cosa que necesitamos hacer es instalar y configurar el plugin "SSH2 Easy" para poder acceder por SSH a la máquina real y así lanzar las órdenes en la máquina real. | Otra cosa que necesitamos hacer es instalar y configurar el plugin "SSH2 Easy" para poder acceder por SSH a la máquina real y así lanzar las órdenes en la máquina real. | ||
Línea 68: | Línea 68: | ||
* Server IP: La IP de la máquina real. | * Server IP: La IP de la máquina real. | ||
- | ==== Crear un API Token ==== | ||
- | Ahora vamos a añadir un API Token. Es como una contraseña para el usuario. | ||
- | * Pulsa en nuestro nombre de usuario en la parte superior derecha. | + | ===== Crear un Job ===== |
- | * En el menu lateral, ves a " | + | |
- | * Pulsa en el botón de "Add new Token" y en el botón " | + | |
- | * Copia en algún lugar seguro el Token generado | + | |
- | * Pulsa en el botón " | + | |
- | + | ||
- | El token lo vamos a usar porque con ese token podremos lanzar un Job remotamente usando URL similares a la siguiente: | + | |
- | + | ||
- | http:// | + | |
- | + | ||
- | + | ||
- | ==== Crear un Job ==== | + | |
Vamos ahora a crear una tarea para poder ejecutar un script desde Jenkins en la máquina real. | Vamos ahora a crear una tarea para poder ejecutar un script desde Jenkins en la máquina real. | ||
* Pulsa en "Nueva Tarea" , escribe " | * Pulsa en "Nueva Tarea" , escribe " | ||
- | * Ves al apartado " | ||
* Ves al apartado de " | * Ves al apartado de " | ||
* El el campo " | * El el campo " | ||
Línea 111: | Línea 97: | ||
</ | </ | ||
+ | |||
+ | ===== GitHub Actions ===== | ||
+ | Ahora vamos a ver con configurar Jenkins y GitHub para que al hacer un cambios en " | ||
+ | |||
+ | |||
+ | En Jenkins vamos a creara un Token (Es como una contraseña del usuario) | ||
+ | * Pulsa en nuestro nombre de usuario en la parte superior derecha. | ||
+ | * En el menu lateral, ves a " | ||
+ | * Pulsa en el botón de "Add new Token" y en el botón " | ||
+ | * Copia en algún lugar seguro el Token generado | ||
+ | * Pulsa en el botón " | ||
+ | |||
+ | Ves al Job y en " | ||
+ | * Ves al apartado " | ||
+ | * Marca la opción " | ||
+ | * Escribe el Token que habías generado antes. | ||
+ | |||
+ | En el código fuente del proyecto , añade el fichero '' | ||
+ | |||
+ | <sxh yml> | ||
+ | name: deploy | ||
+ | on: | ||
+ | push: | ||
+ | branches: | ||
+ | - main | ||
+ | jobs: | ||
+ | build: | ||
+ | name: desplegar | ||
+ | runs-on: ubuntu-latest | ||
+ | steps: | ||
+ | - name: trigger single Job | ||
+ | uses: appleboy/ | ||
+ | with: | ||
+ | url: "URL del servidor de Jenkins" | ||
+ | user: " | ||
+ | token: "El Token que has generado antes" | ||
+ | job: " | ||
+ | </ | ||
+ | |||
+ | Ahora al hacer cualquier cambio en la rama '' | ||
===== Ejercicios ===== | ===== Ejercicios ===== | ||
Línea 133: | Línea 159: | ||
Lo último que vamos a hacer para automatizar todo el proceso de despliegue es hacer que cuando haya un cambio en master que se despliegue automáticamente el código. | Lo último que vamos a hacer para automatizar todo el proceso de despliegue es hacer que cuando haya un cambio en master que se despliegue automáticamente el código. | ||
- | Para hacerlo deberás: | ||
- | * Investigar como funciona GitHub Actions | ||
- | * Usar [[https:// | ||
+ | ==== Ejercicio 3 ==== | ||
+ | Mira lo que son en GitHub los " | ||
+ | |||
+ | Ahora modifica el fichero '' | ||