Jenkinsfile kjører et skallskript

Jenkinsfile kjører et skallskript
Når du nettopp kommer i gang med Jenkins, kan du innse at du må påkalle SH, Bat eller PowerShell Step for å kjøre Shell -kommandoer på kontrolleren.

Selv om dette kan være nyttig når du jobber med noen få kommandoer, kan det raskt bli slitsomt og utfordrende å administrere når du jobber med flere kommandoer eller kopier av den samme Jenkins -rørledningen.

I denne opplæringen lærer vi hvordan vi kan eliminere et slikt problem ved å legge til kommandoene våre i et skallskript, enten det er et PowerShell -skript eller et bash -skript. Vi vil da diskutere hvordan vi kan fortelle Jenkins om å laste skallskriptet og utføre kommandoene som er definert i filen.

Krav

For denne opplæringen bruker vi følgende:

  1. En Jenkins -kontroller som kjører på Windows.
  2. En Jenkins -agent merket "Debian" som kjører på Debian 11.

Trinn 1: Forbered skallskriptet ditt

Det første trinnet er å sikre at du har skallskriptet ditt klart på Jenkins -agenten. Deretter lager vi et enkelt skallskript for denne opplæringen på Debian 11 -agenten.

Logg inn i Jenkins -agenten din:

$ ssh [email protected]

Når vi er logget inn, må vi lage et skallskript som vi ønsker å bruke i Jenkins -rørledningen vår.

$ CD /Home /Debian
$ Touch MyScript.sh

Rediger skallskriptet og legg til funksjonen til skallskriptet ditt. For denne opplæringen får vi listen over filer og kataloger ved hjelp av AWK.

$ vim myscript.sh

Vi kan deretter legge til skriptet som vist i følgende:

#!/bin/bash
ls -la | awk 'skriv ut $ 9'

Det forrige skriptet er et enkelt manus som kaller LS -LA -kommandoen og gir utdataene til AWK. AWK skriver deretter ut verdien i den spesifiserte posisjonen.

Neste trinn er å sikre at skallet har utført tillatelser. Vi kan gjøre dette ved å kjøre følgende CHMOD -kommando:

$ chmod +x myscript.sh

Før du kjører skriptet på Jenkins -rørledningen, kan du utføre skriptet på den lokale maskinen for å sikre at skriptet fungerer som forventet.

Trinn 2: Sette opp en Jenkins -jobb

Når vi er ferdige, la oss komme tilbake til Jenkins -kontrolleren og konfigurere en jobb som bruker det definerte skriptet.

Velg "Nytt element" på Jenkins Dashboard for å lage en ny jobb. Gi jobben et navn og velg jobbtypen som "rørledning".

Naviger til rørledningsdelen og legg til et rørledningsskript som vist i følgende:

rørledning
agent etikett 'debian'
Stadier
scene ('run manus')
trinn
SH '/Home/Debian/MyScript.sh '



Klikk på “Lagre” for å bruke skriptet og velg “Bygg nå” på venstre rute for å la Jenkins bygge jobben.

På byggnummeret velger du konsollutgangen for å se byggeprosessen for den påkalte jobben.

Konklusjon

Du har nå vellykket lært hvordan du påkaller et skallskript fra en Jenkins -rørledning i noen få trinn.