Итак, плагин который имеется у Jenkins deploy in container придуман для tomcat 9 версии, выше этой он подключаться не будет.
Моим решением стало написать PipeLine код, ч не стал долго вникать в его синтаксис и напороться пришла нейронка которая написала его вместо меня.
А код для деплоя ниже:
pipeline {
agent any
stages {
stage('Checkout') {
steps {
// Checkout the code repository
checkout scm
}
}
stage('Build') {
steps {
// Build the war file
sh 'mvn clean package'
}
}
stage('Deploy') {
environment {
TOMCAT_HOME = '/opt/tomcat'
WAR_FILE = 'target/HelloWorldServlet-1.0-SNAPSHOT.war'
}
steps {
// Stop Tomcat
sh "${TOMCAT_HOME}/bin/shutdown.sh"
// Remove existing war file and deployed application
sh "rm -rf ${TOMCAT_HOME}/webapps/HelloWorldServlet-1.0-SNAPSHOT*"
// Copy the new war file to Tomcat webapps directory
sh "cp ${WAR_FILE} ${TOMCAT_HOME}/webapps/myapp.war"
// Start Tomcat
sh "${TOMCAT_HOME}/bin/startup.sh"
}
}
stage('Verify') {
steps {
// Wait for Tomcat to start
sh "sleep 30"
// Verify if the application is deployed successfully
sh "curl -s http://localhost:8080/HelloWorldServlet-1.0-SNAPSHOT/"
}
}
}
post {
always {
// Cleanup any leftover files after deployment
sh "rm -rf ${WAR_FILE}"
}
}
}