使用Ansible删除ASA上的配置行

使用Ansible删除ASA上的配置行,ansible,asa,Ansible,Asa,我有一个ansible playbook,它创建一个网络对象并设置ACL策略。它工作得很好,但我想创建一个补充剧本来删除对象及其相关配置,但我不知道正确的方法来完成任务 我可以使用asa_command为适当的行发出“no”前缀,但是,这感觉不像是“Ansible方式”,因为它会尝试执行命令,即使它们在配置中已经不存在 我已经看到一些模块有一个状态:缺席操作符。但是,asa模块并未将其作为选项 任何建议都将不胜感激。我认为有一个状态:缺席选项很有意义,因为我不认为有一种简单的方法可以在当前的as

我有一个ansible playbook,它创建一个网络对象并设置ACL策略。它工作得很好,但我想创建一个补充剧本来删除对象及其相关配置,但我不知道正确的方法来完成任务

我可以使用
asa_command
为适当的行发出“no”前缀,但是,这感觉不像是“Ansible方式”,因为它会尝试执行命令,即使它们在配置中已经不存在

我已经看到一些模块有一个
状态:缺席
操作符。但是,
asa
模块并未将其作为选项


任何建议都将不胜感激。

我认为有一个
状态:缺席
选项很有意义,因为我不认为有一种简单的方法可以在当前的
asa
模块中更有效地实现这一点。Ansible团队对问题和PRs非常敏感,因此我将为此功能提交一份报告。

从Ansible 2.4开始,似乎还没有一种干净的方法可以做到这一点。我有一个有效的剧本,但是,我不得不满足于使用
asa_config
发出
no
命令,并为每个剧本输入
ignore\u错误:yes
。至少可以说这是不雅观的,在某些情况下可能会崩溃。我认为有一种方法可以将错误处理与
检查模式一起使用:yes
。我最初的尝试失败了,因为在将播放结果注册到一个变量时,我无法使用该变量来解释哪个受影响的主机实际需要更改—这只是整个播放的一般是/否

我目前正在做的是:

- name: Remove Network Object
  asa_config:
   commands:
    - no object network {{ object_name }}
   provider: "{{ cli }}"
  ignore_errors: yes
  register: dno

因此,我认为我可以使用asa_命令的假设是不正确的。无法运行配置命令,因为asa_命令在exec模式下运行。您也不能从那里运行
config t
,因为它告诉您应该使用
asa_config
。谢谢Derek,我已将此作为请求提交!