BlockGuardWithOnlyString
The department is: BlockGuardWithOnlyString
The full name of the cop is: Chef/Correctness/BlockGuardWithOnlyString
Enabled by default | Supports autocorrection | Target Chef Version |
---|---|---|
Enabled | Yes | All Versions |
A resource guard (not_if/only_if) that is a string should not be wrapped in {}
. Wrapping a guard string in {} causes it to be executed as Ruby code which will always return true instead of a shell command that will actually run.
Examples
incorrect
template '/etc/foo' do
mode '0644'
source 'foo.erb'
only_if { 'test -f /etc/foo' }
end
correct
template '/etc/foo' do
mode '0644'
source 'foo.erb'
only_if 'test -f /etc/foo'
end
Configurable attributes
Name | Default value | Configurable values |
---|---|---|
Version Added | 5.2.0 | String |
Include | Array |