Ansible 6 移植指南

Ansible 6 基于 Ansible-core 2.13。

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

Playbook

  • 模板 - 您不能再在 Jinja 模板之外执行算术和连接操作。以下语句需要重写以产生 [1, 2]

- name: Prior to 2.13
  debug:
    msg: '[1] + {{ [2] }}'

- name: 2.13 and forward
  debug:
    msg: '{{ [1] + [2] }}'
  • AnsibleUndefined 对象表示的未定义变量的 __repr__ 方法的返回值已更改。{{ '%r'|format(undefined_variable) }} 在 2.13 中返回 AnsibleUndefined(hint=None, obj=missing, name='undefined_variable'),而在 2.12 及更早版本中仅返回 AnsibleUndefined

  • finalize 方法不再在全局变量中公开以供在模板中使用。要将 None 转换为空字符串,可以使用以下表达式:{{ value if value is not none }}

命令行

没有明显的更改

已弃用

没有明显的更改

模块

  • 要使用 ansible-core 2.13 执行模块,您必须使用 Python 2 版本 2.7 或 Python 3 版本 3.5 或更高版本。任何使用 ansible.module_utils.basic 的代码都无法在较低的 Python 版本下运行。

已移除的模块

以下模块不再存在

  • 没有明显的更改

弃用通知

没有明显的更改

值得注意的模块更改

没有明显的更改

重大更改

  • ansible.module_utils.urls.fetch_url 现在将捕获的 HTTPError 异常作为 r 返回。HTTPError 是一个类似响应的对象,可以向模块作者提供更多信息。模块应依赖 info['status'] >= 400 来确定是否发生故障,而不是使用 r is None 或在尝试 r.read() 时捕获 AttributeError

插件

没有明显的更改

移植自定义脚本

没有明显的更改

网络

没有明显的更改

v6.7.0 移植指南

已知问题

community.routeros

  • api_modify - 当 queue tree 中条目的限制定义为人类可读时(例如 25M),配置将在 ROS 中正确设置,但即使没有进行任何更改,模块也会指示该项在每次运行时都已更改。这是由 ROS API 引起的,该 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.fortimanager

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

  • 支持 Ansible 更新日志。

fortinet.fortios

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

已弃用功能

community.general

  • 请注意,一些工具,如 VScode 插件 (https://github.com/ansible/vscode-ansible/issues/573),或 ansible-doc --list --type module,建议将 community.general 中模块和操作的正确 FQCN 替换为具有三个以上组件的内部名称。例如,community.general.ufw 被建议替换为 community.general.system.ufw。虽然这些较长的名称确实有效,但它们被集合视为内部名称,随时可能更改或删除。它们在 community.general 6.0.0 中被删除,并导致弃用消息。请避免使用这些内部名称,而应使用通用的三组件 FQCN (community.general.<模块名称>) 代替 (https://github.com/ansible-collections/community.general/pull/5373)。

v6.6.0 版本移植指南

新增集合

  • lowlydba.sqlserver (版本 1.0.4)

已知问题

community.routeros

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

重大更改

community.general

主要变更

community.general

fortinet.fortimanager

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

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

已弃用功能

cisco.mso

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

community.general

v6.5.0 版本移植指南

主要变更

infoblox.nios_modules

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

  • 修复了使用 Ansible 模块 nios 网络删除网络时由于模板属性引起的问题 #147

已弃用功能

community.general

v6.4.0 版本移植指南

新增集合

  • inspur.ispim (版本 1.0.1)

  • vultr.cloud (版本 1.1.0)

已弃用功能

community.general

v6.3.0 版本移植指南

主要变更

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)。

fortinet.fortios

  • 支持 check_mode 中的 Diff 功能。

  • 支持 Fortios 7.2.0。

已弃用功能

v6.2.0 版本移植指南

新增集合

  • ibm.spectrum_virtualize (版本 1.9.0)

已知问题

netapp.ontap

  • na_ontap_snapshot - 添加了文档,说明 expiry_time 使用 UTC 格式。

主要变更

community.postgresql

已弃用功能

community.hashi_vault

v6.1.0 的移植指南

