There are certain attributes that can be used to evaluate the state of a node during the execution process of a chef-client run. Based on the result of the evaluation, the attribute is used to tell chef-client whether it should continue the execution of that specific resource or not.
These attributes are referred to as guard attributes or conditionals.
Examples:
not_if - This prevents a resource from being executed if the condition is true
only_if - This ensures that a resource is executed only if the condition is true