def projectTitle = "ThemeParkPlus"

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' 
      }  
    }
  }

  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/1091375346064035980/PRy-w2ZPpYjwYMllnbw6mHD_onFcXSbvq9BYkfP8-mBXi-bB-y1XzJkC4SDwHmffcnjS',
          title: discordTitle,
          description: discordDescription,
          footer: discordFooter,
          result: currentBuild.currentResult
        )
      }
    }
  }
}