From 1cf6d59526d36332fdcc50a7ed42aac4065c17b2 Mon Sep 17 00:00:00 2001 From: Stijn Bannink Date: Mon, 13 Mar 2023 19:34:15 +0000 Subject: [PATCH] Add 'Jenkinsfile' --- Jenkinsfile | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..355003e --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,51 @@ +def projectTitle = "ThemePark" + +pipeline { + agent any + + tools { + maven "maven-3.9.0" + jdk "jdk11-adoptium" + } + + stages { + stage('Build Artifact') { + steps { + sh "mvn clean package -Dnoobfus=true" + archiveArtifacts artifacts: 'target/*.jar' + } + } + + stage('SonarQube Analysis') { + steps { + withSonarQubeEnv('sonarqube') { + sh "mvn sonar:sonar -Dsonar.projectKey=${projectTitle}" + } + } + } + } + + post { + always { + script { + def discordFooter = "Copyright © SBDevelopment" + def buildNumber = currentBuild.number + def buildStatus = currentBuild.result + def prevBuild = currentBuild.getPreviousBuild() + def prevGitRev = prevBuild ? env.GIT_PREVIOUS_COMMIT : '' + def gitRange = prevGitRev ? "${prevGitRev}..HEAD" : "HEAD~1..HEAD" + def gitChanges = sh(returnStdout: true, script: "git log --pretty=format:\"- %h %s\" ${gitRange}") + def discordTitle = "Build #${buildNumber} - ${projectTitle}" + def discordDescription = "**Status:** ${buildStatus}\n**Changes:**\n${gitChanges}" + + discordSend( + webhookURL: 'https://discord.com/api/webhooks/1079797247807598644/s57XSXoirtflA66DVVrZDtEHCfmi2XoK-eSRYWMMD5MTcK_W3EFQOCM8SnKSekxrQae_', + title: discordTitle, + description: discordDescription, + footer: discordFooter, + result: currentBuild.currentResult + ) + } + } + } +} \ No newline at end of file