使用SSH密钥将BitBucket部署到远程服务器
我正在尝试编写YAML管道脚本,以使用ssh密钥将已从bitbucket存储库更改的文件部署到远程服务器。我目前拥有的文档是从bitbucket本身复制的,存在错误:使用SSH密钥将BitBucket部署到远程服务器,ssh,yaml,bitbucket-pipelines,Ssh,Yaml,Bitbucket Pipelines,我正在尝试编写YAML管道脚本,以使用ssh密钥将已从bitbucket存储库更改的文件部署到远程服务器。我目前拥有的文档是从bitbucket本身复制的,存在错误: pipelines: default: - step: name: Deploy to test deployment: test script: - pipe: atlassian/sftp-deploy:0.3.1 - variables:
pipelines:
default:
- step:
name: Deploy to test
deployment: test
script:
- pipe: atlassian/sftp-deploy:0.3.1
- variables:
USER: $USER
SERVER: $SERVER
REMOTE_PATH: $REMOTE_PATH
LOCAL_PATH: $LOCAL_PATH
我得到以下错误
配置错误您的bitbucket-pipelines.yml在[pipelines>default>0>step>script>1]处出错。准确地说:缺少或为空的命令字符串。此列表中的每个项都应该是单个命令字符串或定义管道调用的映射 我的ssh公钥和私钥与指纹和主机一起设置在bitbucket中。变量也已设置。
如何设置YAML部署脚本以通过ssh连接到远程服务器并传输文件?尝试更新
变量部分:
- variables:
- USER: $USER
- SERVER: $SERVER
- REMOTE_PATH: $REMOTE_PATH
- LOCAL_PATH: $LOCAL_PATH
下面是一个关于如何设置变量的示例:尝试将变量部分更新为:
- variables:
- USER: $USER
- SERVER: $SERVER
- REMOTE_PATH: $REMOTE_PATH
- LOCAL_PATH: $LOCAL_PATH
下面是一个关于如何设置变量的示例:您的指令-步骤必须是预期的。
我有类似这样的bitbucket-pipelines.yml(使用rsync而不是ssh):
我建议使用存储库中的在线编辑器来编辑bitbucket-pipelines.yml,它会检查所有正式的yml结构,您不能提交无效文件。
即使您在其他一些yaml编辑器上检查该文件,它可能看起来不错,但根据bitbucket规范,它不是必需的。他们的在线编辑做得很好
另外,我建议你去他们的社区,因为那里非常活跃,有时他们的工作人员会提供答案
但是,我需要处理大量的依赖关系才能正确运行测试。(实际bitbucket-pipelines.yml越来越大)。
也许这项工作有一些准备得很好的Docker形象。你的指令-步骤必须是有意的。
我有类似这样的bitbucket-pipelines.yml(使用rsync而不是ssh):
我建议使用存储库中的在线编辑器来编辑bitbucket-pipelines.yml,它会检查所有正式的yml结构,您不能提交无效文件。
即使您在其他一些yaml编辑器上检查该文件,它可能看起来不错,但根据bitbucket规范,它不是必需的。他们的在线编辑做得很好
另外,我建议你去他们的社区,因为那里非常活跃,有时他们的工作人员会提供答案
但是,我需要处理大量的依赖关系才能正确运行测试。(实际bitbucket-pipelines.yml越来越大)。
也许这项工作有一些很好准备的码头工人形象