Ansible 保险库不使用 Sublime Text 保存更改

Ansible vault doesn't save changes with Sublime Text

我 运行 ansible 1.9.4 on OSX 通过 pip 安装。

如果我做 ansible-vault create x,然后进行一些更改并保存,那么每当我做 ansible-vault view xansible-vault edit x.

时,文件都会显示为空白

我将 Sublime Text 3 作为我的 $EDITOR。当我将它设置为 vim 时,一切都按预期工作,我可以编辑和保存使用 ansible-vault 加密的文件。知道这里会发生什么吗?

我认为它不适用于标准的 Sublime 命令行启动器。 ansible-vault 在加密它创建的临时文件之前等待编辑器进程退出 - Sublime 启动器立即退出,所以你最终得到一个空的库文件。

编辑:

要使其与标准的 Sublime 命令行启动器一起使用,您必须指定 -w 标志,这将阻止 subl 进程存在,直到文件在 sublime 文本中关闭。 (参见 docs

所以你的 .bashrc 应该有这样一行:

export EDITOR='subl -w'