Parse --wizard-var markers from command stdout. Format: --wizard-var KEY=VALUE Returns a dict of extracted variables, with last value winning for duplicates.
(stdout_text)
| 1802 | |
| 1803 | |
| 1804 | def parse_wizard_vars(stdout_text): |
| 1805 | """Parse --wizard-var markers from command stdout. |
| 1806 | |
| 1807 | Format: --wizard-var KEY=VALUE |
| 1808 | |
| 1809 | Returns a dict of extracted variables, with last value winning for duplicates. |
| 1810 | """ |
| 1811 | variables = {} |
| 1812 | if not stdout_text: |
| 1813 | return variables |
| 1814 | |
| 1815 | for line in stdout_text.splitlines(): |
| 1816 | # Check if line starts with --wizard-var marker |
| 1817 | if line.startswith("--wizard-var "): |
| 1818 | # Extract the KEY=VALUE part |
| 1819 | var_part = line[len("--wizard-var "):].strip() |
| 1820 | if '=' in var_part: |
| 1821 | key, _, value = var_part.partition('=') |
| 1822 | key = key.strip() |
| 1823 | value = value.strip() |
| 1824 | if key: # Only store if key is not empty |
| 1825 | variables[key] = value |
| 1826 | |
| 1827 | return variables |
| 1828 | |
| 1829 | |
| 1830 | class Command(SecretYamlObject): |