ssh服务器怎么实现自动安装jar项目程序
来源:爱站网时间:2022-06-17编辑:网友分享
今天小编来给大家说说看:ssh服务器怎么实现自动安装jar项目程序内容,如果你对这方面的知识点感兴趣的话,可以看看爱站技术频道小编所整理的资料,一定不会让大家失望的。
问题描述
我从春季启动就开始了我的第一个Rest API项目。我创建了一些不太高级的程序。该项目的插件可以帮助我创建新的.jar文件,该文件可以通过SSH客户端安装在我的VPS服务器上。在底部,我提供了正确安装Serwer上的.jar文件所必须采取的示意图。
- 在测试所有内容并获得正确的结果之后,我必须通过键入“ mvn clean”来清除项目中现有的.jar。
- 稍后我必须通过命令“ mvn package”创建新的经过修改的.jar软件包
- 例如,在WinSCP / FileZilla FTP客户端中,将文件从本地文件移动到VPS服务器中的远程文件。
- 它必须登录SSH clinent并通过“ java -jar” api.jar“进行安装]
如您所见,这需要很多时间。存在任何程序或可以自动编程的程序吗?我听说过詹金斯吗?您有什么建议可以节省我一些时间:D?
[非常感谢和抱歉,我的英语,我知道这还不够好,但是我已经尽力了:D西蒙妮
思路:
是的,可以使用詹金斯实现。首先将您的代码提交到git仓库。一旦您在系统上安装了jenkins。从jenkins仪表板中选择新项目。输入此商品的名称然后选择类型,您应该选择“管道”。在下一页的“定义”部分中选择“高级项目选项”,请按照以下共享的示例代码创建自己的管道脚本。
#!/usr/bin/env groovy
node('master'){
try {
def mvnHome
def projectDirectoryPath
def serverPath = '/app/projects/myapp/services/'
def jarName = 'myapp-0.0.1-SNAPSHOT.jar'
stage('checkout') {
checkout([$class: 'GitSCM', branches: [[name: '*/YOURGITBRANCH']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'YOURGITCREDENTIALID', url: 'YOURGITURL']]])
mvnHome = '/usr/apache-maven-3.1.1'
projectDirectoryPath = '/app/jenkins-slave/workspace/myapp_services'
}
stage('clean') {
sh "cd '${projectDirectoryPath}' && '${mvnHome}/bin/mvn' clean"
}
stage('build') {
sh "cd '${projectDirectoryPath}' && '${mvnHome}/bin/mvn' package"
archiveArtifacts artifacts: '**/target/*.jar', fingerprint: true
}
stage('deploy') {
sshagent(['YOURAGENTID']) {
echo "the application is deploying ${jarName}"
sh "ssh -o StrictHostKeyChecking=no USER@YOURHOST ${serverPath}stop.sh"
echo "the ${jarName} is stopped"
sh "scp ${projectDirectoryPath}/target/${jarName} USER@YOURHOST:${serverPath}${jarName}"
echo "the ${jarName} is transferred successfuly"
sh "ssh -o StrictHostKeyChecking=no USER@YOURHOST sh ${serverPath}start_silent.sh"
echo "the ${jarName} is started successfuly"
}
}
}catch(e){
currentBuild.result="FAILED"
//notifyfailed()
throw e
}
ssh服务器怎么实现自动安装jar项目程序内容不知道朋友们都看明白了没有,在我们爱站技术频道网站有很多有趣的技术文章,喜欢的朋友记得来关注收藏下。
下一篇:未使用JPQL如何获得多行数据