Come clonare un lavoro di Jenkins

Come clonare un lavoro di Jenkins
Un lavoro in Jenkins si riferisce a un set nominato di passaggi o compiti che Jenkins svolge in sequenza. Varie fonti come un commit in un sistema di controllo della versione, un timer o un evento esterno possono innescare i lavori di Jenkins.

In genere definiamo un lavoro di Jenkins in un Jenkinsfile, un file di testo che contiene le istruzioni su come viene creato, testato e distribuito su come un progetto. A Jenkinsfile ha vari parametri e passaggi tra cui invocare i comandi shell, analizzare il codice sorgente e altro ancora.

Jenkins supporta due metodi principali per dichiarare Jenkinsfile: come sceneggiatura groovy o usando la sintassi dichiarativa di Jenkinsfile. Una volta che definiamo il lavoro, i passaggi e le azioni richieste, possiamo dire a Jenkins di eseguire il lavoro ed eseguire le istruzioni fornite nel file.

Tali attività includono la costruzione di un progetto software, l'esecuzione dei test, la distribuzione del software in produzione o l'automazione dell'esecuzione di altri lavori.

Questo tutorial ti insegna come clonare un lavoro di Jenkins in semplici passi. La clonazione di un lavoro si riferisce alla creazione di una copia di un lavoro esistente con configurazioni simili al lavoro di origine.

La clonazione del lavoro può essere utile se si desidera creare un lavoro di una configurazione simile con piccole modifiche. Invece di ridefinire di nuovo il lavoro, puoi creare un clone, apportare le modifiche desiderate e eseguire nuovamente il lavoro.

Configurazione di Jenkins

Per scrivere questo tutorial, utilizziamo un controller Jenkins versione 2.283 che funziona su Debian 11. Abbiamo anche un agente Jenkins che funziona sulla versione 2 di Jenkins.375 LTS su Windows 11.

Sentiti libero di replicare un ambiente simile o utilizzare la configurazione esistente.

Impostazione di un lavoro di Jenkins campione

Cominciamo creando una semplice pipeline Hello World in Jenkins per dimostrare come possiamo clonare un lavoro.

Accedi alla dashboard di Jenkins e fai clic su "Nuovo elemento".

Dai un nome al lavoro e chiamalo "Hello_World". Seleziona il tipo di lavoro come pipeline.

Salta l'altra configurazione e scendi alla sezione della pipeline. Qui forniremo un semplice script Jenkinsfile come mostrato nel seguente:

tubatura
agente qualsiasi
fasi
Stage ('Hello')
Passaggi
Echo "Hello World"



In questo caso, la pipeline emette un messaggio "Hello World" al completamento. Fai clic su "Salva" per finire la modifica della pipeline.

Clona un lavoro in Jenkins

Per clonare un lavoro in Jenkins, inizia accedendo alla tua interfaccia Web Jenkins.

  • Fai clic su "Nuovo elemento" per aggiungere un nuovo lavoro Jenkins.
  • Successivamente, inserisci il nome del lavoro che desideri creare. Nel nostro esempio, lo chiamiamo ciao_world_copy.
  • Quindi, invece di scegliere il tipo di lavoro come "pipeline", vai in basso e seleziona "Copia da". Qui, inserisci il nome del lavoro esistente che desideri clonare.

Una volta soddisfatto, fai clic su "OK" per avviare un nuovo lavoro. Jenkins crea un nuovo lavoro con la stessa configurazione dell'originale. È quindi possibile apportare tutte le modifiche necessarie alla pipeline del nuovo lavoro e fare clic su "Salva" per applicare le modifiche.

Nota: clonazione del lavoro in Jenkins non copia la storia della build o gli artefatti del lavoro originale. Il nuovo lavoro inizia con una storia di costruzione pulita e non ha artefatti di costruzione associati.

Clona il lavoro di Jenkins tramite CLI

Puoi anche clonare un lavoro usando la CLI Jenkins. La sintassi del comando è la seguente:

$ java -jar jenkins -cli.Jar -s http: /// -WebSocket copia -job src dst

L'SRC si riferisce al nome del lavoro esistente e DST è il nome del nuovo lavoro da creare.

Esempio:

$ java -jar jenkins -cli.JAR -S http: // localhost: 8080/-websocket copy -job hello_world hello_world_copy

Nota: l'uso della CLI non consente di modificare la configurazione del nuovo lavoro. È necessario accedere alla dashboard di Jenkins per apportare eventuali modifiche al lavoro appena creato.

Conclusione

Hai imparato come utilizzare la funzione clone Jenkins per creare rapidamente un lavoro con una configurazione simile con il lavoro già esistente. Come accennato, la clonazione di un lavoro non include la storia della costruzione e gli artefatti del lavoro originale.