En aquest tema, aprendrem com integrar Jenkins amb diverses eines de compilació per automatitzar el procés de construcció del nostre codi. Les eines de compilació són essencials per compilar, empaquetar i preparar el codi per a la seva distribució o desplegament. Jenkins pot treballar amb una àmplia varietat d'eines de compilació, com Maven, Gradle, Ant, entre d'altres.
Objectius del Tema
- Entendre la importància de les eines de compilació en el procés de desenvolupament.
- Aprendre a configurar Jenkins per treballar amb diferents eines de compilació.
- Crear i executar feines de Jenkins que utilitzin aquestes eines.
Conceptes Clau
- Eines de Compilació: Programes que automatitzen la compilació del codi font en binaris executables.
- Plugins de Jenkins: Extensions que permeten a Jenkins integrar-se amb altres eines i tecnologies.
Eines de Compilació Populars
A continuació, es presenten algunes de les eines de compilació més utilitzades:
| Eina de Compilació | Descripció |
|---|---|
| Maven | Eina de gestió i comprensió de projectes, principalment per a projectes Java. |
| Gradle | Eina de construcció flexible que suporta diversos llenguatges de programació. |
| Ant | Eina de construcció basada en XML, també per a projectes Java. |
Integració amb Maven
Instal·lació del Plugin de Maven
- Accedeix a Jenkins: Inicia sessió al teu servidor Jenkins.
- Instal·la el Plugin:
- Ves a
Manage Jenkins>Manage Plugins. - A la pestanya
Available, cercaMaven Integration plugin. - Marca la casella i fes clic a
Install without restart.
- Ves a
Configuració de Maven a Jenkins
- Configura Maven:
- Ves a
Manage Jenkins>Global Tool Configuration. - A la secció
Maven, fes clic aAdd Maven. - Proporciona un nom i la ruta d'instal·lació de Maven al teu sistema.
- Ves a
Creació d'una Feina de Jenkins amb Maven
- Crea una Nova Feina:
- Ves a la pàgina principal de Jenkins i fes clic a
New Item. - Dona un nom a la feina i selecciona
Freestyle project.
- Ves a la pàgina principal de Jenkins i fes clic a
- Configura la Feina:
- A la secció
Build, fes clic aAdd build stepi seleccionaInvoke top-level Maven targets. - Proporciona els objectius de Maven (per exemple,
clean install).
- A la secció
- Executa la Feina:
- Desa la configuració i fes clic a
Build Nowper executar la feina.
- Desa la configuració i fes clic a
Exemple de Configuració de Feina amb Maven
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>Integració amb Gradle
Instal·lació del Plugin de Gradle
- Accedeix a Jenkins: Inicia sessió al teu servidor Jenkins.
- Instal·la el Plugin:
- Ves a
Manage Jenkins>Manage Plugins. - A la pestanya
Available, cercaGradle Plugin. - Marca la casella i fes clic a
Install without restart.
- Ves a
Configuració de Gradle a Jenkins
- Configura Gradle:
- Ves a
Manage Jenkins>Global Tool Configuration. - A la secció
Gradle, fes clic aAdd Gradle. - Proporciona un nom i la ruta d'instal·lació de Gradle al teu sistema.
- Ves a
Creació d'una Feina de Jenkins amb Gradle
- Crea una Nova Feina:
- Ves a la pàgina principal de Jenkins i fes clic a
New Item. - Dona un nom a la feina i selecciona
Freestyle project.
- Ves a la pàgina principal de Jenkins i fes clic a
- Configura la Feina:
- A la secció
Build, fes clic aAdd build stepi seleccionaInvoke Gradle script. - Proporciona les tasques de Gradle (per exemple,
clean build).
- A la secció
- Executa la Feina:
- Desa la configuració i fes clic a
Build Nowper executar la feina.
- Desa la configuració i fes clic a
Exemple de Configuració de Feina amb Gradle
plugins {
id 'java'
}
group 'com.example'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}
test {
useJUnitPlatform()
}Exercicis Pràctics
Exercici 1: Configuració de Maven
- Instal·la el plugin de Maven a Jenkins.
- Configura Maven a
Global Tool Configuration. - Crea una feina de Jenkins que executi els objectius
clean installen un projecte Maven.
Exercici 2: Configuració de Gradle
- Instal·la el plugin de Gradle a Jenkins.
- Configura Gradle a
Global Tool Configuration. - Crea una feina de Jenkins que executi les tasques
clean builden un projecte Gradle.
Solucions als Exercicis
Solució a l'Exercici 1
- Instal·lació del Plugin de Maven:
- Ves a
Manage Jenkins>Manage Plugins. - Cerca
Maven Integration plugini instal·la'l.
- Ves a
- Configuració de Maven:
- Ves a
Manage Jenkins>Global Tool Configuration. - Afegeix una nova instal·lació de Maven amb la ruta correcta.
- Ves a
- Creació de la Feina:
- Crea una nova feina
Freestyle project. - Afegeix un pas de construcció
Invoke top-level Maven targetsamb els objectiusclean install.
- Crea una nova feina
Solució a l'Exercici 2
- Instal·lació del Plugin de Gradle:
- Ves a
Manage Jenkins>Manage Plugins. - Cerca
Gradle Plugini instal·la'l.
- Ves a
- Configuració de Gradle:
- Ves a
Manage Jenkins>Global Tool Configuration. - Afegeix una nova instal·lació de Gradle amb la ruta correcta.
- Ves a
- Creació de la Feina:
- Crea una nova feina
Freestyle project. - Afegeix un pas de construcció
Invoke Gradle scriptamb les tasquesclean build.
- Crea una nova feina
Resum
En aquest tema, hem après com integrar Jenkins amb eines de compilació com Maven i Gradle. Hem vist com instal·lar els plugins necessaris, configurar les eines i crear feines de Jenkins per automatitzar el procés de construcció del codi. Aquestes integracions són fonamentals per establir un flux de treball eficient i automatitzat en el desenvolupament de programari.
Jenkins: De Principiant a Avançat
Mòdul 1: Introducció a Jenkins
Mòdul 2: Conceptes Bàsics de Jenkins
- Visió General del Tauler de Jenkins
- Creant i Executant Feines
- Entenent les Pipelines de Jenkins
- Utilitzant Plugins de Jenkins
Mòdul 3: Pipelines de Jenkins
- Pipeline com a Codi
- Pipelines Declaratives vs Scriptades
- Creant una Pipeline Simple
- Sintaxi de Pipeline
Mòdul 4: Pipelines Avançades de Jenkins
- Etapes i Passos de Pipeline
- Execució Paral·lela en Pipelines
- Utilitzant Variables d'Entorn
- Millors Pràctiques de Pipeline
Mòdul 5: Administració de Jenkins
- Gestionant Nodes de Jenkins
- Configurant la Seguretat
- Còpia de Seguretat i Restauració de Jenkins
- Monitorant Jenkins
Mòdul 6: Integrant Jenkins
- Integració amb Sistemes de Control de Versions
- Integració amb Eines de Compilació
- Integració amb Eines de Prova
- Integració amb Eines de Desplegament
Mòdul 7: Jenkins per a la Integració i el Lliurament Continu (CI/CD)
- Entenent CI/CD
- Configurant una Pipeline de CI
- Configurant una Pipeline de CD
- Automatitzant Desplegaments
Mòdul 8: Temes Avançats de Jenkins
- Utilitzant Jenkins amb Docker
- Jenkins i Kubernetes
- Jenkins com a Codi amb Jenkinsfile
- Escalant Jenkins
