def when_not_cli(block_id, *desired_states): """ CLI version of the when_not decorator. """ if not was_invoked(block_id) and not all_states(*desired_states): set_invoked(block_id) return True return False
def hook_cli(block_id, *hook_patterns): """ CLI version of the hook decorator. """ if not was_invoked(block_id) and any_hook(*hook_patterns): set_invoked(block_id) return True return False
def when_cli(block_id, *desired_states): """ CLI version of the when decorator. Evaluates to true (exit 0) if all of the ``desired_states`` are active, as per :func:`~charmhelpers.core.reactive.bus.all_states`, and if it has not evaluated to true for the given ``block_id`` already for this round of dispatch. :param str block_id: Any unique identifier for the block, such as the filename and line number of the start of the block. :param list desired_states: List of states that should be active. """ if not was_invoked(block_id) and all_states(*desired_states): set_invoked(block_id) return True return False