ssh服务器怎么实现自动安装jar项目程序

来源:爱站网时间:2022-06-17编辑:网友分享
今天小编来给大家说说看:ssh服务器怎么实现自动安装jar项目程序内容,如果你对这方面的知识点感兴趣的话,可以看看爱站技术频道小编所整理的资料,一定不会让大家失望的。

问题描述


我从春季启动就开始了我的第一个Rest API项目。我创建了一些不太高级的程序。该项目的插件可以帮助我创建新的.jar文件,该文件可以通过SSH客户端安装在我的VPS服务器上。在底部,我提供了正确安装Serwer上的.jar文件所必须采取的示意图。

  1. 在测试所有内容并获得正确的结果之后,我必须通过键入“ mvn clean”来清除项目中现有的.jar。
  2. 稍后我必须通过命令“ mvn package”创建新的经过修改的.jar软件包
  3. 例如,在WinSCP / FileZilla FTP客户端中,将文件从本地文件移动到VPS服务器中的远程文件。
  4. 它必须登录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项目程序内容不知道朋友们都看明白了没有,在我们爱站技术频道网站有很多有趣的技术文章,喜欢的朋友记得来关注收藏下。

上一篇:使用lambda表达式遇到问题的解决思路

下一篇:未使用JPQL如何获得多行数据

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载