Ansible 剧本:将本地 cmd 输出(例如 git 存档)管道传输到服务器?

Ansible playbook: pipeline local cmd output (e,g. git archive) to server?

所以我的项目有一个特殊的基础设施,服务器只有 SSH 连接,我每次都必须使用 SSH/SFTP 手动将我的项目代码上传到服务器。服务器无法获取。

基本上我需要像 git archive master | ssh user@host 'tar -zxvf -' 使用 playbook 自动完成的东西。

我查看了文档,local_action 似乎可以工作,但它需要本地 ssh 设置。还有其他方法吗?

这样的事情怎么样。您可能需要根据自己的需要进行调整。

 tasks:
    - shell: git archive master /tmp/master.tar.gz
    - unarchive: src=/tmp/master.tar.gz dest={{dir_to_untar}}

我还是不明白it requires a local ssh setup你的问题。