Add ruamel as default --config-tempalte outputter
Use ruamel to include "help" strings as comments in the --config-template output
Previous output:
$ idem state --config-template
idem:
acct_profile: default
batch_size: 50
cache_dir: /home/akmod/.idem/var/cache/idem
esm_keep_cache: false
esm_plugin: local
esm_profile: default
esm_serial_plugin: msgpack
exec: ''
exec_args: []
get_resource_only_with_resource_id: false
group: number
invert: false
max_pending_reruns: 600
param_sources: []
params: []
pending: default
progress: true
progress_options:
mininterval: 1
progress_plugin: tqdm
reconciler: basic
render: jinja|yaml|replacements
root_dir: /home/akmod/.idem
run_name: cli
runtime: parallel
sls: []
sls_sources: []
sync_sls_name_and_name_tag: false
target: ''
test: false
tree: ''
upgrade_esm: false
New ouptut:
$ idem state --config-template
idem:
# Upgrade the ESM cache to the latest version if necessary
upgrade_esm: false
# The esm (enforced state manager) plugin to use with a state run
esm_plugin: local
# The serial plugin used to store ESM data
esm_serial_plugin: msgpack
# Do not delete the local ESM cache after it has been flushed to the ESM plugin
esm_keep_cache: false
# The acct profile to use with the enforced state manager
esm_profile: default
# A name for this run, this is used in internal tracking and to organize events
run_name: cli
# list off the sources that should be used for gathering sls files and data
sls_sources: []
# list off the sources that should be used for gathering parameter sls files
param_sources: []
# Set the idem run to execute in test mode. No changes will be made, idem will only detect if changes will be made in a real run.
test: false
# The directory containing sls files
tree: ''
# The location of param.sls file containing parameter definitions
params: []
# The location to use for the cache directory relative to the root_dir
cache_dir: /home/akmod/.idem/var/cache/idem
# The root directory to run idem from. By default it will be "/" or in the case of running as non-root it is set to <HOMEDIR>/.idem
root_dir: /home/akmod/.idem
# The render pipe to use, this allows for the language to be specified
render: jinja|yaml|replacements
# Select which execution runtime to use. Default is 'parallel'
runtime: parallel
# A space delimited list of sls refs to execute
sls: []
# The name of an execution function to execute
exec: ''
# Arguments to pass to the named execution function
exec_args: []
# The profile to use when when calling exec modules and states
acct_profile: default
# The reconciler plugin to use, 'basic' by default
reconciler: basic
# The pending plugin to use within the reconciler, 'default' by default
pending: default
# The maximum number of executions of a pending resource during reconciliation. Default value: 600
max_pending_reruns: 600
# Show a progress bar
progress: true
# Keyword options to pass to the tqdm progress bar constructor
progress_options:
mininterval: 1
# The progress bar plugin to use
progress_plugin: tqdm
# The group plugins, separated by pipes, to pass the data through before it gets rendered by outputters
group: number
# Specify a single resource declaration ID. The resource and all its dependencies will be executed.
target: ''
# Specify the batch size for state execution in parallel. The default batch size is 50.
batch_size: 50
# Idem resource provider plugins will try to get existing resource by name or other attributes that can uniquely identify a resource if resource_id is not provided. Use this option to get existing resource only if resource_id is provided in SLS or stored in ESM.
get_resource_only_with_resource_id: false
# If set to true, tags for a resource will be modified to use the SLS name as a Name tag
sync_sls_name_and_name_tag: false
invert: false
Edited by Akmod