Ansible 7 移植指南

Ansible 7 基于 Ansible-core 2.14。

我们建议您阅读此页面以及Ansible 7 变更日志,以了解您可能需要进行的更新。

Playbook

  • 变量现在是延迟求值的;仅在实际使用时才进行求值。例如,在 ansible-core 2.14 中,表达式 {{ defined_variable or undefined_variable }} 如果 or 的第一部分求值为 True,则不会因 undefined_variable 而失败,因为它不需要评估第二部分。需要注意的一个特殊行为变化是下面的任务,该任务使用 undefined 测试。在 2.14 版本之前,这会导致在尝试访问字典中未定义的值时出现致命错误。在 2.14 中,断言通过,因为字典通过其未定义的值之一被评估为未定义

- assert:
    that:
      - some_defined_dict_with_undefined_values is undefined
  vars:
    dict_value: 1
    some_defined_dict_with_undefined_values:
      key1: value1
      key2: '{{ dict_value }}'
      key3: '{{ undefined_dict_value }}'

命令行

  • 此版本对控制器节点上的 Python 3.9 有硬性要求。

  • 启动时,会检查文件系统编码和区域设置,以验证它们是否为 UTF-8。如果不是,该过程将退出,并报告错误编码。如果您之前使用 CPOSIX 区域设置,您或许可以使用 C.UTF-8。如果您之前使用诸如 en_US.ISO-8859-1 之类的区域设置,您或许可以使用 en_US.UTF-8。为了简单起见,使用 LC_ALL 环境变量导出适当的区域设置可能是最简单的方法。修改系统区域设置的另一种方法是在 UTF-8 模式下运行 Python;有关更多信息,请参阅Python 文档

已弃用

没有值得注意的更改

模块

没有值得注意的更改

已移除的模块

以下模块不再存在

  • 没有值得注意的更改

弃用通知

没有值得注意的更改

值得注意的模块更改

没有值得注意的更改

插件

没有值得注意的更改

移植自定义脚本

没有值得注意的更改

网络

没有值得注意的更改

v7.7.0 移植指南

主要更改

cloudscale_ch.cloud

  • 将最低要求的 Ansible 版本提升到 2.13.0

fortinet.fortimanager

  • 支持 6.2、6.4、7.0、7.2 和 7.4 中的所有 FortiManager 版本。139 个新模块。

  • 支持基于令牌的身份验证。

fortinet.fortios

  • 改进某些模块中的 no_log 功能;

  • 改进 fortios_router_staticseq_num 的文档和示例;

  • 改进所有模块中 member_path 的文档;

  • 支持新的 FOS 版本。

已移除的功能

community.ciscosmb

  • 移除对 Python 2.6 nad 2.7 的测试

  • 移除对 ansible 2.9 的测试

已弃用的功能

community.ciscosmb

  • 支持 Python 2.6 nad 2.7

  • 支持 ansible 2.9

microsoft.ad

  • 弃用对 Server 2012 和 Server 2012 R2 的支持。这些操作系统版本即将达到 Microsoft 的生命周期结束状态,在 Ansible 中使用它们的支持也即将结束。

purestorage.fusion

  • fusion_api_client - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_array - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_az - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_hap - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_hap - 参数 nqnwwnshost_passwordhost_usertarget_password`和 `target_user 已弃用

  • fusion_hw - FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_info - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_info - ‘hosts’ 子集已弃用,取而代之的是 ‘host_access_policies’,并且将在 2.0.0 版本中删除

  • fusion_info - ‘interfaces’ 子集已弃用,取而代之的是 ‘network_interfaces’,并且将在 2.0.0 版本中删除

  • fusion_info - ‘zones’ 子集已弃用,取而代之的是 ‘availability_zones’,并且将在 2.0.0 版本中删除

  • fusion_ni - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_nig - ‘app_id’ 和 ‘key_file’ 参数已弃用,取而代之的是 ‘issuer_id’ 和 ‘private_key_file’ 参数,并且将在 2.0.0 版本中删除,FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,取而代之的是 FUSION_ISSUER_ID 和 FUSION_HOST,并且将在 2.0.0 版本中删除

  • fusion_pg - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_pp - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_ra - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_region - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_sc - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_se - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_se - endpoint_type 参数现已弃用,并将在 2.0.0 版本中移除。

  • fusion_ss - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_tenant - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_tn - FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_ts - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

  • fusion_volume - ‘app_id’ 和 ‘key_file’ 参数已弃用,推荐使用 ‘issuer_id’ 和 ‘private_key_file’ 参数,并将在 2.0.0 版本中移除。FUSION_APP_ID 和 FUSION_HOST 环境变量已弃用,推荐使用 FUSION_ISSUER_ID 和 FUSION_HOST,并将在 2.0.0 版本中移除。

v7.6.0 版本移植指南

已知问题

community.docker

重大变更

community.postgresql

infoblox.nios_modules

  • 增加了网格主候选功能 #152

  • 增加了网络和范围的成员分配 #152

  • 增加了 NIOS 范围模块,具有创建、更新和删除功能 #152

  • 修复了使用 Ansible 插件无法更新/删除 EA 的问题 #180

  • 修复了 A 记录的 IPV4 地址的静态和动态分配 #182

  • 修复了 NIOS 成员的主机名更新 #176

  • 将默认 WAPI 版本更新至 2.9 #176

已弃用功能

community.crypto

v7.5.0 版本移植指南

新增集合

  • microsoft.ad (版本 1.0.0)

已弃用功能

