Give more control over an action, instead of its module
Description
Right now, we have to specify for each action's module the same arguments. It would be much better if the user could specify that he would like to receive only serialized output from actions. Also, we have a std_out
flag, that could be pulled out from the module settings and moved to the action settings.
This would mean that the user can specify this in the settings
parameter or in each action (action settings would have a higher priority and would override global settings).
Use Case
The user knows that his jobs will always finish before the 3-minute mark. He would set a global timeout.
Benefits
This would give the user much more freedom and trust in the execution, even if the module author didn't implement all the features. We wouldn't need to implement all of the features in each module, just in the Worker or Core.
Additional Information
Before:
# Step
- name: basic-action
module: mod_msf
module_arguments:
retry: 3
timeout: 3
std_out: false
arg1: asd
args2: dsa
After:
# Step
- name: cool-action
module: mod_msf
retry: 3
timeout: 3
std_out: false
module_arguments:
arg1: asd
args2: dsa
Alter after:
settings:
std_out: false
timeout: 3
...
# Step
- name: cool-action
module: mod_msf
retry: 3
module_arguments:
arg1: asd
args2: dsa