Reputation: 1974
I just want to do delete directory if it is not symlnik.
directory "/var/www/html/" do
action :delete
only_if ???
end
Upvotes: 8
Views: 5975
Reputation: 26997
The selected answer will not work on Windows or systems where Bash is the default interpreter. You should use a Ruby solution to be cross-platform (and faster, since there's no process spawning):
directory '/var/www/html' do
action :delete
not_if { File.symlink?('/var/www/html') }
end
Upvotes: 14
Reputation: 11796
How about:
directory "/var/www/html/" do
action :delete
not_if "test -L /var/www/html/"
end
test -L $file
returns 0 (true) if $file
is a symlink.
Upvotes: 1