无法使用.gitlab-ci.yml创建~/.ssh文件



以下代码来自我的.gitlab-ci.yml文件中的部署阶段。

deploy_website:
stage: deploy
artifacts:
paths:
- public
before_script:
- "command -v ssh-agent >/dev/null || ( apk add --update openssh )"
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add -
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- pwd && ls
- ssh-keyscan $VM_IPADDRESS >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
script:
# - apk add bash
# - ls deploy
# - bash ./deploy/deploy.sh
- ssh $SSH_USER@$VM_IPADDRESS "hostname && echo 'Welcome!!!' > welcome.txt"

这行";ssh密钥扫描$VM_IPADDRESS>gt;~/。ssh/known_hosts";执行管道时未能运行。

您可以启动和echo $VM_IPADDRESS来检查IP变量是否正确安装。

"未能运行";

然后取决于错误消息(或者命令是否冻结(
在进行密钥扫描之前,您可以使用以下测试网络路由是否可以从您的GitLab CI运行器访问

curl -v telnet://$VM_IPADDRESS:22

如果它没有立即连接,这将解释ssh-keyscan失败的原因。

最新更新