LinchPin Hooks API¶
The linchpin.hooks module manages the Linchpin Hooks functionality within LinchPin.
-
class
linchpin.hooks.
ActionBlockRouter
(name, *args, **kwargs)¶ Proxy pattern implementation for fetching actionmanagers by name
-
class
linchpin.hooks.
LinchpinHooks
(api)¶ -
execute_hook
(block_obj, target)¶
-
fetch_git_src
(block)¶
-
fetch_src
(block)¶
-
get_custom_action_manager
(action_block)¶
-
global_hooks_block
(block)¶
-
prepare_ctx_params
()¶ prepares few context parameters based on the current target_data that is being set. these parameters are based topology name.
-
prepare_inv_params
()¶
-
resolve_block_path
(block)¶
-
run_action
(state, block, tgt_data)¶
-
run_actions
(state, action_blocks, tgt_data, is_global=False)¶ Runs actions inside each action block of each target
- Parameters
action_blocks – list of action_blocks each block constitues to a type of hook
tgt_data – data specific to target, which can be dict of
topology , layout, outputs, inventory :param is_global: scope of the hook
example: action_block: - name: do_something
type: shell actions:
echo ‘ this is ‘postup’ operation Hello hai how r u ?’
-
run_hooks
(state, is_global=False)¶ Function to run hook all hooks from Pinfile based on the state :param state: hook state (currently, preup, postup, predestroy, postdestroy) :param is_global: whether the hook is global (can be applied to multiple targets)
-
run_inventory_gen
(data)¶
-
run_local_actions
(state, action_blocks, tgt_data)¶
-
property
rundb
¶
-