chef - otro - copiar y sobreescribir archivos en linux
Borrar todos los archivos en un directorio usando Chef (2)
Si recuerdo correctamente, establecer el atributo recursive true
obligará a eliminar directorios no vacíos.
Los documentos para el directory
LWRP no describen este comportamiento, pero sí proporcionan este ejemplo de uso:
directory "/tmp/something" do
recursive true
action :delete
end
Los documentos se han modificado desde entonces para decir crípticamente:
recursive
Tipos de Ruby: TrueClass, FalseClassCrear o eliminar directorios padre de forma recursiva. Para las propiedades de propietario, grupo y modo, el valor de este atributo se aplica solo al directorio hoja.
Valor por defecto:false
.
Todavía no llegan a decir "se requiere recursive true
para eliminar directorios no vacíos. Sin esta configuración, intentar eliminar un directorio no vacío fallará con el mensaje: Errno::ENOTEMPTY Directory not empty
".
Intentando eliminar una carpeta no vacía:
directory "C:/tempdirectory" do
action :delete
end
... en Chef recibo:
Errno::ENOTEMPTY
Directory not empty
¿Hay una manera rápida de eliminar todos los archivos en el directorio?
¿O un argumento o una bandera que me permita eliminar directorios que no estén vacíos?
Tienes que añadir la opción recursive true
. Esta opción eliminará todos los directorios.