已添加的集合

  • purestorage.fusion (版本 1.0.2)

已知问题

dellemc.openmanage

  • idrac_user - 问题 (192043) 该模块可能会报错,并显示消息 无法执行导入或导出操作,因为存在待处理的属性更改或配置作业正在进行中。请等待作业完成并再次运行该任务。

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

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

  • ome_device_local_access_configuration - 问题 (215035) - 如果为参数 timeout_limit 提供了不支持的值,该模块会报告 已成功更新本地访问设置。但是,此值实际上并未应用于 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 的支持范围内,该模块会显示以下消息:无法完成请求,因为 PowerCap 不存在或不适用于资源 URI。

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

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

重大更改

chocolatey.chocolatey

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

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

infoblox.nios_modules

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

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

已弃用功能

cisco.ios

  • 已弃用 ios_linkagg_module,转而使用 ios_lag_interfaces。

community.aws

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

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

community.crypto

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)。

community.general

v6.0.0 的移植指南

已添加的集合

  • cisco.dnac (版本 6.4.0)

  • community.sap (版本 1.0.0)

  • community.sap_libs (版本 1.1.0)

  • vmware.vmware_rest (版本 2.1.5)

已知问题

Ansible-core

ansible.netcommon

  • eos - 在 Ansible 2.9 上使用 eos 模块时,启用 import_modules 的任务偶尔会失败。可以通过设置 import_modules: no 来避免这种情况

community.general

dellemc.openmanage

  • idrac_user - 问题 (192043) 该模块可能会报错,并显示消息 无法执行导入或导出操作,因为存在待处理的属性更改或配置作业正在进行中。请等待作业完成并再次运行该任务。

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

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

  • ome_application_console_preferences - 问题 (224690) - 当为参数 report_row_limit、email_sender_settings 和 metric_collection_settings 提供不支持的值时,该模块不会显示正确的错误消息,并且该值会应用于 OpenManage Enterprise。

  • ome_device_local_access_configuration - 问题 (215035) - 如果为参数 timeout_limit 提供了不支持的值,该模块会报告 已成功更新本地访问设置。但是,此值实际上并未应用于 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 的支持范围内,该模块会显示以下消息:无法完成请求,因为 PowerCap 不存在或不适用于资源 URI。

  • ome_device_power_settings - 问题(212679) - 如果为参数 power_cap 提供的值不在 0 到 32767 的支持范围内,则模块会报错,并显示以下消息: 无法完成请求,因为PowerCap不存在或不适用于资源URI。

  • ome_device_power_settings - 问题(212679) - 如果为参数 power_cap 提供的值不在 0 到 32767 的支持范围内,则模块会报错,并显示以下消息: 无法完成请求,因为PowerCap不存在或不适用于资源URI。

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

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

purestorage.flasharray

  • purefa_admin - 一旦设置了 max_loginlockout,目前除了通过 FlashArray GUI 之外,没有其他方法将其重置为零。

重大更改

