Vi definerer typisk en Jenkins -jobb i en Jenkinsfile, en tekstfil som inneholder instruksjonene om hvordan et prosjekt er bygget, testet og distribuert. En Jenkinsfile har forskjellige parametere og trinn, inkludert å påkalle skallkommandoene, analysere kildekoden og mer.
Jenkins støtter to hovedmetoder for å erklære en Jenkinsfile: som et groovy manus eller bruk av Jenkinsfile erklærende syntaks. Når vi definerer jobben, trinnene og handlingene som kreves, kan vi be Jenkins om å kjøre jobben og utføre instruksjonene som er gitt i filen.
Slike oppgaver inkluderer å bygge et programvareprosjekt, kjøre testene, distribuere programvaren til produksjon eller automatisere utførelsen av andre jobber.
Denne opplæringen lærer deg hvordan du kloner en Jenkins -jobb i enkle trinn. Kloning av en jobb refererer til å lage en kopi av en eksisterende jobb med lignende konfigurasjoner som kildejobben.
Jobbkloning kan være nyttig hvis du vil skape en jobb med en lignende konfigurasjon med mindre modifikasjoner. I stedet for å definere jobben igjen, kan du opprette en klone, gjøre de ønskede endringene og kjøre jobben på nytt.
Jenkins -konfigurasjon
For å skrive denne opplæringen bruker vi en Jenkins Controller versjon 2.283 som kjører på Debian 11. Vi har også en Jenkins -agent som kjører på Jenkins versjon 2.375 LT på Windows 11.
Gjenskape gjerne et lignende miljø eller bruk det eksisterende oppsettet.
Sette opp en prøve Jenkins -jobb
La oss starte med å lage en enkel Hello World -rørledning i Jenkins for å demonstrere hvordan vi kan klone en jobb.
Logg deg på Jenkins -dashbordet ditt og klikk på "Nytt element".
Gi jobben et navn og kaller det “Hello_World”. Velg jobbtypen som en rørledning.
Hopp over den andre konfigurasjonen og ta turen ned til rørledningsdelen. Her vil vi gi et enkelt Jenkinsfile -skript som vist i følgende:
rørledning
agent noen
Stadier
scene ('hei')
trinn
ekko 'Hello World'
I dette tilfellet sender rørledningen en "Hello World" -melding etter fullføring. Klikk "Lagre" for å fullføre redigering av rørledningen.
Klon en jobb i Jenkins
For å klone en jobb i Jenkins, start med å logge deg på Jenkins -nettgrensesnittet ditt.
Når du er fornøyd, klikker du "OK" for å sette i gang en ny jobb. Jenkins skaper en ny jobb med samme konfigurasjon som originalen. Du kan deretter gjøre nødvendige endringer i rørledningen til den nye jobben og klikke på "Lagre" for å bruke endringene.
Merk: Kloning av jobben i Jenkins kopierer ikke bygghistorikken eller gjenstandene til den opprinnelige jobben. Den nye jobben starter med en ren byggehistorie og har ingen tilknyttede byggegjenstander.
Klon Jenkins -jobben via CLI
Du kan også klone en jobb ved å bruke Jenkins CLI. Kommandosyntaks er som følger:
$ java -jar jenkins -cli.krukke -S http: /// -Websocket Copy -Job Src DST
SRC viser til navnet på den eksisterende jobben, og DST er navnet på den nye jobben som skal opprettes.
Eksempel:
$ java -jar jenkins -cli.Jar -S http: // localhost: 8080/-websocket copy -job hello_world hello_world_copy
Merk: Å bruke CLI lar deg ikke endre konfigurasjonen av den nye jobben. Du må få tilgang til Jenkins -dashbordet for å gjøre endringer i den nyopprettede jobben.
Konklusjon
Du lærte hvordan du bruker Jenkins Clone -funksjonen for raskt å skape en jobb med en lignende konfigurasjon med den allerede eksisterende jobben. Som nevnt inkluderer ikke kloning av en jobb bygghistorien og gjenstandene til den opprinnelige jobben.