diff --git a/Technical_Decomp_Manifest.md b/Technical_Decomp_Manifest.md new file mode 100644 index 0000000..f96193e --- /dev/null +++ b/Technical_Decomp_Manifest.md @@ -0,0 +1,33 @@ +## enroll/manifest.py + +### _IndentDumper (inner class inside _yaml_dump_mapping) + +#### Purpose: makes PyYAML output indentation match stricter linters/Ansible expectations. + +#### What it subclasses: + +yaml.SafeDumper + +#### Override: + +- increase_indent(self, flow=False, indentless=False) +- it forces indentless=False when calling the superclass, which prevents PyYAML’s common behavior of emitting: +``` +key: +- item +``` + - and instead prefers: + +``` +key: + - item +``` + +#### Lifecycle / where it’s used: + +Only used when PyYAML is available. + +manifest uses _yaml_dump_mapping() for: +- role defaults (defaults/main.yml) +- host_vars role data (inventory/host_vars/...) +- ensuring stable formatting. \ No newline at end of file