Server

Konfigurieren der Jenkins-Pipeline mit SonarQube- und GitLab-Integration

Konfigurieren der Jenkins-Pipeline mit SonarQube- und GitLab-Integration

Jenkins Pipeline ist eine Suite von Jenkin-Funktionen. Es ist eine von mehreren Möglichkeiten, einige Jenkins-Schritte oder eine Kombination von Jobs mithilfe von Code zu definieren und den Prozess der Softwarebereitstellung zu automatisieren.

Wenn Sie Jenkins noch nicht eingerichtet haben, finden Sie Anweisungen in unserem Jenkins-Installationshandbuch. Die Pipeline verwendet eine Domain Specific Language (DSL) mit zwei verschiedenen Syntaxen:

In diesem Tutorial konfigurieren wir die deklarative Pipeline mit Sonar- und GitLab-Integration.

Konfigurieren der Jenkins-Pipeline mit SonarQube- und GitLab-Integration

1. Voraussetzungen

Pipeline-Plugin installieren

Wenn Sie die Option gewählt hätten Vorgeschlagene Plugins installieren Wenn Sie Jenkins konfiguriert haben, sollten alle benötigten Plugins automatisch installiert sein. Wenn nicht, keine Sorge, Sie können die Plugins jetzt installieren.

Starten Sie Jenkins und gehen Sie zu Jenkins verwalten -> Plugins verwalten -> Verfügbar

Wenn Sie das Pipeline-Plugin nicht im Verfügbar Abschnitt, überprüfen Sie die Eingerichtet Tab.

Pipeline-Plugin

Sonar-Scanner installieren

Melden Sie sich zuerst beim Jenkins-Server an. Hier werde ich den Sonar-Scanner in den Ordner „/opt“ herunterladen.

cd /opt

Herunterladen mit wget.

wget https://binaries.Sonarquelle.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.2.0.1873-linux.Postleitzahl

wenn wget Befehl nicht verfügbar ist, können Sie ihn mit den folgenden Befehlen installieren:

Für Ubuntu/Debian:

apt-get install wget -y

Für Centos / Redhat:

yum installiere wget -y

Zurück zu Sonar, es ist Zeit, die heruntergeladene Sonar-Datei zu entpacken.

Sonar-Scanner-cli-4 entpacken.2.0.1873-linux.Postleitzahl

Installieren Sie unzip, wenn der Befehl keinen Fehler gefunden hat.

Für Ubuntu/Debian:

apt-get install unzip -y

für Centos / Redhat:

yum install entpacken -y

Sonarpaket umbenennen.

 mv Sonar-Scanner-4.2.0.1873-Linux Sonar-Scanner

Sonar-Scanner umbenennen

Gehen Sie zum Sonarverzeichnis.

CD Sonar-Scanner

Holen Sie sich den Weg.

pwd

Sonar-Scanner-Pfad

Sonar-Scanner-Pfad kopieren:

/opt/sonar-scanner

Sonar-Plugin installieren

Von Jenkins Kopf zu Jenkins verwalten -> Plugins verwalten -> Verfügbar

Suchen nach Sonar und wählen Sie SonarQube-Scanner und klicke Ohne Neustart installieren.

Dann sollte Jenkins das entsprechende Plugin installieren.

SonarQube Scanner-Plugin

SonarQube-Plugin installieren

Wählen Starten Sie Jenkins neu, wenn die Installation abgeschlossen ist. Jenkins sollte neu starten.

Neustart

Sonar-Plugins konfigurieren

Gehe zu Jenkins verwalten -> Globale Toolkonfiguration.

Globale Werkzeugkonfigurationen

Finden SonarQube-Scanner und klicke auf SonarQube-Scanner hinzufügen.

Auswahl aufheben automatisch installieren.

Geben Sie einen beliebigen Namen ein und fügen Sie den kopierten Sonar-Scanner-Pfad ein in SONAR_RUNNER_HOME.

SonarQube-Scannereinstellungen

Dann Konfigurationen speichern.

Konfigurieren der Sonarqube-Servereinstellungen

Holen Sie sich das SonarQube-Token vom SonarQube-Server.

Melden Sie sich beim SonarQube-Server an. Folgen Sie unserer SonarQube Server-Installationsanleitung, um Sonarqube Server zu installieren.

Gehe zu Administration -> Sicherheit -> Benutzer.

Klicke auf Token.

Token

Geben Sie einen beliebigen Namen ein und klicken Sie auf Token generieren.

Token erstellen

Generiertes Token kopieren.

Generiertes Token

Gehen Sie nun zum Jenkins-Server.

Klicken Anmeldeinformationen -> System -> Globale Anmeldeinformationen -> Anmeldeinformationen hinzufügen.

Globale Anmeldeinformationen hinzufügen

Wählen Sie Geheimtext. Fügen Sie das kopierte SonarQube-Token in Secret ein und geben Sie der ID und der Beschreibung einen beliebigen Namen.

SonarQube-Anmeldeinformationen

Hinzufügen des SonarQube-Servers zu Jenkins

Gehe zu Jenkins verwalten -> System konfigurieren.

Finden SonarQube-Server und klicke auf SonarQube hinzufügen.

SonarQube-Serverdetails

Wählen Beim Einfügen des SonarQube-Servers aktivieren, Geben Sie einen beliebigen Namen ein und fügen Sie die SonarQube-Server-URL hinzu.

