这篇和这一篇(创作中心-CSDN)的功能相同,但是这篇可以打印服务器上执行命令更详细的log

第一步和第二步上面相同,第三步开始有所不同

3. 在任务(新建Item)中使用配置
   1.创建或配置任务‌:
     新建一个流水线的配置页面。
  2.找到流水线脚本的位置
    在脚本下输入:
    pipeline {
        agent any

        stages {
            stage('Install via Publish Over SSH') {
                steps {
                    // 使用 sshPublisher 步骤
                    sshPublisher(
                        publishers: [
                            sshPublisherDesc(
                                configName: 'Harbor', // 对应系统配置中的 Name
                                transfers: [
                                    sshTransfer(
                                        // 方式 1: 执行远程命令 (execCommand)
                                        //execCommand: '''
                                        //    date >> log.txt 2>&1
                                        //    echo "Done"
                                        //''',

                                        // 方式 2: 先上传脚本再执行 (更复杂场景推荐)
                                        sourceFiles: 'bash/install.sh',//这里文件是jenkins任务工作空间的位置如:C:\ProgramData\Jenkins\.jenkins\workspace\jenkins任务名
                                        removePrefix:'bash',
                                        remoteDirectory: '/tmp',
                                        execCommand: '''//注意这里命令执行的位置是ssh server中配置的remoteDirectory的位置
                                            chmod +x ./tmp/install.sh
                                            bash ./tmp/install.sh
                                        ''',                                    
                                    )
                                ],
                                usePromotionTimestamp: false,
                                useWorkspaceInPromotion: false,
                                verbose: true // 开启详细日志,便于调试
                            )
                        ]
                    )
                }
            }
        }
    }
  3.保存并构建‌:
    保存任务配置,点击 ‌Build Now‌ 进行测试。查看控制台输出,确认连接成功且命令执行无误。
 

4.登录远程服务器,确认命令是否正确执行   
   找到tmp文件,且可以查看log2.txt是否有log

更多推荐