Ansible-core

  • 模块 Python 依赖项 - 模块执行中不再支持 Python 2.6。

  • 模板 - 不再允许在 jinja 模板之外执行算术和连接操作 (https://github.com/ansible/ansible/pull/75587)

  • finalize 方法不再在全局变量中公开以供在模板中使用。

amazon.aws

  • aws_caller_facts - 删除已弃用的 aws_caller_facts 别名。请改用 aws_caller_info

  • cloudformation_facts - 删除已弃用的 cloudformation_facts 别名。请改用 cloudformation_info

  • ec2_ami_facts - 删除已弃用的 ec2_ami_facts 别名。请改用 ec2_ami_info

  • ec2_eni_facts - 删除已弃用的 ec2_eni_facts 别名。请改用 ec2_eni_info

  • ec2_group_facts - 删除已弃用的 ec2_group_facts 别名。请改用 ec2_group_info

  • ec2_instance_facts - 删除已弃用的 ec2_instance_facts 别名。请改用 ec2_instance_info

  • ec2_snapshot_facts - 删除已弃用的 ec2_snapshot_facts 别名。请改用 ec2_snapshot_info

  • ec2_vol_facts - 删除已弃用的 ec2_vol_facts 别名。请改用 ec2_vol_info

  • ec2_vpc_dhcp_option_facts - 删除已弃用的 ec2_vpc_dhcp_option_facts 别名。请改用 ec2_vpc_dhcp_option_info

  • ec2_vpc_endpoint_facts - 删除已弃用的 ec2_vpc_endpoint_facts 别名。请改用 ec2_vpc_endpoint_info

  • ec2_vpc_igw_facts - 删除已弃用的 ec2_vpc_igw_facts 别名。请改用 ec2_vpc_igw_info

  • ec2_vpc_nat_gateway_facts - 删除已弃用的 ec2_vpc_nat_gateway_facts 别名。请改用 ec2_vpc_nat_gateway_info

  • ec2_vpc_net_facts - 删除已弃用的 ec2_vpc_net_facts 别名。请改用 ec2_vpc_net_info

  • ec2_vpc_route_table_facts - 删除已弃用的 ec2_vpc_route_table_facts 别名。请改用 ec2_vpc_route_table_info

  • ec2_vpc_subnet_facts - 删除已弃用的 ec2_vpc_subnet_facts 别名。请改用 ec2_vpc_subnet_info

ansible.netcommon

  • httpapi - 将 import_modules 选项的默认值从 no 更改为 yes

  • netconf - 将 import_modules 选项的默认值从 no 更改为 yes

  • network_cli - 将 import_modules 选项的默认值从 no 更改为 yes

arista.eos

  • eos_command - 参数 command 的新子选项 version,它控制 JSON 响应的版本。以前,对于 network_cli,该值假定为 “latest”,对于 httpapi,该值假定为 “1”,但现在对于这两种连接,默认值都将为 “latest”。此选项也可用于使用 plugins.module_utils.network.eos.eos.run_commands() 发出自己的设备请求的模块,并具有相同的新默认行为。 (https://github.com/ansible-collections/arista.eos/pull/258)。

  • httpapi - eos_use_sessions 选项现在是一个布尔值,而不是一个整数。

community.aws

  • aws_acm_facts - 删除已弃用的别名 aws_acm_facts。请改用 aws_acm_info

  • aws_kms_facts - 删除已弃用的别名 aws_kms_facts。请改用 aws_kms_info

  • aws_kms_info - 现已忽略已弃用的 keys_attr 字段 (https://github.com/ansible-collections/community.aws/pull/838)。

  • aws_region_facts - 删除已弃用的别名 aws_region_facts。请改用 aws_region_info

  • aws_s3_bucket_facts - 删除已弃用的别名 aws_s3_bucket_facts。请改用 aws_s3_bucket_info

  • aws_sgw_facts - 删除已弃用的别名 aws_sgw_facts。请改用 aws_sgw_info

  • aws_waf_facts - 删除已弃用的别名 aws_waf_facts。请改用 aws_waf_info

  • cloudfront_facts - 删除已弃用的别名 cloudfront_facts。请改用 cloudfront_info

  • cloudwatchlogs_log_group_facts - 删除已弃用的别名 cloudwatchlogs_log_group_facts。请改用 cloudwatchlogs_log_group_info

  • dynamodb_table - 当前被忽略的对主键和 global_all 索引的已弃用更新现在将导致失败。 (https://github.com/ansible-collections/community.aws/pull/837)。

  • ec2_asg_facts - 删除已弃用的别名 ec2_asg_facts。请改用 ec2_asg_info

  • ec2_customer_gateway_facts - 删除已弃用的别名 ec2_customer_gateway_facts。请改用 ec2_customer_gateway_info

  • ec2_eip_facts - 删除已弃用的别名 ec2_eip_facts。请改用 ec2_eip_info

  • ec2_elb_facts - 删除已弃用的别名 ec2_elb_facts。请改用 ec2_elb_info

  • ec2_elb_info - ec2_elb_info 模块已被删除。请使用 ``elb_classic_lb_info 模块。

  • ec2_lc_facts - 删除已弃用的别名 ec2_lc_facts。请改用 ec2_lc_info

  • ec2_placement_group_facts - 删除已弃用的别名 ec2_placement_group_facts。请改用 ec2_placement_group_info

  • ec2_vpc_nacl_facts - 删除已弃用的别名 ec2_vpc_nacl_facts。请改用 ec2_vpc_nacl_info

  • ec2_vpc_peering_facts - 删除已弃用的别名 ec2_vpc_peering_facts。请改用 ec2_vpc_peering_info

  • ec2_vpc_route_table_facts - 移除已弃用的别名 ec2_vpc_route_table_facts。请改用 ec2_vpc_route_table_info

  • ec2_vpc_vgw_facts - 移除已弃用的别名 ec2_vpc_vgw_facts。请改用 ec2_vpc_vgw_info

  • ec2_vpc_vpn_facts - 移除已弃用的别名 ec2_vpc_vpn_facts。请改用 ec2_vpc_vpn_info

  • ecs_service_facts - 移除已弃用的别名 ecs_service_facts。请改用 ecs_service_info

  • ecs_taskdefinition_facts - 移除已弃用的别名 ecs_taskdefinition_facts。请改用 ecs_taskdefinition_info

  • efs_facts - 移除已弃用的别名 efs_facts。请改用 efs_info

  • elasticache_facts - 移除已弃用的别名 elasticache_facts。请改用 elasticache_info

  • elb_application_lb_facts - 移除已弃用的别名 elb_application_lb_facts。请改用 elb_application_lb_info

  • elb_classic_lb_facts - 移除已弃用的别名 elb_classic_lb_facts。请改用 elb_classic_lb_info

  • elb_target_facts - 移除已弃用的别名 elb_target_facts。请改用 elb_target_info

  • elb_target_group_facts - 移除已弃用的别名 elb_target_group_facts。请改用 elb_target_group_info

  • iam - 移除已弃用的 community.aws.iam 模块。请改用 community.aws.iam_usercommunity.aws.iam_access_keycommunity.aws.iam_group (https://github.com/ansible-collections/community.aws/pull/839)。

  • iam_cert_facts - 移除已弃用的别名 iam_cert_facts。请改用 iam_cert_info

  • iam_mfa_device_facts - 移除已弃用的别名 iam_mfa_device_facts。请改用 iam_mfa_device_info

  • iam_role_facts - 移除已弃用的别名 iam_role_facts。请改用 iam_role_info

  • iam_server_certificate_facts - 移除已弃用的别名 iam_server_certificate_facts。请改用 iam_server_certificate_info

  • lambda_facts - 移除已弃用的模块 lambda_facts``。请改用 lambda_info

  • rds - 移除已弃用的 community.aws.rds 模块。请改用 community.aws.rds_instance (https://github.com/ansible-collections/community.aws/pull/839)。

  • rds_instance_facts - 移除已弃用的别名 rds_instance_facts。请改用 rds_instance_info

  • rds_snapshot_facts - 移除已弃用的别名 rds_snapshot_facts。请改用 rds_snapshot_info

  • redshift_facts - 移除已弃用的别名 redshift_facts。请改用 redshift_info

  • route53_facts - 移除已弃用的别名 route53_facts。请改用 route53_info

community.general

community.mysql

community.vmware

  • 此集合现在需要至少 ansible-core 2.11.0。不再支持 Ansible 3 及更早版本,以及 ansible-base 版本。

  • vmware_cluster_drs - enable 的默认值已从 false 更改为 true

  • vmware_cluster_drs - 参数别名 enable_drs 已被删除,请改用 enable

  • vmware_cluster_ha - enable 的默认值已从 false 更改为 true

  • vmware_cluster_ha - 参数别名 enable_ha 已被删除,请改用 enable

  • vmware_cluster_vsan - enable 的默认值已从 false 更改为 true

  • vmware_cluster_vsan - 参数别名 enable_vsan 已被删除,请改用 enable

  • vmware_guest - 基于虚拟化的安全 (Virtualization Based Security) 有一些要求 (nested_virtsecure_bootiommu),该模块之前会静默启用这些要求。现在必须显式启用它们。

dellemc.openmanage

  • HTTPS SSL 证书验证是一个重大变更,需要在现有的 playbook 中进行修改。请参考 SSL 证书验证 部分,位于 README.md 中,了解如何修改现有的 playbook。

theforeman.foreman

  • 将 inventory 插件的 use_reports_api 默认值设置为 true

  • 已移除对 Ansible 2.8 的支持

重大变更

  • 添加一个 ansible-community CLI 工具,用于打印 Ansible 社区发行版的版本。使用 ansible-community --version 来打印此版本。

Ansible-core

amazon.aws

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

ansible.netcommon

  • cli_parse - 此模块已移动到 ansible.utils 集合。ansible.netcommon.cli_parse 将继续工作以引用其新位置的模块,但此重定向将在未来的版本中删除

  • network_cli - 将 ssh_type 选项的默认值从 paramiko 更改为 auto。如果安装了 ansible-pylibssh 模块,则此值将使用 libssh,否则将回退到 paramiko。

arista.eos

chocolatey.chocolatey

  • win_chocolatey - 添加了 choco_args 选项,用于将其他参数直接传递给 Chocolatey。

cisco.asa

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

cisco.ios

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

  • facts - gather_subset 的默认值已更改为 min 而不是 !config。

cisco.iosxr

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

  • facts - gather_subset 的默认值已更改为 min 而不是 !config。

cisco.ise

  • 将 ciscoisesdk 要求更新到 1.2.0

  • anc_endpoint_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • anc_policy_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • backup_last_status_info - 更改返回值,它返回响应内容。

  • device_administration_authentication_rules - 删除参数 identitySourceId。

  • device_administration_authentication_rules_info - 更改返回值,它返回响应内容。

  • device_administration_authorization_rules_info - 更改返回值,它返回响应内容。

  • device_administration_conditions - 删除参数 attributeId。

  • device_administration_conditions_for_authentication_rule_info - 更改返回值,它返回响应内容。

  • device_administration_conditions_for_authorization_rule_info - 更改返回值,它返回响应内容。

  • device_administration_conditions_for_policy_set_info - 更改返回值,它返回响应内容。

  • device_administration_conditions_info - 更改返回值,它返回响应内容。

  • device_administration_dictionary_attributes_authentication_info - 更改返回值,它返回响应内容。

  • device_administration_dictionary_attributes_authorization_info - 更改返回值,它返回响应内容。

  • device_administration_dictionary_attributes_policy_set_info - 更改返回值,它返回响应内容。

  • device_administration_global_exception_rules_info - 更改返回值,它返回响应内容。

  • device_administration_network_conditions_info - 更改返回值,它返回响应内容。

  • device_administration_time_date_conditions - 删除参数 attributeId。

  • device_administration_time_date_conditions_info - 更改返回值,它返回响应内容。

  • egress_matrix_cell_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • network_access_authentication_rules - 删除参数 identitySourceId。

  • network_access_conditions - 删除参数 attributeId。

  • network_access_time_date_conditions - 删除参数 attributeId。

  • node_deployment - 更新参数。

  • node_deployment_info - 添加 filter 和 filterType 参数。

  • node_group - 修复响应收集。

  • node_group_info - 修复响应收集。

  • repository_files_info - 更改返回值,它返回响应内容。

  • repository_info - 更改返回值,它返回响应内容。

  • sg_acl_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sg_mapping_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sg_mapping_group_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sg_mapping_group_info - 更改返回值,它返回 BulkStatus 内容。

  • sg_to_vn_to_vlan_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sgt - 将 generationId 类型从 int 更改为 str。

  • sgt_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sxp_connections_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sxp_local_bindings_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • sxp_vpns_bulk_monitor_status_info - 更改返回值,它返回 BulkStatus 内容。

  • system_certificate - 新参数 portalTagTransferForSameSubject 和 roleTransferForSameSubject。

  • system_certificate - portalTagTransferForSameSubject 参数重命名为 allowPortalTagTransferForSameSubject。

  • system_certificate - roleTransferForSameSubject 参数重命名为 allowRoleTransferForSameSubject。

  • system_certificate_import - 新参数 portalTagTransferForSameSubject 和 roleTransferForSameSubject。

  • system_certificate_import - portalTagTransferForSameSubject 参数重命名为 allowPortalTagTransferForSameSubject。

  • system_certificate_import - roleTransferForSameSubject 参数重命名为 allowRoleTransferForSameSubject。

  • trustsec_nbar_app_info - 将类型从 str 更改为 list。

  • trustsec_vn_info - 将类型从 str 更改为 list。

cisco.meraki

  • meraki_mr_radio - 新模块

cisco.nxos

  • 所需的最低 ansible.netcommon 版本已提升到 v2.6.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

  • nxos_facts - 将默认的 gather_subset 从 !config 更改为 min (https://github.com/ansible-collections/cisco.nxos/issues/418)。

  • nxos_file_copy 已被重写为模块。此更改还消除了对 pexpect 进行文件拉取操作的依赖。由于现在使用 AnsibleModule 类进行 argspec 验证,因此验证消息会略有不同。在某些情况下,预计返回的负载会有变化。所有功能保持不变。

community.aws

community.general

  • community.general 集合不再支持 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.general/pull/4548)。

community.mysql

  • community.mysql 集合不再支持 Ansible 2.9ansible-base 2.10。虽然我们没有采取任何积极措施来阻止使用,并且没有计划在模块中引入不兼容的代码,但我们将停止针对 Ansible 2.9ansible-base 2.10 进行测试。两者都即将结束生命周期,如果您仍在使用它们,应尽快考虑升级到 最新 Ansible / ansible-core 2.11 更高版本 (https://github.com/ansible-collections/community.mysql/pull/343)。

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)。

community.postgresql

community.vmware

containers.podman

  • 添加 podman_tag 模块

  • 添加 secrets 驱动程序和驱动程序选项支持

dellemc.openmanage

  • 所有模块都可以从环境变量中读取自定义或组织 CA 签名的证书。请参阅 SSL 证书验证 部分,了解 README.md 中对现有剧本的修改或设置环境变量。

  • 所有模块现在都支持通过 HTTPS 和套接字级别的超时进行 SSL。

  • idrac_server_config_profile - 该模块已增强,支持使用 Redfish 导出、导入和预览 SCP 配置,并增加了对检查模式的支持。

f5networks.f5_modules

  • bigip_device_info - 还添加了分页逻辑以帮助 API 的稳定性。

  • bigip_device_info - 该模块不再从设备上的所有分区收集信息。此更改将通过仅从给定的分区收集资源来稳定模块,并防止模块收集过多可能导致崩溃的信息。

fortinet.fortios

  • 支持 FortiOS 7.0.2、7.0.3、7.0.4、7.0.5。

frr.frr

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

ibm.qradar

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

junipernetworks.junos

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

  • junos_facts - 将默认 gather_subset 从 !config 更改为 min

ovirt.ovirt

splunk.es

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

vyos.vyos

  • 在 ntp_global 中将 'pool' 作为值添加到服务器键。

  • 所需的最低 ansible.netcommon 版本为 2.5.1。

  • 更新了对 ansible.netcommon 的基本插件引用。

  • vyos_facts - 将默认 gather_subset 从 !config 更改为 min (https://github.com/ansible-collections/vyos.vyos/issues/231)。

已删除的集合

  • community.kubernetes(之前包含的版本:2.0.1)

  • community.kubevirt(之前包含的版本:1.0.0)

已删除的功能

  • community.kubernetes 集合已从 Ansible 6 中删除。它自 Ansible 4.2 起已弃用,并且自 Ansible 5 起包含的 2.0.0 版本仅是一组从 community.kubernetes 到 kubernetes.core 的弃用重定向。如果您仍然需要重定向,可以使用 ansible-galaxy collection install community.kubernetes 手动安装 community.kubernetes (https://github.com/ansible-community/community-topics/issues/93)。

  • community.kubevirt 集合已从 Ansible 6 中删除。它自 Ansible 5.0.0 起就无法与 community.kubernetes 集合一起使用,并且不幸的是,没有人设法调整该集合以使其与 kubernetes.core >= 2.0.0 一起工作。如果您需要使用此集合,则需要将 community.kubernetes < 2.0.0 与 community.kubevirt 一起手动安装,使用 ansible-galaxy collection install community.kubevirt 'community.kubernetes:<2.0.0' (https://github.com/ansible-community/community-topics/issues/92)。

Ansible-core

community.general

community.hashi_vault

community.network

community.vmware

  • vcenter_extension_facts - 已删除已弃用的模块 vcenter_extension_facts,请改用 vcenter_extension_info

  • vmware_about_facts - 已删除已弃用的模块 vmware_about_facts,请改用 vmware_about_info

  • vmware_category_facts - 已删除已弃用的模块 vmware_category_facts,请改用 vmware_category_info

  • vmware_cluster - 删除 DRS 配置,请改用模块 vmware_cluster_drs

  • vmware_cluster - 删除 HA 配置,请改用模块 vmware_cluster_ha

  • vmware_cluster - 删除 VSAN 配置,请改用模块 vmware_cluster_vsan

  • vmware_cluster_facts - 已删除已弃用的模块 vmware_cluster_facts,请改用 vmware_cluster_info

  • vmware_datastore_facts - 已删除已弃用的模块 vmware_datastore_facts,请改用 vmware_datastore_info

  • vmware_drs_group_facts - 已删除已弃用的模块 vmware_drs_group_facts,请改用 vmware_drs_group_info

  • vmware_drs_rule_facts - 已删除已弃用的模块 vmware_drs_rule_facts,请改用 vmware_drs_rule_info

  • vmware_dvs_portgroup - 已删除已弃用的参数 portgroup_type,请改用 port_binding

  • vmware_dvs_portgroup_facts - 已删除已弃用的模块 vmware_dvs_portgroup_facts,请改用 vmware_dvs_portgroup_info

  • vmware_guest_boot_facts - 已删除已弃用的模块 vmware_guest_boot_facts,请改用 vmware_guest_boot_info

  • vmware_guest_customization_facts - 已删除已弃用的模块 vmware_guest_customization_facts,请改用 vmware_guest_customization_info

  • vmware_guest_disk_facts - 已删除已弃用的模块 vmware_guest_disk_facts,请改用 vmware_guest_disk_info

  • vmware_guest_facts - 已删除已弃用的模块 vmware_guest_facts,请改用 vmware_guest_info

  • vmware_guest_snapshot_facts - 已删除已弃用的模块 vmware_guest_snapshot_facts,请改用 vmware_guest_snapshot_info

  • vmware_host_capability_facts - 已删除已弃用的模块 vmware_host_capability_facts,请改用 vmware_host_capability_info

  • vmware_host_config_facts - 已删除已弃用的模块 vmware_host_config_facts,请改用 vmware_host_config_info

  • vmware_host_dns_facts - 已删除已弃用的模块 vmware_host_dns_facts,请改用 vmware_host_dns_info

  • vmware_host_feature_facts - 已删除已弃用的模块 vmware_host_feature_facts,请改用 vmware_host_feature_info

  • vmware_host_firewall_facts - 已删除已弃用的模块 vmware_host_firewall_facts,请改用 vmware_host_firewall_info

  • vmware_host_ntp_facts - 已删除已弃用的模块 vmware_host_ntp_facts,请改用 vmware_host_ntp_info

  • vmware_host_package_facts - 已删除已弃用的模块 vmware_host_package_facts,请改用 vmware_host_package_info

  • vmware_host_service_facts - 已删除已弃用的模块 vmware_host_service_facts,请改用 vmware_host_service_info

  • vmware_host_ssl_facts - 已删除已弃用的模块 vmware_host_ssl_facts,请改用 vmware_host_ssl_info

  • vmware_host_vmhba_facts - 已删除已弃用的模块 vmware_host_vmhba_facts,请改用 vmware_host_vmhba_info

  • vmware_host_vmnic_facts - 已弃用的模块 vmware_host_vmnic_facts 已被移除,请改用 vmware_host_vmnic_info

  • vmware_local_role_facts - 已弃用的模块 vmware_local_role_facts 已被移除,请改用 vmware_local_role_info

  • vmware_local_user_facts - 已弃用的模块 vmware_local_user_facts 已被移除,请改用 vmware_local_user_info

  • vmware_portgroup_facts - 已弃用的模块 vmware_portgroup_facts 已被移除,请改用 vmware_portgroup_info

  • vmware_resource_pool_facts - 已弃用的模块 vmware_resource_pool_facts 已被移除,请改用 vmware_resource_pool_info

  • vmware_tag_facts - 已弃用的模块 vmware_tag_facts 已被移除,请改用 vmware_tag_info

  • vmware_target_canonical_facts - 已弃用的模块 vmware_target_canonical_facts 已被移除,请改用 vmware_target_canonical_info

  • vmware_vm_facts - 已弃用的模块 vmware_vm_facts 已被移除,请改用 vmware_vm_info

  • vmware_vmkernel_facts - 已弃用的模块 vmware_vmkernel_facts 已被移除,请改用 vmware_vmkernel_info

  • vmware_vmkernel_ip_config - 已弃用的模块 vmware_vmkernel_ip_config 已被移除,请改用 vmware_vmkernel

  • vmware_vswitch_facts - 已弃用的模块 vmware_vswitch_facts 已被移除,请改用 vmware_vswitch_info

已弃用的特性

  • 集合 community.sap 已被重命名为 community.sap_libs。目前,这两个集合都包含在 Ansible 中。在 Ansible 7.0.0 中,community.sap 中的内容将被替换为指向新集合的已弃用重定向,并且这些重定向最终将从 Ansible 中删除。请更新您的 community.sap 的 FQCN。

Ansible-core

  • ansible-core - 移除对 Python 2.6 的支持。

  • ansible-test - 移除对 Python 2.6 的支持。

  • ssh 连接插件选项 scp_if_ssh,请改用 ssh_transfer_method。

amazon.aws

  • ec2_instance - `instance_type` 的默认值已被弃用,在未来的版本中,您必须设置 instance_type 或 launch_template (https://github.com/ansible-collections/amazon.aws/pull/587)。

  • module_utils - 对原始 AWS SDK boto 的支持已被弃用,改为使用 boto3/botocore SDK。所有基于 boto 的模块都已被弃用或迁移到 botocore,并且 module_utils 中剩余的支持代码将在 amazon.aws 集合的 4.0.0 版本中被移除。任何基于 boto 库的 amazon.aws 和 community.aws 集合之外的模块都需要迁移到 boto3/botocore 库 (https://github.com/ansible-collections/amazon.aws/pull/575)。

cisco.ios

  • 弃用 lldp 模块。

  • ios_acls - 已弃用 fragment 属性,添加了布尔值 alternate 作为 enable_fragment。

cisco.nxos

  • 已弃用 nxos_snmp_community 模块。

  • 已弃用 nxos_snmp_contact 模块。

  • 已弃用 nxos_snmp_host 模块。

  • 已弃用 nxos_snmp_location 模块。

  • 已弃用 nxos_snmp_traps 模块。

  • 已弃用 nxos_snmp_user 模块。

community.docker

community.general

community.hashi_vault

community.network

  • 对 Ansible 2.9 和 ansible-base 2.10 的支持已弃用,并将在今年春季的下一个主要版本(community.network 4.0.0)中删除。虽然大多数内容可能仍然可以与 ansible-base 2.10 一起使用,但我们将删除模块和操作插件的符号链接,这将使其无法再与 Ansible 2.9 一起使用。请将 community.network 3.x.y 与 Ansible 2.9 和 ansible-base 2.10 一起使用,因为即使在它们生命周期结束后,这些版本也将继续支持 Ansible 2.9 和 ansible-base 2.10(https://github.com/ansible-community/community-topics/issues/50https://github.com/ansible-collections/community.network/pull/382)。

junipernetworks.junos

  • 从 junos_ospf_interfaces、junos_ospfv2 和 junos_ospfv3 资源模块中,‘router_id’ 选项已弃用。

purestorage.flasharray

  • purefa_sso - 已弃用,推荐使用 M(purefa_admin)。将在 Collection 2.0 中移除。