Introducció

Integrar Jenkins amb sistemes de control de versions (VCS) és essencial per automatitzar el procés de construcció, prova i desplegament del codi. Els VCS més comuns inclouen Git, Subversion (SVN), Mercurial, entre d'altres. En aquest tema, ens centrarem principalment en la integració amb Git, ja que és el VCS més utilitzat actualment.

Objectius

  • Entendre la importància de la integració de Jenkins amb VCS.
  • Aprendre a configurar Jenkins per treballar amb Git.
  • Crear una feina de Jenkins que cloni un repositori de Git i executi una construcció.

Conceptes Clau

  • VCS (Version Control System): Sistema que permet gestionar els canvis en el codi font al llarg del temps.
  • Repositori: Emmagatzematge centralitzat del codi font.
  • Branch: Una línia de desenvolupament dins d'un repositori.
  • Commit: Un canvi guardat en el repositori.

Configuració de Jenkins per Treballar amb Git

  1. Instal·lació del Plugin de Git

Per integrar Jenkins amb Git, primer hem d'assegurar-nos que el plugin de Git està instal·lat.

  1. Navega a Manage Jenkins > Manage Plugins.
  2. A la pestanya Available, cerca "Git Plugin".
  3. Selecciona el plugin i fes clic a Install without restart.

  1. Configuració Global de Git

Després d'instal·lar el plugin, hem de configurar Git a nivell global.

  1. Navega a Manage Jenkins > Global Tool Configuration.
  2. A la secció Git, fes clic a Add Git.
  3. Proporciona un nom i la ruta a l'executable de Git (per exemple, /usr/bin/git).

  1. Creació d'una Feina de Jenkins amb Git

Ara que tenim Git configurat, crearem una feina de Jenkins que cloni un repositori de Git i executi una construcció.

  1. Navega a la pàgina principal de Jenkins i fes clic a New Item.
  2. Proporciona un nom per a la feina i selecciona Freestyle project.
  3. A la secció Source Code Management, selecciona Git.
  4. Proporciona l'URL del repositori de Git (per exemple, https://github.com/usuari/repo.git).
  5. Si el repositori requereix autenticació, proporciona les credencials necessàries.
  6. A la secció Build Triggers, selecciona Poll SCM i proporciona un cron (per exemple, H/5 * * * * per verificar canvis cada 5 minuts).
  7. A la secció Build, afegeix un pas de construcció (per exemple, Execute shell) i proporciona el codi necessari per construir el projecte (per exemple, make o ./build.sh).

Exemple de Configuració

pipeline {
    agent any
    stages {
        stage('Checkout') {
            steps {
                git url: 'https://github.com/usuari/repo.git', branch: 'main'
            }
        }
        stage('Build') {
            steps {
                sh 'make'
            }
        }
    }
}

Exercici Pràctic

Objectiu

Crear una feina de Jenkins que cloni un repositori de Git i executi una construcció bàsica.

Passos

  1. Instal·la el plugin de Git a Jenkins.
  2. Configura Git a nivell global.
  3. Crea una nova feina de Jenkins.
  4. Configura la feina per clonar un repositori de Git.
  5. Afegeix un pas de construcció que executi un script de construcció.

Solució

  1. Instal·la el plugin de Git seguint els passos descrits anteriorment.
  2. Configura Git a nivell global seguint els passos descrits anteriorment.
  3. Crea una nova feina de Jenkins anomenada MyGitProject.
  4. A la secció Source Code Management, selecciona Git i proporciona l'URL del repositori.
  5. Afegeix un pas de construcció que executi un script de construcció, per exemple:
#!/bin/bash
echo "Construint el projecte..."
# Comandes de construcció aquí

Errors Comuns i Consells

  • Error d'Autenticació: Assegura't que les credencials proporcionades són correctes i tenen accés al repositori.
  • URL Incorrecta: Verifica que l'URL del repositori és correcta i accessible des del servidor Jenkins.
  • Problemes de Permisos: Assegura't que l'usuari que executa Jenkins té els permisos necessaris per accedir al repositori i executar les comandes de construcció.

Conclusió

Integrar Jenkins amb sistemes de control de versions és un pas fonamental per automatitzar el procés de desenvolupament. En aquest tema, hem après a configurar Jenkins per treballar amb Git, crear una feina que cloni un repositori i executi una construcció. Aquest coneixement és essencial per a la implementació de pipelines de CI/CD eficients.

En el següent tema, explorarem com integrar Jenkins amb eines de compilació per automatitzar encara més el procés de construcció del codi.

© Copyright 2024. Tots els drets reservats