tegyük fel, egy forgatókönyv: miután elkötelezett kódot GitHub. Szeretném követni a kódminőségemet, ismerni a hibákat, a sebezhetőségeket, a kódszagokat stb. (statikus kódelemzés) a kódomhoz, mielőtt automatikusan elkészítem a kódomat a Jenkins segítségével, és azt akarom, hogy ez a tevékenység minden alkalommal végrehajtsa a kódot.
ebben a forgatókönyvben a kód folyamatos ellenőrzésére és folyamatos integrálására. A GitHub-Jenkins-SonarQube integráció segítségével követjük a legjobb gyakorlatot ehhez a forgatókönyvhöz.
áramlás : Amint a fejlesztő elkötelezi a kódot a GitHub-ra, Jenkins lekéri/kihúzza a kódot a repository – ból, és statikus kódelemzést végez a Sonar Scanner segítségével, és elemző jelentést küld a SonarQube Server-nek, majd automatikusan elkészíti a projekt kódot.
előfeltétel :
- Jenkins van beállítva GitHub néhány épít trigger (az én esetemben a Poll SCM) ha ez nem történik meg, kérjük, kövesse ezt a bemutató— https://medium.com/@amitvermaa93/jenkins-github-with-java-maven-project-c17cdba7062
- SonarQube fut, és van Sonar Scanner beállítás a rendszerben. Ha nem, kérjük, kövesse az oktatóanyagot- https://medium.com/@amitvermaa93/sonarqube-setup-windows-e6a6c01be025
1. lépés. Nyissa meg a SonarQube szervert-LÉPJEN az adminisztrációhoz > kattintson a biztonságra > felhasználók > kattintson a tokenekre (1.kép)> token létrehozása valamilyen névvel > másolja a tokent (2. kép), a Jenkins-ben használják a szonár hitelesítéshez.
2. Lépés. Setup SonarQube with Jenkins – Go to Manage Jenkins > Configure system > SonarQube server szakasz > Add SonarQube > nevezze meg, adja meg a szerver Url-jét http://<IP>:<port> > és hitelesítési token másolva SonarQube Server > Apply and Save
3. lépés. Telepítse SonarQube plugin Jenkins. Menjen a Jenkins kezelése >pluginek kezelése > elérhető > SonarQube szkenner keresése> telepítés.
töltse le a SonarScanner alkalmazást, ha nincs https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
állítsa be a Sonar szkennert Jenkins-ben : Ugrás rüh Jenkins > globális eszköz konfiguráció > Scroll SonarQube szkenner > Add sonar szkenner > nevezze meg, törölje, ha már van szonár mást automatikusan letölti az Ön számára, és a szonár Szkenner beállítás történik (az én esetemben már van) > adjon utat sonar runner otthon, mint az alábbi kép
4. lépés. Hozzon létre egy munkát-új elem > nevet és válassza ki a projekt típusát (az én esetemben a Maven projektet választom, a freestyle-t is választhatja)
5. lépés. Állítsa be a Git-et az SCM szakasz alatt, majd használja a * * * * * – t az SCM lekérdezéséhez a Build Trigger szakasz alatt. Az építési környezet szakasz buid előtti lépés hozzáadása > válassza a SonarQube szkenner végrehajtása lehetőséget
6. lépés. Hozzon létre egy .tulajdonságok fájl bármely helyen, és adja meg a feladat elérési útját az alábbiak szerint (a Jenkins workspace mappában hoztam létre). Ez a tulajdonságfájl projektspecifikus lesz. Tartalmaz bizonyos szonár tulajdonságokat, például melyik mappát kell beolvasni, melyik mappát kell kizárni a szkennelés során, mi a projektkulcs, és még sok más, ahonnan láthatja https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
belső szonár-szkenner.a tulajdonságok a kód alá íródnak —
szonár.projectKey=github-jenkins-sonar
szonár.források=./ src
az egyszerűség kedvéért csak két tulajdonságot használtam (mint fent), szonár.projectKey tulajdonság létrehoz egy projektet a SonarQube szerveren belül ugyanazzal a névvel, ha a projekt nem létezik, akkor hozzáfűzi az elemzést, sonar.a források meghatározzák, hogy melyik mappát kell beolvasni. Megadhatja a Jenkins munka munkaterületének relatív elérési útját vagy a beolvasni kívánt mappa tényleges elérési útját.
mivel én használtam ./ src (használja a / For windows elérési utat ) ez azt jelenti, hogy jelenleg a munka munkaterületén vagyok, azaz be C:\Users\Amit Verma.jenkins \ workspace \ Jenkins-GitHub-SonarQube helyét, innen pedig megadom a beolvasni kívánt mappa(src) elérési útját.
7.lépés. Építsd meg a munkát. A sikeres felépítés után, ha láthatja a naplófájlokat, megmutatja a beolvasott fájlokat és mappákat, és a beolvasás után közzétette az elemzési jelentést az integrált SonarQube szerverre.
8.lépés. A job dashboard, kattintson a sonar ikonra, vagy keresse meg a Sonar server kattintson a projektek (a fejléc) látni fogja egy új projekt ugyanazt a projekt kulcsot adott sonar-scanner.tulajdonságok fájl. Most már bemehet a projektbe és elemezheti a jelentést