mirror of
https://github.com/trailofbits/algo.git
synced 2025-09-23 04:13:20 +02:00
* Fix Ansible 12 double-templating and Jinja2 spacing issues This PR fixes critical deployment issues and improves code consistency for Ansible 12 compatibility. ## Fixed Issues ### 1. Double-templating bug (Issue #14835) Fixed 7 instances of invalid double-templating that breaks deployments: - Changed `{{ lookup('file', '{{ var }}') }}` to `{{ lookup('file', var) }}` - Affects Azure, DigitalOcean, GCE, Linode, and IPsec configurations - Added comprehensive test to prevent regression ### 2. Jinja2 spacing inconsistencies Fixed 33+ spacing issues for better code quality: - Removed spaces between Jinja2 blocks: `}} {%` → `}}{%` - Fixed operator spacing: `int -1` → `int - 1` - Fixed filter spacing: `|b64encode` → `| b64encode` - Consolidated multiline expressions to single lines ### 3. Test suite improvements Enhanced boolean type checking test to be more targeted: - Excludes external dependencies and CloudFormation templates - Only tests Algo's actual codebase - Verified with mutation testing - Added comprehensive documentation ## Testing - All 87 unit tests pass - 0 Jinja2 spacing issues remaining (verified by ansible-lint) - Ansible syntax checks pass for all playbooks - Mutation testing confirms tests catch real issues 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Fix Python linting issue - Remove unnecessary f-string prefix where no placeholders are used - Fixes ruff F541 error * Fix line length linting issues - Break long lines to stay within 120 character limit - Extract variables for better readability - Fixes ruff E501 errors --------- Co-authored-by: Claude <noreply@anthropic.com> |
||
---|---|---|
.. | ||
test_ansible_12_boolean_fix.py | ||
test_basic_sanity.py | ||
test_boolean_variables.py | ||
test_cloud_provider_configs.py | ||
test_comprehensive_boolean_scan.py | ||
test_config_validation.py | ||
test_docker_localhost_deployment.py | ||
test_double_templating.py | ||
test_generated_configs.py | ||
test_iptables_rules.py | ||
test_lightsail_boto3_fix.py | ||
test_openssl_compatibility.py | ||
test_strongswan_templates.py | ||
test_template_rendering.py | ||
test_user_management.py | ||
test_wireguard_key_generation.py | ||
test_yaml_jinja2_expressions.py |