# 动态参数构建架构 ## 1. 身份定义 - **定义:** 一种通过条件逻辑动态生成命令行参数的 Ansible 技术模式 - **目的:** 根据变量状态灵活构建命令,实现高度可配置的安装/卸载脚本 ## 2. 核心组件 - `xxxigcc_install.yaml:22-35`: 动态参数构建的关键实现区域 - `ansible.builtin.set_fact`: 用于动态生成 `install_command` ## 3. 执行流程(LLM检索映射) 1. **参数定义**:在 `vars` 部分预定义布尔开关 - 例如:`enable_keepalive`、`enable_1gb_pages` 2. **条件参数生成**:使用 Jinja2 条件语法 ```yaml {{ '--keepalive' if enable_keepalive else '' }} ``` 3. **命令构建**:通过 `set_fact` 拼接最终命令 - 根据布尔变量动态添加/移除参数 - 支持复杂的条件逻辑(如 `enable_cc and enable_cc_tls`) ## 4. 设计原理 - **灵活性**:通过布尔开关实现细粒度配置控制 - **可读性**:使用声明式语法,避免复杂的编程逻辑 - **可扩展性**:易于添加新的可选参数和配置 ## 5. 关键实践 - 默认值设置为 `true`,降低配置复杂度 - 使用条件语法代替显式条件判断 - 保持参数生成逻辑集中和清晰