94 lines
4.2 KiB
Groovy
94 lines
4.2 KiB
Groovy
pipeline {
|
|
agent any
|
|
|
|
stages {
|
|
stage('Restore tlw-database-tool') {
|
|
steps {
|
|
copyArtifacts filter: '**/tlw-database-tool-1.0.jar', fingerprintArtifacts: true, projectName: 'build tlw-database-tool', selector: lastSuccessful(), target: '.'
|
|
}
|
|
}
|
|
stage('Execute') {
|
|
steps {
|
|
script {
|
|
String jdkPath = tool name: 'OpenJDK18', type: 'jdk'
|
|
withCredentials([usernamePassword(credentialsId: 'aws', passwordVariable: 'AWS_SECRET_KEY', usernameVariable: 'AWS_ACCESS_KEY_ID')]) {
|
|
withEnv(["JAVA_HOME=${jdkPath}/jdk-18.0.1.1","AWS_SECRET_KEY=${AWS_SECRET_KEY}", "AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}"]) {
|
|
String outputBuild = ""
|
|
String output = ""
|
|
String errorOutput = ""
|
|
String outputTemp = ""
|
|
try {
|
|
outputTemp = sh returnStdout: true, script: "java -jar build/libs/tlw-database-tool-1.0.jar --mode MatchesUpdaterFootball --season ${season} --league 48 --configFile WTL-Pokal 2>&1"
|
|
output += outputTemp
|
|
} catch (Exception e) {
|
|
errorOutput += outputTemp
|
|
}
|
|
try {
|
|
outputTemp = sh returnStdout: true, script: "java -jar build/libs/tlw-database-tool-1.0.jar --mode MatchdaysUpdater --season ${season} --league 48 --configFile WTL-Pokal 2>&1"
|
|
output += outputTemp
|
|
} catch (Exception e) {
|
|
errorOutput += outputTemp
|
|
}
|
|
try {
|
|
outputTemp = sh returnStdout: true, script: "java -jar build/libs/tlw-database-tool-1.0.jar --mode TeamsUpdater --season ${season} --league 48 --configFile WTL-Pokal 2>&1"
|
|
output += outputTemp
|
|
} catch (Exception e) {
|
|
errorOutput += outputTemp
|
|
}
|
|
if(output != "") {
|
|
output = clean(output)
|
|
output.split('\n').toList().unique().each {
|
|
telegramSendManual(it)
|
|
}
|
|
}
|
|
if(errorOutput != "") {
|
|
errorOutput = clean(errorOutput)
|
|
errorOutput.split('\n').toList().unique().each {
|
|
telegramSendManual(it)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stage('CleanUp') {
|
|
steps {
|
|
deleteDir()
|
|
}
|
|
}
|
|
}
|
|
post {
|
|
failure {
|
|
telegramSendManual("Build failed!\n${env.BUILD_URL}console")
|
|
}
|
|
}
|
|
}
|
|
|
|
private String clean(String orig) {
|
|
orig = orig.replace("\n\n", "\n")
|
|
while(orig.indexOf(" [main] INFO de.jeyp91 - ") > 0) {
|
|
int index = orig.indexOf(" [main] INFO de.jeyp91 - ")
|
|
String newString = orig.substring(0, index-12) + orig.substring(index+30, orig.size())
|
|
orig = newString
|
|
}
|
|
while(orig.indexOf(" [main] ERROR de.jeyp91 - ") > 0) {
|
|
int index = orig.indexOf(" [main] ERROR de.jeyp91 - ")
|
|
String newString = orig.substring(0, index-12) + orig.substring(index+31, orig.size())
|
|
orig = newString
|
|
}
|
|
return orig
|
|
}
|
|
|
|
def telegramSendManual(String text) {
|
|
def encodedMessage = URLEncoder.encode(text, "UTF-8")
|
|
println encodedMessage
|
|
httpRequest(
|
|
httpMode: 'GET',
|
|
contentType: 'APPLICATION_JSON',
|
|
responseHandle: 'NONE',
|
|
url: "https://api.telegram.org/bot1298223079:AAEplcQpfzFG59qNYAYuSbJKtB9HMXCCE_U/sendMessage?text=$encodedMessage&chat_id=459231986&disable_web_page_preview=true",
|
|
wrapAsMultipart: false,
|
|
consoleLogResponseBody: true
|
|
)
|
|
} |