Как я могу переименовать файл с шеф-поваром?
В документе шеф-повара я нашел только:
- Создайте
- create_if_missing
- Удалить
- трогать
Как я могу переименовать файл с шеф-поваром?
В документе шеф-повара я нашел только:
Используйте ruby_block и внутри используйте ::File.Rename(src,dst). Фреймворк Chef не имеет переименования файлов (по крайней мере, не было до 0.10.18).
Просто пример:
ruby_block "Rename file" do
block do
::File.rename(new_resource.src,new_resource.dst)
end
end
new_resource.src
больше не будет существовать?
- person cassianoleal; 03.06.2013
only_if { File.exists?(new_resource.src)}
- person JL Peyret; 28.04.2016
Другой вариант, если вам нужно переименовать несколько файлов. Проверяет один из ресурсов, чтобы узнать, запущен ли он уже.
ruby_block "Rename file" do
block do
::Dir.glob("*/*.src").each {|i| File.rename(i, i.gsub(/(.*).src/,'\\1.dst'))};
end
not_if {File.exists?("new_resource.dst")}
end