Wählen Authentifizierungstoken aus dem Dropdown-Menü. Das Token, das wir zuvor hinzugefügt haben, sollte hier aufgelistet werden.

Hinzufügen der Sonar-Projekt.Eigenschaften Datei in das Repository-Root

Hier ist unsere Datei:

# Erforderliches Metadaten-Sonar.projectKey=fosslinux-nodejs Sonar.projectName=fosslinux-nodejs # Durch Kommas getrennte Pfade zu Verzeichnissen mit Quellen (erforderlich) Sonar.Quellen=./ # Sprachsonar.language=js Sonar.profile=node # Kodierung von Quelldateien Sonar.sourceEncoding=UTF-8

Klicken Sie abschließend auf speichern.

GitLab-Server mit Jenkins integrieren

Folgen Sie unserer Gitlab-Anleitung zum Installieren und Konfigurieren von GitLab.

Gehe zu Anmeldeinformationen -> System -> Globale Anmeldeinformationen -> Anmeldeinformationen hinzufügen.

Wählen Sie a Benutzername mit Passwort. Fügen Sie GitLab-Anmeldedaten hinzu und klicken Sie auf OK.

Gitlab-Anmeldeinformationen

Melden Sie sich beim Jenkins-Server an und installieren Sie git.

Für Ubuntu/Debian:

apt-get install git -y

Für CentOS/Redhat:

yum installiere git -y

Hier werden wir mit der NodeJS-App arbeiten, also installieren Sie sie zuerst.

NodeJS-Plugin installieren

Gehe zu Jenkins verwalten -> Plugin-Manager -> verfügbar.

Suche nach NodeJS.

NodeJS-Plugin

Dann wähle das Plugin aus und ohne Neustart installieren.

Installation des Plugins

Klicke auf Starten Sie Jenkins neu, wenn die Installation abgeschlossen ist und keine Jobs ausgeführt werden, und Jenkins sollte automatisch neu starten.

NodeJS-Plugin konfigurieren

Klicke auf Jenkins verwalten > Globale Toolkonfiguration -> NodeJS

NodeJS-Einstellungen

Gib einen beliebigen Namen. Hier haben wir ausgewählt automatisch installieren und NodeJS 10.

Speichern Sie die Konfigurationen.

Erstellen einer deklarativen Pipeline

Gehen Sie zum Jenkins-Dashboard, klicken Sie auf Neu Artikel. Geben Sie dann einen Artikelnamen ein und wählen Sie das Projekt 'Pipeline' aus. Klicken OK.

Erstellen Sie eine Pipeline

Wählen Pipeline Skript

Pipeline-Skript auswählen

Hier ist das einfache Pipeline-Skript für git clone, die SonarQube-Qualitätsprüfung und NodeJS.

Pipeline  Agent alle Tools nodejs "fosslinuxnode" Stufen  stage("Code Checkout")  Schritte  git branch: 'development', CredentialsId: 'fosslinuxgitlablogin', url: 'https://git.fosslinux.com/demo/fosslinux-demo.git'   stage('Code Quality')  steps  script  def scannerHome = tool 'fosslinxsonar'; withSonarQubeEnv("fosslinxSonarqubeserver")  sh "$tool("fosslinxsonar")/bin/sonar-scanner"     stage("Install Dependencies")  steps  sh "npm install"   stage("unit Test")  Schritte  sh "npm test"     

Fügen Sie das obige Pipeline-Skript hinzu und speichern Sie es.

Pipeline-Skript

Pipeline-Konzepte

a) Pipeline: Dies ist ein benutzerdefinierter Block, der alle Prozesse wie Build, Deploy usw. enthält.

b) Agent: Der Agentenabschnitt gibt an, wo die gesamte Pipeline oder eine bestimmte Phase in der Jenkins-Umgebung ausgeführt wird, je nachdem, wo der Agentenabschnitt platziert ist.

c) Beliebig: Diese Option führt die Pipeline/Stufe auf jedem verfügbaren Agenten aus.

d) Phase: Ein Phasenblock enthält eine Reihe von Schritten in einer Pipeline. Das heißt, das Klonen, Erstellen, Bereitstellen usw. eine Stufe verarbeiten.

e) Schritte: Eine Reihe von Schritten kann einem Phasenblock hinzugefügt werden. Dies ist einfach eine einzelne Aufgabe, die einen bestimmten Prozess ausführt. Klicken Sie nun auf Build.

Bauen Sie den Job auf

Die Pipeline sollte beginnen zu laufen.

Pipeline läuft

Hier ist eine fertige Pipeline:

Abgeschlossene Pipeline

Hier dreht sich alles um die Installation und Konfiguration von Jenkins Pipeline.

Cursor springt oder bewegt sich zufällig während der Eingabe in Windows 10
Wenn Sie feststellen, dass Ihr Mauszeiger während der Eingabe auf einem Windows-Laptop oder -Computer automatisch und zufällig springt oder sich von s...
So kehren Sie die Scrollrichtung von Maus und Touchpads in Windows 10 um
Maus und Touchpads machen das Rechnen nicht nur einfach, sondern auch effizienter und weniger zeitaufwendig. Wir können uns ein Leben ohne diese Gerät...
So ändern Sie Mauszeiger- und Cursorgröße, Farbe und Schema unter Windows 10
Der Mauszeiger und der Cursor in Windows 10 sind sehr wichtige Aspekte des Betriebssystems. Dies kann auch für andere Betriebssysteme gesagt werden, a...