gpt4 book ai didi

jenkins - 如何在 Jenkinsfile 上通过 ssh 进行发布,以及如何在 Jenkinsfile 上使用 groovy SDL 进行 scp 发布?

转载 作者:行者123 更新时间:2023-12-03 00:05:26 27 4
gpt4 key购买 nike

java.lang.NoSuchMethodError:在步骤 [archive、bat、build、catchError、checkout、deleteDir、dir、dockerFingerprintFrom、dockerFingerprintRun、echo、emailext、emailextrecipients 中找不到这样的 DSL 方法“publishOverSsh” 、 envVarsForTool、错误、fileExists、getContext、git、输入、isUnix、libraryResource、加载、邮件、里程碑、节点、并行、属性、pwd、readFile、readTrusted、resolveScm、重试、脚本、sh、 sleep 、阶段、存储、步骤、svn、超时、时间戳、工具、取消存档、取消存储、waitUntil、withContext、withCredentials、withDockerContainer、withDockerRegistry、withDockerServer、

最佳答案

我使用 Jenkins groovy DSL 在远程计算机上使用 SCP 和 SSH,使用 Sh:shell 脚本。

在此之前,使用 ssh-keygen 在主机和 Jenkins 之间创建连接以进行无密码身份验证。

对于无密码 SSH 登录:

1) 使用 ssh-keygen 和以下命令创建 ssh 公钥和私钥:

$ssh-keygen

2) 将公钥复制到远程主机的 .ssh/authorized_keys 文件中。

3) 现在无需密码即可登录远程计算机。

现在要将包发布到远程服务器,请在 Jenkinsfile 脚本框中使用以下命令:

sh 'scp -r ./tests ubuntu@HOST_IP/URL:/home/ubuntu/'

//to execute commands over ssh on remote host which is written in test-script.sh file

sh 'ssh ubuntu@HOST_IP/URL < test-script.sh'

// For echo environmental variables BUILD_ID

echo "Running ${env.BUILD_ID} on ${env.JENKINS_URL}"

关于jenkins - 如何在 Jenkinsfile 上通过 ssh 进行发布,以及如何在 Jenkinsfile 上使用 groovy SDL 进行 scp 发布?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42509373/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com