#!/usr/bin/env groovy pipeline { agent any tools { jdk "jdk-17.0.1" } stages { stage('Clean') { steps { withCredentials([file(credentialsId: 'mod_build_secrets', variable: 'ORG_GRADLE_PROJECT_secretFile')]) { echo 'Cleaning Project' sh 'chmod +x gradlew' sh './gradlew clean' } } } stage('Build') { steps { withCredentials([file(credentialsId: 'mod_build_secrets', variable: 'ORG_GRADLE_PROJECT_secretFile')]) { echo 'Building' sh './gradlew build' } } } stage('Git Changelog') { steps { withCredentials([file(credentialsId: 'mod_build_secrets', variable: 'ORG_GRADLE_PROJECT_secretFile')]) { sh './gradlew genGitChangelog' } } } stage('Publish') { steps { withCredentials([file(credentialsId: 'mod_build_secrets', variable: 'ORG_GRADLE_PROJECT_secretFile')]) { echo 'Updating version' sh './gradlew updateVersionTracker' echo 'Deploying to Maven' sh './gradlew publish' echo 'Deploying to CurseForge' sh './gradlew publishCurseForge postDiscord' } } } } post { always { archive 'build/libs/**.jar' archive 'changelog.md' } } }