Add jenkins build

This commit is contained in:
rtm516 2020-06-17 14:09:11 +01:00
parent 752e7e6e4a
commit d99fcec9d2
2 changed files with 77 additions and 0 deletions

41
Jenkinsfile vendored Normal file
View file

@ -0,0 +1,41 @@
pipeline {
agent any
tools {
maven 'Maven 3'
jdk 'Java 8'
}
options {
buildDiscarder(logRotator(artifactNumToKeepStr: '5'))
}
stages {
stage ('Build') {
steps {
sh 'git submodule update --init --recursive'
sh 'mvn clean package'
}
post {
success {
archiveArtifacts artifacts: 'target/*.jar', excludes: 'target/original-*.jar', fingerprint: true
}
}
}
stage ('Deploy') {
when {
branch "master"
}
steps {
sh 'mvn javadoc:jar source:jar deploy -DskipTests'
}
}
}
post {
always {
deleteDir()
withCredentials([string(credentialsId: 'geyser-discord-webhook', variable: 'DISCORD_WEBHOOK')]) {
discordSend description: "**Build:** [${currentBuild.id}](${env.BUILD_URL})\n**Status:** [${currentBuild.currentResult}](${env.BUILD_URL})\n\n[**Artifacts on Jenkins**](https://ci.nukkitx.com/job/GeyserConnect)", footer: 'NukkitX Jenkins', link: env.BUILD_URL, successful: currentBuild.resultIsBetterOrEqualTo('SUCCESS'), title: "${env.JOB_NAME} #${currentBuild.id}", webhookURL: DISCORD_WEBHOOK
}
}
}
}

36
pom.xml
View file

@ -20,6 +20,17 @@
<maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.target>1.8</maven.compiler.target>
</properties> </properties>
<organization>
<name>GeyserMC</name>
<url>https://github.com/GeyserMC/GeyserConnect/blob/master/pom.xml</url>
</organization>
<scm>
<connection>scm:git:https://github.com/GeyserMC/GeyserConnect.git</connection>
<developerConnection>scm:git:git@github.com:GeyserMC/GeyserConnect.git</developerConnection>
<url>https://github.com/GeyserMC/GeyserConnect</url>
</scm>
<repositories> <repositories>
<repository> <repository>
<id>jitpack.io</id> <id>jitpack.io</id>
@ -28,13 +39,38 @@
<repository> <repository>
<id>nukkitx-release-repo</id> <id>nukkitx-release-repo</id>
<url>https://repo.nukkitx.com/maven-releases/</url> <url>https://repo.nukkitx.com/maven-releases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository> </repository>
<repository> <repository>
<id>nukkitx-snapshot-repo</id> <id>nukkitx-snapshot-repo</id>
<url>https://repo.nukkitx.com/maven-snapshots/</url> <url>https://repo.nukkitx.com/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository> </repository>
</repositories> </repositories>
<distributionManagement>
<repository>
<id>releases</id>
<name>nukkitx-releases</name>
<url>https://repo.nukkitx.com/maven-releases</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>nukkitx-snapshots</name>
<url>https://repo.nukkitx.com/maven-snapshots</url>
</snapshotRepository>
</distributionManagement>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>