estoy usando chef para crear un archivo de recursoschef de crear el archivo en el directorio personal del usuario
file "somefile" do
action :create_if_missing
end
Y Quiero poner esto en el directorio personal del usuario. Estoy teniendo dos cuestiones:
- El archivo se interpreta en relación a /, así que usar ~/acaba de poner el archivo en/~/
- Estoy lanzando esta receta cocinero través de vagabundo y estos archivos están siendo creado por root Así que incluso si pudiera obtener ~/para trabajar, terminaría en el hogar de root. No quiero utilizar el código difícil para usar el nombre de usuario vagabundo, ya que no siempre será así (podemos ejecutarlo también con el cliente chef), y
node[:user]
parece estar vacío.
¿Hay alguna manera de crear un archivo en el directorio principal del usuario no root (en este caso vago)?
Estoy de acuerdo con este enfoque, pero me gustaría utilizar los atributos de nodo se pasa en forma predeterminada. [: Chef_client] [: nombre de usuario] – nictrix
Dado que no puede ser ejecutado por vagabundo, no quiero codificarlo en el archivo. ¿Está por defecto [: chef_client] [: username] un atributo? ¿O hay un atributo que pueda usar para obtener al usuario? –
parece que al usar ENV ['PWD'] obtendrá el directorio de trabajo, que es el directorio de inicio del usuario actual –