Chef:如何在保留某些文件的同时递归删除所有文件
Chef: how to recursively delete all files while keeping certain files
我有这样的文件夹结构:
/app
/uploads
1.pdf
2.pdf
/2015
/2016
/2017
......
/requirements
/tests
manage.py
......
我曾经递归删除app
字典。现在我想将所有折叠和文件保存在 uploads
中,例如。 /2015
、/2016
、/2016/oct.pdf
。另外,删除 1.pdf
和 2.pdf
.
# remove the code folder if exists
directory node['conf-cookbook']['app_dir'] do
recursive true
action :delete
only_if { ::File.directory?("#{ PATH }") }
end
如何构建守卫来实现我的目标?
这不是目录资源可以做的事情。保护条款控制整个资源是否激活,它们不是聚合期间的行项目否决权。您需要制作自定义资源,或者只使用 execute "find #{node['conf-cookbook']['app_dir']} -somefilter -delete"
之类的东西而不关心它不是幂等的。
我有这样的文件夹结构:
/app
/uploads
1.pdf
2.pdf
/2015
/2016
/2017
......
/requirements
/tests
manage.py
......
我曾经递归删除app
字典。现在我想将所有折叠和文件保存在 uploads
中,例如。 /2015
、/2016
、/2016/oct.pdf
。另外,删除 1.pdf
和 2.pdf
.
# remove the code folder if exists
directory node['conf-cookbook']['app_dir'] do
recursive true
action :delete
only_if { ::File.directory?("#{ PATH }") }
end
如何构建守卫来实现我的目标?
这不是目录资源可以做的事情。保护条款控制整个资源是否激活,它们不是聚合期间的行项目否决权。您需要制作自定义资源,或者只使用 execute "find #{node['conf-cookbook']['app_dir']} -somefilter -delete"
之类的东西而不关心它不是幂等的。