cisco.ios

  • ios_bgp_address_family - 弃用 redistribute.ospf.match.external,改用 redistribute.ospf.match.externals,后者为 OSPF 类型 E1 和 E2 路由启用属性

  • ios_bgp_address_family - 弃用 redistribute.ospf.match.nssa_external,改用 redistribute.ospf.match.nssa_externals,后者为 OSPF 类型 N1 和 N2 路由启用属性

  • ios_bgp_address_family - 弃用 redistribute.ospf.match.type_1,改用 redistribute.ospf.match.nssa_externals.type_1

  • ios_bgp_address_family - 弃用 redistribute.ospf.match.type_2,改用 redistribute.ospf.match.nssa_externals.type_2

v7.4.0 版本移植指南

重大变更

Ansible-core

  • ansible-test - 在 ansible-test 管理的主机环境中运行时,依赖于特定文件权限的集成测试可能需要更改。需要 755644 之外权限的测试可能需要更新,以便在测试运行过程中设置必要的权限。

重大变更

community.hrobot

community.vmware

fortinet.fortios

  • 为每个模块添加成员操作的注释。

  • 更新 fortios.py 以获得更高的性能;

  • 支持临时会话密钥和登录前/后横幅;

  • 更新有关如何在问答中使用成员操作的示例。

purestorage.fusion

  • 资源属性的修补与底层 Python SDK 保持一致

  • fusion_volume - 已修复并重新组织,参数已更改

已弃用功能

