Ansible-core 2.18 移植指南

本节讨论 ansible-core 2.17 和 ansible-core 2.18 之间的行为变化。

旨在帮助您更新 playbook、插件以及 Ansible 基础架构的其他部分,以便它们能够与 Ansible 的此版本一起使用。

建议您阅读此页面以及 ansible-core 2.18 的更改日志,以了解您可能需要进行哪些更新。

本文档是移植集合的一部分。完整的移植指南列表可以在 移植指南 中找到。

剧本

没有明显的更改

命令行

  • Python 3.10 不再是受支持的控制节点版本。现在需要 Python 3.11+ 才能运行 Ansible。

  • Python 3.7 不再是受支持的远程版本。现在需要 Python 3.8+ 才能进行目标执行。

已弃用

没有明显的更改

模块

没有明显的更改

已移除的模块

以下模块不再存在

  • 没有明显的更改

弃用通知

没有明显的更改

值得注意的模块更改

没有明显的更改

插件

  • ssh 连接插件现在正式支持目标 Windows 主机。作为此正式支持的一部分,已进行一项重大更改,即由 ansible.builtin.raw 等插件和调用 _low_level_execute_command 的操作插件执行的底层命令执行不再使用 powershell.exe 包装调用。这些命令现在将使用 Windows 主机上设置的默认 shell 配置直接在目标主机上执行。进行此更改是为了简化 Ansible 端所需的配置,使模块执行更有效率,并消除解码 stderr CLIXML 输出的需要。此更改的结果是,ansible.builtin.raw 命令不再保证通过 PowerShell shell 运行以及使用 UTF-8 的输出编码。若要通过 PowerShell 运行命令并支持 UTF-8 输出,请改用 ansible.windows.win_shellansible.windows.win_powershell 模块。

    - name: Run with win_shell
      ansible.windows.win_shell: Write-Host "Hello, Café"
    
    - name: Run with win_powershell
      ansible.windows.win_powershell:
        script: Write-Host "Hello, Café"
    

移植自定义脚本

没有明显的更改

网络

没有明显的更改