Ansible 6 移植指南

Ansible 6 基于 Ansible-core 2.13。

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

剧本

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

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

- name: 2.13 and forward
  debug:
    msg: '{{ [1] + [2] }}'
  • AnsibleUndefined 对象表示的未定义变量的 __repr__ 方法的返回值已更改。在 2.13 中,{{ '%r'|format(undefined_variable) }} 返回 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 - routing ospf arearouting ospf area rangerouting ospf instancerouting ospf interface-template 路径对于 ROS6 尚未完全实现,因为 ROS6 和 ROS7 之间存在重大更改(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.<name_of_module>)代替(https://github.com/ansible-collections/community.general/pull/5373)。

v6.6.0 移植指南

新增集合

  • lowlydba.sqlserver (版本 1.0.4)

已知问题

community.routeros

  • community.routeros.command 模块声称支持检查模式。由于它无法判断执行的命令是否修改状态,因此此行为不正确。由于这可能破坏现有的剧本,因此我们不会更改此行为,直到 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

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

  • 修复了由于模板 attr 在使用 Ansible 模块 nios network 删除网络时导致的问题 #147

已弃用功能

community.general

v6.4.0 移植指南

新增集合

  • inspur.ispim (版本 1.0.1)

  • vultr.cloud (版本 1.1.0)

已弃用功能

community.general

  • proxmox - 已弃用当前的 unprivileged 默认值,将在 community.general 7.0.0 中更改为 truehttps://github.com/pull/5224)。

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 - 添加了使用 UTC 格式的 expiry_time 的文档。

主要更改

community.postgresql

已弃用的功能

community.hashi_vault

v6.1.0 移植指南

新增集合

  • purestorage.fusion (版本 1.0.2)

已知问题

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 支持,模块也不允许创建多个同名的上行链路。如果使用与现有上行链路相同的名称创建上行链路,则会修改现有上行链路。

主要更改

chocolatey.chocolatey

  • win_chocolatey - 添加了 bootstrap_script 选项,允许用户将脚本 URL 作为目标,以便在客户端上安装 Chocolatey。

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

infoblox.nios_modules

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

  • 使用 old_namenew_name 对具有虚拟名称 old_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) 模块可能会出现错误,并显示消息 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_application_console_preferences - 问题(224690) - 当为参数 report_row_limit、email_sender_settings 和 metric_collection_settings 提供不受支持的值时,模块不会显示正确的错误消息,并且该值会应用于 OpenManage Enterprise。

  • 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_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_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 支持,模块也不允许创建多个同名的上行链路。如果使用与现有上行链路相同的名称创建上行链路,则会修改现有上行链路。

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_grouphttps://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_instancehttps://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 - 基于虚拟化的安全功能有一些要求(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 更改为列表。

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

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 证书验证 部分,了解对现有 playbook 的修改或环境变量的设置。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 一起使用。如果您需要使用此集合,则需要使用 ansible-galaxy collection install community.kubevirt 'community.kubernetes:<2.0.0' 手动安装 community.kubernetes < 2.0.0 和 community.kubevirt (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 一起使用。请将 Ansible 2.9 和 ansible-base 2.10 与 community.network 3.x.y 一起使用,因为即使在它们生命周期结束之后,这些版本也将继续支持 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

  • “router_id” 选项已从 junos_ospf_interfaces、junos_ospfv2 和 junos_ospfv3 资源模块中弃用。

purestorage.flasharray

  • purefa_sso - 已弃用,建议使用 M(purefa_admin)。将在集合 2.0 中删除。