amazon.aws

  • 通过环境变量和参数的混合传递 profile 和安全令牌的支持已弃用,并将在 6.0.0 版本中删除。在 6.0.0 版本之后,无论使用哪种机制传递,都只能传递 profile 或安全令牌。要显式阻止来自环境变量的参数,请将空字符串作为参数值传递。同时传递 profile 和安全令牌的支持最初在 1.2.0 版本中弃用,但仅在 5.0.0 版本中部分实现 (https://github.com/ansible-collections/amazon.aws/pull/1355)。

community.aws

community.hashi_vault

purestorage.fusion

  • fusion_hw - 硬件模块正在被移除,因为 Pure Storage Fusion 从来不支持更改硬件类型。

  • fusion_info - nigs 子集已弃用,建议使用 network_interface_groups,并将在 1.7.0 版本中移除。

  • fusion_info - placements 子集已弃用,建议使用 placement_groups,并将在 1.7.0 版本中移除。

  • fusion_pg - placement_engine 选项已弃用,因为 Fusion API 不再支持此参数。它将在 2.0.0 版本中移除。

  • fusion_se - 参数 ‘addresses’、‘gateway’ 和 ‘network_interface_groups’ 已弃用,建议使用 ‘iscsi’,并将在 2.0.0 版本中移除。

  • fusion_tn - 租户网络正在被存储端点 `fusion_se` 和网络接口组 `fusion_nig` 取代。

v7.3.0 的移植指南

重大更改

hetzner.hcloud

  • inventory 插件 - 现在需要 Python v3.5+。

主要变更

kubernetes.core

已弃用的功能

community.general

v7.2.0 的移植指南

新增集合

  • dellemc.powerflex (版本 1.5.0)

  • dellemc.unity (版本 1.5.0)

已知问题

Ansible-core

  • ansible-test - 对于某些容器主机和容器组合,可能需要额外的配置。更多详细信息请参阅测试文档。

  • ansible-test - 带有 VOLUME 指令的自定义容器可能无法启动,而以前这些容器可以正确启动。删除 VOLUME 指令以解决此问题。具有此条件的容器将导致 ansible-test 发出警告。

  • ansible-test - 具有 Podman 网络问题的系统可能无法运行容器,而以前此问题未被报告。修复网络问题以继续使用带有 Podman 的 ansible-test

  • ansible-test - 在具有 SELinux 的系统上使用 Docker 可能需要将 SELinux 设置为宽松模式。Podman 应该可以在强制模式下使用 SELinux。

cisco.meraki

  • meraki_network - 更新了 local_status_page_enabledremote_status_page_enabled 的文档,因为它们不再工作。

重大更改

community.general

  • ModuleHelper 模块实用程序 - 当模块设置名为 msgexceptionoutputvarschanged 的输出变量时,只有当它们与 ModuleHelper 本身生成的输出变量冲突时,实际输出才会使用 _ (下划线符号)作为这些名称的前缀,这种情况仅在处理异常时发生。请注意,此重大更改不需要新的主要版本,因为在此版本之前,由于 一个错误,无法将此类变量添加到输出 (https://github.com/ansible-collections/community.general/pull/5765)。

主要变更

Ansible-core

  • ansible-test - 现在支持 WSL2 上的 Docker Desktop(需要额外配置)。

  • ansible-test - 现在支持在具有 cgroup v2 unified 的主机上使用 Docker 和 Podman。以前仅支持 cgroup v1 和 cgroup v2 hybrid。

  • ansible-test - Podman 现在可以在没有 systemd 的容器主机上工作。以前只有一些容器可以工作,而其他容器需要 rootfull 或 rootless Podman,但不能同时使用两者。一些容器根本无法工作。

  • ansible-test - 现在支持 WSL2 上的 Podman。

  • ansible-test - 当容器主机上需要额外的 cgroup 设置时,将自动检测到此情况。将在显示错误消息中提供有关如何配置主机的说明。

ansible.windows

  • 将此集合支持的最低 Ansible 版本设置为 Ansible 2.12

chocolatey.chocolatey

  • win_chocolatey - 允许用户选择用于引导 Chocolatey 安装的 TLS 版本。

已弃用的功能

chocolatey.chocolatey

  • win_chocolatey - 弃用并行安装。

cisco.ios

  • ios_bgp_address_family - 弃用 neighbors.address/tag/ipv6_adddress,建议使用 neighbor_address,后者可以为事实呈现启用通用属性。

  • ios_bgp_address_family - 弃用 neighbors.password,建议使用 password_options,后者允许加密和密码。

  • ios_bgp_address_family - 弃用 slow_peer,建议使用 slow_peer_options,后者支持字典属性。

community.dns

community.general

community.hashi_vault

v7.1.0 的移植指南

新增集合

  • grafana.grafana (版本 1.1.0)

已知问题

community.routeros

  • api_modify - 当 queue tree 中条目的限制定义为人类可读格式(例如 25M)时,配置将在 ROS 中正确设置,但即使没有进行任何更改,该模块也会在每次运行时指示该条目已更改。这是由 ROS API 返回的字节数(例如 25000000)引起的,这与 CLI 行为不一致。为了缓解这种情况,限制必须以字节为单位定义(这些限制在 ROS CLI 中仍将显示为人类可读格式)(https://github.com/ansible-collections/community.routeros/pull/131)。

  • api_modify, api_info - 由于 ROS6 和 ROS7 之间的重大变化,routing ospf arearouting ospf area rangerouting ospf instancerouting ospf interface-template 路径未完全为 ROS6 实现(https://github.com/ansible-collections/community.routeros/pull/131)。

重大更改

cisco.meraki

  • meraki_mr_l7_firewall - 新模块

  • meraki_webhook_payload_template - 新模块

community.zabbix

  • 所有模块都正在放弃使用 zabbix-api,转而使用 httpapi ansible.netcommon 插件。我们将支持 zabbix-api 以实现向后兼容,直到下一个主要版本。有关如何迁移的更多信息,请参阅我们的 README.md

  • zabbix_agent 和 zabbix_proxy 角色正在放弃使用 zabbix-api,转而使用 httpapi ansible.netcommon 插件。我们将支持 zabbix-api 以实现向后兼容,直到下一个主要版本。有关如何迁移的更多信息,请参阅我们的 README.md

containers.podman

  • 新的 become 插件 - podman_unshare

  • Podman 生成 systemd 模块

fortinet.fortios

  • 支持 FortiOS v7.0.6、v7.0.7、v7.0.8、v7.2.1、v7.2.2。

已弃用功能

community.general

  • sap 模块 sapcar_extractsap_task_list_executehana_query 将在 community.general 7.0.0 中从此集合中删除,并替换为重定向到 community.sap_libs 的重定向。如果要继续使用这些模块,请确保同时安装 community.sap_libs(它是 Ansible 包的一部分)(https://github.com/ansible-collections/community.general/pull/5614)。

v7.0.0 的移植指南

新增集合

  • ibm.spectrum_virtualize(版本 1.10.0)

  • inspur.ispim(版本 1.2.0)

  • lowlydba.sqlserver(版本 1.0.4)

  • purestorage.fusion(版本 1.1.1)

  • vultr.cloud(版本 1.3.1)

已知问题

community.routeros

  • community.routeros.command 模块声称支持检查模式。由于它无法判断执行的命令是否修改了状态,因此这种行为是不正确的。由于这可能会破坏现有的 playbook,我们不会更改此行为,直到 community.routeros 3.0.0。

dellemc.openmanage

  • idrac_user - 问题(192043) 该模块可能会出现错误,并显示消息 unable to perform the import or export operation because there are pending attribute changes or a configuration job is in progress。请等待作业完成并再次运行任务。

  • ome_application_alerts_smtp - 问题(212310) - 如果 destination_address 超过 255 个字符,该模块不会提供正确的错误消息。

  • ome_application_alerts_syslog - 问题(215374) - 如果 destination_address 超过 255 个字符,该模块不会提供正确的错误消息。

  • ome_device_local_access_configuration - 问题(215035) - 如果为参数 timeout_limit 提供了不受支持的值,该模块会报告 Successfully updated the local access setting。但是,此值实际上并未应用于 OpenManage Enterprise Modular。

  • ome_device_local_access_configuration - 问题(217865) - 如果为参数 user_defined 和 lcd_language 提供了不受支持的值,该模块不会显示正确的错误消息。

  • ome_device_network_services - 问题(212681) - 如果为参数 port_number、community_name、max_sessions、max_auth_retries 和 idle_timeout 提供了不受支持的值,该模块不会提供正确的错误消息。

  • ome_device_power_settings - 问题(212679) - 如果为参数 power_cap 提供的值不在 0 到 32767 的支持范围内,则该模块会显示以下消息: Unable to complete the request because PowerCap does not exist or is not applicable for the resource URI.

  • ome_device_quick_deploy - 问题(216352) - 如果为 ipv6_prefix_length 和 vlan_id 参数提供了不受支持的值,则该模块不会显示正确的错误消息。

  • ome_smart_fabric_uplink - 问题(186024) - 该模块不允许创建多个同名上行链路,即使 OpenManage Enterprise Modular 支持。如果使用与现有上行链路相同的名称创建上行链路,则会修改现有上行链路。

netapp.ontap

  • na_ontap_snapshot - 添加了使用 UTC 格式表示 expiry_time 的文档。

重大更改

  • Ansible 7 需要控制器上的 Python 3.9,与 ansible-core 2.14 相同。

Ansible-core

  • 允许延迟评估 Jinja2 表达式(https://github.com/ansible/ansible/issues/56017

  • 默认的 ansible-galaxy 角色框架不再包含 .travis.yml 文件。您可以配置 ansible-galaxy 以使用包含 .travis.yml 文件的自定义角色框架,以继续使用 Galaxy 与 Travis CI 的集成。

  • ansible - 在启动时,将检查文件系统编码和区域设置,以验证它们是否为 UTF-8。如果不是,该进程将退出并显示报告错误编码的错误。

  • ansible - 将 CLI 实用程序和控制器代码的最低 Python 要求提高到 Python 3.9

  • ansible-test - 在启动时,将检查文件系统编码,以验证它是否为 UTF-8。如果不是,该进程将退出并显示报告错误编码的错误。

  • ansible-test - 在启动时,区域设置配置为 en_US.UTF-8,如果此配置不可用,则回退到 C.UTF-8。如果两种编码都不可用,则进程将退出并显示错误。如果使用了回退,则会显示警告。在以前的版本中,始终请求 en_US.UTF-8 区域设置。但是,没有执行启动检查来验证是否已成功配置区域设置。

  • ansible-test validate-modules - 在验证模块中删除了 missing-python-doc 错误代码,而是使用 missing-documentation 来表示缺少 PowerShell 模块文档。

  • strategy 插件 - 使 ignore_unreachable 增加 ignoredok 计数器,而不是 skippedunreachable。(https://github.com/ansible/ansible/issues/77690

amazon.aws

check_point.mgmt

  • cp_mgmt_access_role - ‘machines’ 参数现在接受单个字符串,并添加了类型为 dict 的新参数 ‘machines_list’。‘users’ 参数现在接受单个字符串,并添加了类型为 dict 的新参数 ‘users_list’。

  • cp_mgmt_access_rule - ‘vpn’ 参数现在接受单个字符串,并添加了类型为 dict 的新参数 ‘vpn_list’。‘position_by_rule’ 参数已更改为 ‘relative_position’,支持在节的上方/下方定位(而不仅仅是规则)。‘relative_position’ 参数还具有 ‘top’ 和 ‘bottom’ 子选项,允许将规则分别定位在节的顶部和底部。添加了新参数 ‘search_entire_rulebase’,允许无限地进行相对定位(之前限制为 50 条规则)。

  • cp_mgmt_administrator - ‘permissions_profile’ 参数现在接受单个字符串,并添加了类型为 dict 的新参数 ‘permissions_profile_list’。

  • cp_mgmt_publish - 已移除 ‘uid’ 参数。

community.aws

  • aws: 开头的标签在清除标签时不会被移除,这些标签是亚马逊保留的,可能无法更新或删除 (https://github.com/ansible-collections/amazon.aws/issues/817)。

  • acm_certificate - 之前弃用的 purge_tags=False 默认值已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • autoscaling_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.autoscaling_group

  • autoscaling_group_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.autoscaling_group_info

  • aws_secret - 当未设置 tags 参数时,不再删除标签。要删除所有标签,请设置 tags={} (https://github.com/ansible-collections/community.aws/issues/1146)。

  • cloudfront_distribution - 之前弃用的 purge_tags=False 默认值已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • cloudtrail - 该模块已迁移到 amazon.aws 集合。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.cloudtrail

  • cloudwatch_metric_alarm - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatch_metric_alarm

  • cloudwatchevent_rule - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchevent_rule

  • cloudwatchlogs_log_group - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group

  • cloudwatchlogs_log_group_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group_info

  • cloudwatchlogs_log_group_metric_filter - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group_metric_filter

  • community.aws 集合 - 已放弃对 ansible-core < 2.11 的支持 (https://github.com/ansible-collections/community.aws/pull/1541)。

  • community.aws 集合 - community.aws 集合现在已放弃对原始 boto AWS SDK 的支持和任何要求,现在使用 boto3/botocore AWS SDK (https://github.com/ansible-collections/community.aws/pull/898)。

  • community.aws 集合 - community.aws 集合已放弃对 botocore<1.21.0boto3<1.18.0 的支持。大多数模块将继续使用旧版本的 AWS SDK,但是不保证与旧版本 SDK 的兼容性,并且不会对其进行测试。当使用旧版本的 SDK 时,Ansible 将发出警告 (https://github.com/ansible-collections/community.aws/pull/1362)。

  • community.aws 集合 - profile 参数现在与 aws_access_keyaws_secret_keysecurity_token 参数互斥 (https://github.com/ansible-collections/amazon.aws/pull/834)。

  • ec2_eip - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_eip

  • ec2_eip_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_eip_info

  • ec2_vpc_route_table - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_vpc_route_table

  • ec2_vpc_route_table_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_vpc_route_table_info

  • ec2_vpc_vpn - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • elb_application_lb - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.elb_application_lb

  • elb_application_lb_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.elb_application_lb_info

  • elb_instance - ec2_elbs 事实已删除,updated_elbs 已添加到返回值中,并包含相同的信息 (https://github.com/ansible-collections/community.aws/pull/1173)。

  • elb_network_lb - state 的默认值已从 absent 更改为 present (https://github.com/ansible-collections/community.aws/pull/1167)。

  • execute_lambda - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.execute_lambda

  • iam_policy - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_policy

  • iam_policy_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_policy_info

  • iam_server_certificate - 已删除将文件名传递给 certchain_certkey 参数。我们建议使用查找插件来读取文件,请参阅文档以获取示例 (https://github.com/ansible-collections/community.aws/pull/1265)。

  • iam_server_certificate - dup_ok 参数的默认值已更改为 true。要保留原始行为,请显式将 dup_ok 参数设置为 false (https://github.com/ansible-collections/community.aws/pull/1265)。

  • iam_user - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_user

  • iam_user_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_user_info

  • kms_key - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.kms_key

  • kms_key - 之前已弃用使用 policy_modepolicy_grant_types 管理 KMS IAM 策略,现在已删除,转而使用 policy 选项 (https://github.com/ansible-collections/community.aws/pull/1344)。

  • kms_key - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • kms_key_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.kms_key_info

  • lambda - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda

  • lambda_alias - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_alias

  • lambda_event - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_event

  • lambda_execute - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_execute

  • lambda_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_info

  • lambda_policy - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_policy

  • rds_cluster - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster

  • rds_cluster_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster_info

  • rds_cluster_snapshot - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster_snapshot

  • rds_instance - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance

  • rds_instance_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance_info

  • rds_instance_snapshot - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance_snapshot

  • rds_option_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_option_group

  • rds_option_group_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_option_group_info

  • rds_param_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_param_group

  • rds_param_group - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • rds_snapshot_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_snapshot_info

  • rds_subnet_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_subnet_group

  • route53 - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53

  • route53_health_check - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_health_check

  • route53_health_check - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • route53_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_info

  • route53_zone - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_zone

  • route53_zone - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

  • script_inventory_ec2 - ec2.py 清单脚本已移动到新的存储库。该脚本现在可以从 https://github.com/ansible-community/contrib-scripts/blob/main/inventory/ec2.py 下载,并已从此集合中删除。我们建议从该脚本迁移到 amazon.aws.ec2 清单插件。( https://github.com/ansible-collections/community.aws/pull/898)

  • sqs_queue - 之前已弃用的默认值 purge_tags=False 已更新为 purge_tags=True (https://github.com/ansible-collections/community.aws/pull/1343)。

community.docker

community.general

community.hashi_vault

community.vmware

  • 删除了对 ansible-core 版本 < 2.13.0 的支持。

  • vmware_dvs_portgroup - 为 in_traffic_shaping 参数添加一个新的子选项 inherited。这意味着您可以通过不定义该参数来保持设置不变,但也意味着如果您想在 PG 级别覆盖它,则必须将该设置定义为非 inherited ( https://github.com/ansible-collections/community.vmware/pull/1483)。

  • vmware_dvs_portgroup - 为 out_traffic_shaping 参数添加一个新的子选项 inherited。这意味着您可以通过不定义该参数来保持设置不变,但也意味着如果您想在 PG 级别覆盖它,则必须将该设置定义为非 inherited ( https://github.com/ansible-collections/community.vmware/pull/1483)。

  • vmware_dvs_portgroup - 将 net_flow 的类型更改为字符串,以允许将其隐式设置为 inherited 或保持值不变。这意味着您可以通过不定义该参数来保持设置不变,但也意味着虽然 trueno 仍然有效,但 TrueOff(大写)将不起作用 ( https://github.com/ansible-collections/community.vmware/pull/1483)。

  • vmware_dvs_portgroup - 删除对 vSphere API 低于 6.7 的支持。

  • vmware_dvs_portgroup - 删除 network_policy 的默认值,并添加一个新的子选项 inherited。这意味着您可以通过不定义该参数来保持设置不变,但也意味着如果您想在 PG 级别覆盖它,则必须将该设置定义为非 inherited ( https://github.com/ansible-collections/community.vmware/pull/1483)。

  • vmware_dvs_portgroup_info - 删除对 vSphere API 低于 6.7 的支持。

  • vmware_dvswitch - 删除对 vSphere API 低于 6.7 的支持。

  • vmware_dvswitch_uplink_pg - 删除对 vSphere API 低于 6.7 的支持。

  • vmware_guest_boot_manager - 移除 secure_boot_enabled 参数的默认值 (https://github.com/ansible-collections/community.vmware/issues/1461)。

  • vmware_vm_config_option - 结果中的字典项名称从空格连接的字符串更改为下划线连接的字符串,例如,Guest fullname 更改为 guest_fullname (https://github.com/ansible-collections/community.vmware/issues/1268)。

  • vmware_vspan_session - 移除对低于 6.7 版本的 vSphere API 的支持。

dellemc.enterprise_sonic

  • bgp_af - 将 route_advertise_list 字典添加到 argspec,以替换已删除的、过时的 advertise_prefix 属性,该属性用于此集合的 1.x 分支上的 SONiC 3.x 镜像。此更改对应于 SONiC 4.0 OC YANG REST API 的合规性更改。它允许指定与每个路由通告前缀一起使用的路由映射 (https://github.com/ansible-collections/dellemc.enterprise_sonic/pull/63)。

  • bgp_af - 从 argspec 和配置代码中删除过时的 ‘advertise_prefix’ 属性。此更改以及随后用新的路由通告列表参数结构进行的 co-req 替换需要对以前用于配置 SONiC 3.x 镜像的路由通告前缀的 playbook 进行相应的更改。(https://github.com/ansible-collections/dellemc.enterprise_sonic/pull/60)

  • bgp_neighbors - 将先前定义的独立 “bfd” 属性替换为包含多个属性的 bfd 字典。此更改对应于修订后的 SONiC 4.x OC YANG 兼容 REST API 实现。先前使用 SONiC 3.x 镜像的 bfd 属性的 playbook 必须修改为在 SONiC 4.0 镜像上使用 bfd 属性 argspec 结构的新定义 (https://github.com/ansible-collections/dellemc.enterprise_sonic/pull/72)。

  • bgp_neighbors - 对于 BGP 对等组,将先前定义的独立 “bfd” 属性替换为包含多个属性的 bfd 字典。此更改对应于修订后的 SONiC 4.x OC YANG 兼容 REST API 实现。先前使用 SONiC 3.x 镜像的 bfd 属性的 playbook 必须修改为在 SONiC 4.0 镜像上使用 bfd 属性 argspec 结构的新定义 (https://github.com/ansible-collections/dellemc.enterprise_sonic/pull/81)。

主要更改

Ansible-core

  • 将处理程序处理移到新的 PlayIterator 阶段,以使用配置的策略 (https://github.com/ansible/ansible/issues/65067)

  • ansible - 在启动时,将检查文件系统编码和区域设置,以验证它们是否为 UTF-8。如果不是,该进程将退出并显示报告错误编码的错误。

  • ansible - 将 CLI 实用程序和控制器代码的最低 Python 要求提高到 Python 3.9

  • ansible-test - 在启动时,将检查文件系统编码,以验证它是否为 UTF-8。如果不是,该进程将退出并显示报告错误编码的错误。

  • ansible-test - 在启动时,区域设置配置为 en_US.UTF-8,如果此配置不可用,则回退到 C.UTF-8。如果两种编码都不可用,则进程将退出并显示错误。如果使用了回退,则会显示警告。在以前的版本中,始终请求 en_US.UTF-8 区域设置。但是,没有执行启动检查来验证是否已成功配置区域设置。

amazon.aws

  • amazon.aws 集合 - amazon.aws 集合已停止支持 botocore<1.20.0boto3<1.17.0。大多数模块将继续使用旧版本的 AWS SDK,但不保证与旧版本的 SDK 的兼容性,也不会对其进行测试。当使用旧版本的 SDK 时,Ansible 将发出警告 (https://github.com/ansible-collections/amazon.aws/pull/574)。

  • autoscaling_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.autoscaling_group

  • autoscaling_group_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.autoscaling_group_info

  • cloudtrail - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudtrail

  • cloudwatch_metric_alarm - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatch_metric_alarm

  • cloudwatchevent_rule - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchevent_rule

  • cloudwatchlogs_log_group - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group

  • cloudwatchlogs_log_group_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group_info

  • cloudwatchlogs_log_group_metric_filter - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.cloudwatchlogs_log_group_metric_filter

  • ec2_eip - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_eip

  • ec2_eip_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.ec2_eip_info

  • elb_application_lb - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.elb_application_lb

  • elb_application_lb_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.elb_application_lb_info

  • execute_lambda - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.execute_lambda

  • iam_policy - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_policy

  • iam_policy_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_policy_info

  • iam_user - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_user

  • iam_user_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.iam_user_info

  • kms_key - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.kms_key

  • kms_key_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.kms_key_info

  • lambda - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda

  • lambda_alias - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_alias

  • lambda_event - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_event

  • lambda_execute - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_execute

  • lambda_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_info

  • lambda_policy - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.lambda_policy

  • rds_cluster - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster

  • rds_cluster_info - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster_info

  • rds_cluster_snapshot - 此模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 playbook 应更新为使用 amazon.aws.rds_cluster_snapshot

  • rds_instance - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance

  • rds_instance_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance_info

  • rds_instance_snapshot - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_instance_snapshot

  • rds_option_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_option_group

  • rds_option_group_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_option_group_info

  • rds_param_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_param_group

  • rds_snapshot_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_snapshot_info

  • rds_subnet_group - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.rds_subnet_group

  • route53 - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53

  • route53_health_check - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_health_check

  • route53_info - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_info

  • route53_zone - 该模块已从 community.aws 集合迁移。使用此模块的完全限定集合名称的 Playbook 应更新为使用 amazon.aws.route53_zone

arista.eos

  • 删除以下 EOS 弃用模块

  • 在此集合中的任何模块上,不再允许使用 connection: local 和 provider 选项。

  • eos_interface

  • eos_l2_interface

  • eos_l3_interface

  • eos_linkagg

  • eos_static_route

  • eos_vlan

check_point.mgmt

  • plugins/httpapi/checkpoint - 支持使用新变量 ‘ansible_cloud_mgmt_id’ 的 Smart-1 Cloud

chocolatey.chocolatey

  • win_chocolatey - 添加了 bootstrap_script 选项,允许用户指定用于在客户端上安装 Chocolatey 的脚本 URL。

  • win_chocolatey_facts - 将过期的软件包列表添加到返回的数据中。

cisco.asa

  • 请使用以下连接类型之一 - network_cli、httpapi 或 netconf。

  • 这包括以下模块

  • 此版本不再支持 connection: local 和 provider 字典。

  • 此版本删除了所有已达到生命周期结束的弃用插件。

  • 在此集合中的任何模块上,不再允许使用 connection: local 和 provider 选项。

  • asa_acl

  • asa_og

cisco.ios

  • 此集合的唯一有效连接类型是 network_cli。

  • 此版本不再支持 connection: local 和 provider 字典。

cisco.iosxr

  • 此集合的唯一有效连接类型是 network_cli 和 netconf。

  • 此版本不再支持 connection: local 和 provider 字典。

cisco.nxos

  • 请使用以下连接类型之一 - network_cli、httpapi 或 netconf。

  • 此版本不再支持 connection: local 和 provider 字典。

community.aws

  • community.aws 集合 - amazon.aws 集合已停止支持 botocore<1.20.0boto3<1.17.0。大多数模块将继续使用旧版本的 AWS SDK,但不保证与旧版本的 SDK 的兼容性,也不会对其进行测试。当使用旧版本的 SDK 时,Ansible 将发出警告 (https://github.com/ansible-collections/community.aws/pull/956)。

community.docker

community.general

  • 此集合的内部结构已针对模块和操作插件进行了更改。它们不再位于按主题排序的目录层次结构中,而是现在都位于一个单独的(扁平)目录中。这不会对用户产生影响,前提是他们没有使用内部 FQCN。这些仍然可以工作,但会导致弃用警告。它们从未被官方支持过,因此保留重定向是一种礼貌行为,并且这不被标记为重大更改。请注意,例如,Ansible VScode 插件开始推荐这些内部名称。如果您遵循了它的建议,现在您必须改回使用短名称以避免弃用警告,以及将来这些重定向在 community.general 9.0.0 中移除时可能出现的错误(https://github.com/ansible-collections/community.general/pull/5461)。

  • newrelic_deployment - 移除 New Relic v1 API,添加了对 v2 API 的支持(https://github.com/ansible-collections/community.general/pull/5341)。

community.mysql

  • mysql_db - pipefail 参数的默认值将在 community.mysql 4.0.0 中更改为 true。如果您的目标机器不使用 bash 作为默认解释器,请显式将 pipefail 设置为 false。但是,我们强烈建议将 bash 设置为默认值,并将 pipefail=true,因为它会保护您免受您不知道的损坏转储(https://github.com/ansible-collections/community.mysql/issues/407)。

community.network

  • community.network 集合不再支持 Ansible 2.9 和 ansible-base 2.10。虽然我们不会采取任何主动措施来阻止使用,但我们将删除兼容性代码和其他兼容性措施,这将有效地阻止将此集合中的大多数内容与 Ansible 2.9 一起使用,以及将此集合中的某些内容与 ansible-base 2.10 一起使用。Ansible 2.9 和 ansible-base 2.10 都将很快停止维护,如果您仍在使用它们,您应尽快考虑升级到 ansible-core 2.11 或更高版本(https://github.com/ansible-collections/community.network/pull/426)。

  • 此集合的内部结构已针对模块和操作插件进行了更改。它们不再位于按主题排序的目录层次结构中,而是现在都位于一个单独的(扁平)目录中。这不会对用户产生影响,前提是他们没有使用内部 FQCN。这些仍然可以工作,但会导致弃用警告。它们从未被官方支持过,因此保留重定向是一种礼貌行为,并且这不被标记为重大更改。请注意,例如,Ansible VScode 插件开始推荐这些内部名称。如果您遵循了它的建议,现在您必须改回使用短名称以避免弃用警告,以及将来这些重定向在 community.network 8.0.0 中移除时可能出现的错误(https://github.com/ansible-collections/community.network/pull/482)。

community.postgresql

dellemc.enterprise_sonic

dellemc.openmanage

  • 添加了用于创建执行环境的集合元数据。

  • 重构了 Markdown (MD) 文件和内容,以提高可读性。

  • 以下模块中的共享参数已弃用 - idrac_network、idrac_timezone_ntp、dellemc_configure_idrac_eventing、dellemc_configure_idrac_services、dellemc_idrac_lc_attributes、dellemc_system_lockdown_mode。

  • idrac_bios - 该模块已增强,支持清除挂起的 BIOS 属性、将 BIOS 重置为默认设置以及使用 Redfish 配置 BIOS 属性。

  • idrac_boot - 支持在 iDRAC 上配置引导设置。

  • idrac_redfish_storage_controller - 该模块已增强,支持 LockVirtualDisk 操作。

  • idrac_virtual_media - 该模块允许配置远程文件共享设置。

  • ome_device_group - 该模块已增强,支持从静态设备组中移除设备。

  • ome_devices - 支持在 OpenManage Enterprise 上执行设备特定的操作。

fortinet.fortimanager

  • 修复了 ansible 2.9.x 和 ansible-base 2.10.x 的兼容性问题。

  • 修复了许多 Ansible 健全性测试警告和错误。

  • 支持 FortiManager Schema 7.2.0,98 个新模块

  • 支持 Ansible 变更日志。

fortinet.fortios

  • 支持 check_mode 中的 Diff 功能。

  • 支持 Fortios 7.2.0。

infoblox.nios_modules

  • 额外的安全层功能,在 playbook 中使用 certkey 参数,用于使用证书和密钥 *.pem 文件绝对路径进行身份验证 #154

  • 修复了由于使用 Ansible 模块 nios network 删除网络中的模板属性而导致的问题 #147

  • 更新 TXT 记录的 text 字段 #128

  • 使用 old_namenew_name 对具有 old_name 中虚拟名称(系统中不存在)的对象进行更新操作不会在系统中创建新对象。将抛出一个错误,指出该对象在系统中不存在 #129

junipernetworks.junos

  • 在此集合中的任何模块上,不再允许使用 connection: local 和 provider 选项。

vyos.vyos

  • 在此集合中的任何模块上,不再允许使用 connection: local 和 provider 选项。

已移除的集合

  • servicenow.servicenow(先前包含的版本:1.0.6)

已移除的功能

Ansible-core

amazon.aws

ansible.netcommon

  • napalm - 移除未使用的连接插件。

  • net_banner - 使用 <network_os>_banner 代替。

  • net_interface - 使用 <network_os>_interfaces 代替。

  • net_l2_interface - 使用 <network_os>_l2_interfaces 代替。

  • net_l3_interface - 使用 <network_os>_l3_interfaces 代替。

  • net_linkagg - 使用 <network_os>_lag_interfaces 代替。

  • net_lldp - 使用 <network_os>_lldp_global 代替。

  • net_lldp_interface - 使用 <network_os>_lldp_interfaces 代替。

  • net_logging - 使用 <network_os>_logging_global 代替。

  • net_static_route - 使用 <network_os>_static_routes 代替。

  • net_system - 使用 <network_os>_system 代替。

  • net_user - 使用 <network_os>_user 代替。

  • net_vlan - 使用 <network_os>_vlans 代替。

  • net_vrf - 使用 <network_os>_vrf 代替。

cisco.ios

  • ios_interface - 使用 ios_interfaces 代替。

  • ios_l2_interface - 使用 ios_l2_interfaces 代替。

  • ios_l3_interface - 使用 ios_l3_interfaces 代替。

  • ios_static_route - 使用 ios_static_routes 代替。

  • ios_vlan - 使用 ios_vlans 代替。

cisco.iosxr

  • iosxr_interface - 使用 iosxr_interfaces 代替。

cisco.nxos

  • 此版本移除了以下已到达生命周期终点的已弃用插件。

  • nxos_acl

  • nxos_acl_interface

  • nxos_interface

  • nxos_interface_ospf

  • nxos_l2_interface

  • nxos_l3_interface

  • nxos_linkagg

  • nxos_lldp

  • nxos_ospf

  • nxos_ospf_vrf

  • nxos_smu

  • nxos_static_route

  • nxos_vlan

community.aws

community.azure

community.docker

community.general

community.network

community.vmware

junipernetworks.junos

  • 移除以下已弃用的 Junos 模块。

  • junos_interface

  • junos_l2_interface

  • junos_l3_interface

  • junos_linkagg

  • junos_lldp

  • junos_lldp_interface

  • junos_static_route

  • junos_vlan

vyos.vyos

  • vyos_interface - 请改用 vyos_interfaces。

  • vyos_l3_interface - 请改用 vyos_l3_interfaces。

  • vyos_linkagg - 请改用 vyos_lag_interfaces。

  • vyos_lldp - 请改用 vyos_lldp_global。

  • vyos_lldp_interface - 请改用 vyos_lldp_interfaces。

  • vyos_static_route - 请改用 vyos_static_routes。

已弃用的功能

Ansible-core

  • 弃用查找插件返回任意数据的能力。查找插件必须返回列表,否则在 2.18 中将出现错误。 (https://github.com/ansible/ansible/issues/77788)

  • 加密 - 由于 Python 3.13 即将删除 Python crypt 模块,因此弃用该模块的使用

  • PlayContext.verbosity 已弃用,将在 2.18 中移除。请使用 ansible.utils.display.Display().verbosity 作为唯一的事实来源。

  • DEFAULT_FACT_PATHDEFAULT_GATHER_SUBSETDEFAULT_GATHER_TIMEOUT 已弃用,将在 2.18 中移除。请改用 module_defaults 关键字。

  • PlayIterator - 弃用 cache_block_tasksget_original_task,它们是空操作且未使用。

  • Templar - 弃用未使用的 shared_loader_obj 选项。而是直接使用 ansible.plugins.loader

  • listify_lookup_plugin_terms,弃用未使用的 ‘loader/dataloader’ 参数。

  • vars 插件 - 使用类属性 REQUIRES_WHITELIST 确定是否运行 ansible.legacy vars 插件已弃用,请设置 REQUIRES_ENABLED。

amazon.aws

cisco.ios

  • 已弃用 ios_linkagg_module,请改用 ios_lag_interfaces。

cisco.mso

  • 已弃用 mso_schema_template_contract_filter 的 contract_filter_type 属性。该值现在从 filter_type 推断。

community.aws

  • aws_acm - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • aws_codebuild - tags 参数当前使用非标准格式,已被弃用。在 6.0.0 版本中,此参数将接受简单的键值对字典,而不是当前字典列表。建议迁移到使用 resource_tags 参数,该参数已经接受简单的字典格式 (https://github.com/ansible-collections/community.aws/pull/1221)。

  • aws_glue_connection - connection_parameters 返回键已被弃用,并将在 2024-06-01 之后的版本中移除,它将被 raw_connection_parameters 键替换 (https://github.com/ansible-collections/community.aws/pull/518)。

  • aws_kms - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • cloudfront_distribution - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • community.aws 集合 - 由于 AWS SDK 宣布停止支持低于 3.7 的 Python 版本(https://aws.amazon.com/blogs/developer/python-support-policy-updates-for-aws-sdks-and-tools/),此集合已弃用对低于 3.7 的 Python 版本的支持,并将在 2023-05-31 之后的版本中删除(https://github.com/ansible-collections/community.aws/pull/1361)。

  • ec2_vpc_vpn - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • iam_policy - policies 返回值已重命名为 policy_names,并将在 2024-08-01 之后的版本中删除,目前两个值都将返回(https://github.com/ansible-collections/community.aws/pull/1375)。

  • lambda_info - function 返回键返回一个字典的字典,已被弃用。在 2025-01-01 之后的版本中,此键将被删除,取而代之的是 functions,它返回一个字典列表(https://github.com/ansible-collections/community.aws/pull/1239)。

  • rds_param_group - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • route53_health_check - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • route53_info - DelegationSetsCheckerIpRangesHealthCheck 的驼峰式返回值已被弃用,在未来的版本中,您必须分别使用蛇形命名法返回值 delegation_setschecker_ip_rangeshealth_checkhttps://github.com/ansible-collections/community.aws/pull/1322)。

  • route53_info - HostedZonesResourceRecordSetsHealthChecks 的驼峰式返回值已被弃用,在未来的版本中,您必须分别使用蛇形命名法返回值 hosted_zonesresource_record_setshealth_checks

  • route53_zone - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

  • sqs_queue - purge_tags 的当前默认值 False 已被弃用,并将在 5.0.0 版本中更新为 True

community.crypto

  • 对 Ansible 2.9 和 ansible-base 2.10 的支持已弃用,并将在下一个主要版本(community.crypto 3.0.0)中删除。一些模块可能在之后仍然可以使用这些版本,但我们将不再保留支持它们所需的兼容性代码(https://github.com/ansible-collections/community.crypto/pull/460)。

community.docker

  • 对 Docker API 版本 1.20 到 1.24 的支持已弃用,并将在 community.docker 3.0.0 中删除。第一个支持 API 版本 1.25 的 Docker 版本是 2017 年 1 月发布的 Docker 1.13。这会影响到模块 docker_containerdocker_container_execdocker_container_infodocker_composedocker_logindocker_imagedocker_image_infodocker_image_loaddocker_host_infodocker_networkdocker_network_infodocker_node_infodocker_swarm_infodocker_swarm_servicedocker_swarm_service_infodocker_volume_infodocker_volume,它们的最低支持 API 版本在 1.20 到 1.24 之间(https://github.com/ansible-collections/community.docker/pull/396)。

  • 对 Python 2.6 的支持已弃用,并将在下一个主要版本(community.docker 3.0.0)中删除。一些模块可能仍然可以使用 Python 2.6,但我们将不再尝试确保兼容性(https://github.com/ansible-collections/community.docker/pull/388)。

  • docker_container - ignore_image 选项已弃用,并将在 community.docker 4.0.0 中删除。请改用 comparisons 中的 image: ignorehttps://github.com/ansible-collections/community.docker/pull/487)。

  • docker_container - purge_networks 选项已弃用,并将在 community.docker 4.0.0 中删除。请改用 comparisons 中的 networks: strict,并确保提供 networks,如果应删除所有网络,则值为 []https://github.com/ansible-collections/community.docker/pull/487)。

community.general

community.hashi_vault