Chef Knife没有使用编辑器保存更改

Moh*_*awy 2 chef-infra chef-recipe knife chef-solo

我想用刀创造一个角色.所以我跑:

> knife role create beautifulprayer
ERROR: RuntimeError: Please set EDITOR environment variable
Run Code Online (Sandbox Code Playgroud)

没问题!只需添加编辑器即可.然后:

> knife role create beautifulprayer
Run Code Online (Sandbox Code Playgroud)

这将打开我设置的编辑器(subl)并在编辑器打开后继续运行并将调用传播到chef服务器,导致Created role[beautifulprayer]编辑器仍处于打开状态且我没有保存任何内容.Object unchanged, not saving当编辑器仍处于打开状态并且没有发生保存时,编辑过程也会发生这种情况.

虽然当我使用vim时这不会发生,因为刀等我关闭VIM然后传播给厨师服务器的呼叫.我想使用sublime,但目前还没有工作,因为任何更改和使用sublime保存都不会被刀传播或检测到.

Rol*_*and 5

您需要调用编辑器"阻止"当前进程而不是分叉另一个进程.通常这被描述为"无分叉","前景"或"等待"选项:

例子:

崇高文本

export EDITOR="subl -w"
Run Code Online (Sandbox Code Playgroud)

原子:

export EDITOR="atom -f"
Run Code Online (Sandbox Code Playgroud)

的MacVim:

export EDITOR="mvim -f"
Run Code Online (Sandbox Code Playgroud)

TextMate 2:

export EDITOR="mate -w"
Run Code Online (Sandbox Code Playgroud)

当您完成更改后,您需要关闭编辑器,刀将接收更改.