Ansible 2.10 移植指南
警告
在 Ansible 2.10 中,许多插件和模块已迁移到 Ansible Galaxy 上的集合。您的 Playbook 应该可以继续工作而无需任何更改。我们建议您在 Playbook 中开始使用完全限定的集合名称 (FQCN),作为要使用的集合的明确和权威的指示符,因为某些集合可能包含重复的模块名称。您可以搜索所有模块的索引以查找模块已迁移到的集合。
本节讨论 Ansible 2.9 和 Ansible 2.10 之间的行为更改。
它旨在帮助更新您的 Playbook、插件和 Ansible 基础架构的其他部分,以便它们可以与此版本的 Ansible 一起工作。
我们建议您阅读此页面以及Ansible 2.10 的变更日志,以了解您可能需要进行的更新。
自 2.10 起,Ansible 由两部分组成
ansible-base,其中包括命令行工具以及少量插件和模块,以及
一组集合。
Ansible-base 2.10 移植指南包含在此移植指南中。完整的移植指南列表可以在移植指南中找到。
Playbook
修复了布尔关键字上的一个错误,该错误导致随机字符串返回“False”,现在如果它们不是正确的布尔值,则应该返回错误。例如:
diff: yes-
返回的是False
。新的事实,
ansible_processor_nproc
反映了进程可用的 vCPU 数量(回退到调度程序可用的 vCPU 数量)。
命令行
已经删除了
ansible-galaxy login
命令,因为它用于 GitHub 身份验证的底层 API 正在被关闭。现在,通过ansible-galaxy
将角色或集合发布到 Galaxy,需要将 Galaxy API 令牌通过令牌文件(默认位置~/.ansible/galaxy_token
)或(不安全地)通过--token
参数传递到ansible-galaxy
。
已弃用
下一个 Ansible 版本将不再支持或测试 Windows Server 2008 和 2008 R2,请参阅是否支持 Server 2008、2008 R2 和 Windows 7?。
模块
警告
此页面上的链接可能不会指向最新版本的模块。我们会在力所能及的时候更新它们。
ansible-base 的 2.10.0 版本将基于文件的任务的默认模式更改为
0o600 & ~umask
,当用户没有在基于文件的任务上指定mode
参数时。这是为了响应我们重新考虑的 CVE 报告。因此,模式更改已在 2.10.1 中恢复,模式现在将默认为0o666 & ~umask
,与以前版本的 Ansible 相同。如果您在使用 2.10.0 时更改了任何任务以指定限制较少的权限,那么这些更改在 2.10.1 中将是不必要的(但不会造成任何损害)。
为了避免 CVE-2020-1736 中提出的问题,请在所有接受
mode
参数的基于文件的任务中指定mode
参数。dnf
和yum
- 从 2.10.1 版本开始,dnf
模块(以及当它使用dnf
时yum
操作)现在正确验证软件包的 GPG 签名 (CVE-2020-14365)。如果您看到诸如Failed to validate GPG signature for [软件包名称]
之类的错误,请确保您已导入您使用的 DNF 存储库和/或软件包的正确 GPG 密钥。一种方法是使用rpm_key
模块。虽然我们不鼓励这样做,但在某些情况下,可能需要禁用 GPG 检查。可以通过在dnf
或yum
任务中显式添加disable_gpg_check: yes
来实现。
值得注意的模块更改
使用
add_file_common_args=True
创建的 Ansible 模块添加了许多未记录的参数,这些参数主要用于简化某些操作插件的实现。现在不再添加未记录的参数src
、follow
、force
、content
、backup
、remote_src
、regexp
、delimiter
和directory_mode
。依赖于添加这些选项的模块需要自行指定它们。当 Ansible 模块运行时,Ansible 不再在当前工作目录(通常是
remote_user
的主目录)中查找 Python 模块。这是为了解决在 OpenBSD 上成为非特权用户的问题,并减轻如果当前工作目录可由恶意用户写入的任何攻击媒介。将运行 Ansible 模块所需的任何 Python 模块安装在受管节点上的系统范围位置或remote_user
的$PYTHONPATH
中且become_user
可读的另一个目录中。
插件
查找插件名称的大小写敏感性
在 Ansible
2.10
之前,作为参数传递给lookup()
函数的查找插件名称被视为不区分大小写,而通过with_<lookup_name>
调用的查找插件则区分大小写。2.10
使lookup()
和with_
都保持一致,两者都区分大小写。
值得注意的插件更改
集合中的缓存插件可用于缓存来自清单插件的数据。以前,集合中的缓存插件只能用于事实缓存。
已删除
FILE_COMMON_ARGUMENTS
中的一些未记录的参数;使用这些参数的插件(特别是 action 插件)需要进行调整。已删除的未记录参数为src
、follow
、force
、content
、backup
、remote_src
、regexp
、delimiter
和directory_mode
。
执行模块的 Action 插件应使用完全限定的模块名称
调用模块的 Action 插件应尽可能将显式的、完全限定的模块名称传递给
_execute_module()
(例如,ansible.builtin.file
而不是file
)。这样可以确保在解析模块时不会参考任务的集合搜索顺序。否则,可能会使用搜索路径中较早的集合中的模块,而这并非本意。
移植自定义脚本
无重大更改
v2.10.7 的移植指南
重大变更
community.general
utm_proxy_auth_profile -
frontend_cookie_secret
返回值现在包含一个占位符字符串,而不是模块的frontend_cookie_secret
参数 (https://github.com/ansible-collections/community.general/pull/1736)。
重大变更
将 community.okd 集合的版本限制为 1.0.0。之前包含的版本 1.0.1 依赖于 kubernetes.core,因此需要安装 Ansible 2.10 中未包含的额外集合。版本 1.0.0 与 1.0.1 基本相同,只是它使用了 Ansible 2.10 中包含的 community.kubernetes。
ovirt.ovirt
ovirt_system_option_info - 添加新模块 (https://github.com/oVirt/ovirt-ansible-collection/pull/206)。
servicenow.servicenow
添加新测试(查找无结果,搜索多个)
添加相关测试
添加对 ServiceNOW 表 API display_value exclude_reference_link 和 suppress_pagination_header 的支持
使用 pysnow >=0.6.0 的新 API
已弃用的功能
cisco.nxos
弃用 nxos_bgp 和 nxos_bgp_neighbor 模块,转而使用 nxos_bgp_global 资源模块。
community.vmware
vmware_host_firewall_manager - 在 2.0.0 版本之后,不允许在
allowed_hosts
字典中创建没有allowed_ip
条目的新规则。
v2.10.6 的移植指南
重大变更
community.general
对于 community.general 2.0.0,kubevirt 模块将移至 community.kubevirt 集合。将插入重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式使用此集合中的 kubevirt 模块,则需要调整您的 playbook 和角色,以使用以
community.kubevirt.
开头的 FQCN,而不是community.general.
,例如,将任务中的community.general.kubevirt_vm
替换为community.kubevirt.kubevirt_vm
。如果您使用 ansible-base 并手动安装了
community.general
并且依赖于 kubevirt 模块,则必须确保也安装community.kubevirt
集合。如果您使用 FQCN,例如community.general.kubevirt_vm
而不是kubevirt_vm
,它将继续工作,但我们仍然建议您也调整 FQCN。
community.network
对于 community.network 2.0.0,Cisco NSO 模块将移至 cisco.nso 集合。将插入重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式使用此集合中的 Cisco NSO 模块,则需要调整您的 playbook 和角色,以使用以
cisco.nso.
开头的 FQCN,而不是community.network.
,例如,将任务中的community.network.nso_config
替换为cisco.nso.nso_config
。如果您使用 ansible-base 并手动安装了
community.network
并且依赖于 Cisco NSO 模块,则必须确保也安装cisco.nso
集合。如果您使用 FQCN,例如community.network.nso_config
而不是nso_config
,它将继续工作,但我们仍然建议您也调整 FQCN。对于 community.network 2.0.0,FortiOS 模块将移至 community.fortios 集合。将插入重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式使用此集合中的 FortiOS 模块,则需要调整您的 playbook 和角色,以使用以
community.fortios.
开头的 FQCN,而不是community.network.
,例如,将任务中的community.network.fmgr_device
替换为community.fortios.fmgr_device
。如果您使用 ansible-base 并手动安装了
community.network
并且依赖于 FortiOS 模块,则必须确保也安装community.fortios
集合。如果您使用 FQCN,例如community.network.fmgr_device
而不是fmgr_device
,它将继续工作,但我们仍然建议您也调整 FQCN。
f5networks.f5_modules
向 bigip_ucs_fetch 模块添加 async_timeout 参数,以允许自定义模块等待异步接口
更改 bigip_ucs_fetch 模块,使其在生成 UCS 文件时使用异步接口
v2.10.5 的移植指南
重大变更
community.hashi_vault
hashi_vault - 现在最后检查
VAULT_ADDR
环境变量以获取url
参数。有关哪些用例受到影响的详细信息,请参阅 (https://github.com/ansible-collections/community.hashi_vault/issues/8)。
重大变更
community.general
对于 community.general 2.0.0,Google 模块将移至 community.google 集合。将插入重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式使用此集合中的 Google 模块,则需要调整您的 playbook 和角色,以使用以
community.google.
开头的 FQCN,而不是community.general.
,例如,将任务中的community.general.gcpubsub
替换为community.google.gcpubsub
。如果您使用 ansible-base 并手动安装了
community.general
并且依赖于 Google 模块,则必须确保也安装community.google
集合。如果您使用 FQCN,例如community.general.gcpubsub
而不是gcpubsub
,它将继续工作,但我们仍然建议您也调整 FQCN。对于 community.general 2.0.0,OC 连接插件将移至 community.okd 集合。将插入重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式使用此集合中的 OC 连接插件,则需要调整您的 playbook 和角色,以使用 FQCN
community.okd.oc
,而不是community.general.oc
。如果您使用 ansible-base 并手动安装了
community.general
,并且依赖于 OC 连接插件,则必须确保同时安装community.okd
集合。如果您使用 FQCN(即使用community.general.oc
而不是oc
),它将继续工作,但我们仍然建议您也调整此 FQCN。对于 community.general 2.0.0,hashi_vault 查找插件将被移动到 community.hashi_vault 集合。将会插入一个重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式地使用此集合中的 hashi_vault 查找插件,您将需要调整您的 playbook 和角色,以使用 FQCN
community.hashi_vault.hashi_vault
而不是community.general.hashi_vault
。如果您使用 ansible-base 并手动安装了
community.general
,并且依赖于 hashi_vault 查找插件,则必须确保同时安装community.hashi_vault
集合。如果您使用 FQCN(即使用community.general.hashi_vault
而不是hashi_vault
),它将继续工作,但我们仍然建议您也调整此 FQCN。
netbox.netbox
nb_inventory - 添加
dns_name
选项,当True
并且设备具有主 IP 地址时,将dns_name
添加到主机。(#394)nb_inventory - 添加
status
作为group_by
选项。(398)nb_inventory - 移动
extracted_primary_ip
的位置,允许config_context
或custom_field
覆盖。(#377)nb_inventory - 由于 NetBox 2.10 的更改,服务现在是整数列表。(#396)
nb_lookup - 允许传入 ID 并使用
.get
而不是.filter
。(#376)nb_lookup - 允许通过 env 查找
api_endpoint
和token
。(#391)
已弃用的功能
community.aws
ec2_vpc_igw_info - 在 2022-06-22 之后,
convert_tags
参数的默认值将从False
更改为True
,以匹配集合的标准行为(https://github.com/ansible-collections/community.aws/pull/318)。
community.docker
docker_container - 目前,
published_ports
可以包含端口映射以及特殊值all
,在这种情况下,端口映射将被忽略。community.docker 2.0.0 将弃用此行为,届时它将被禁止,或者此行为将以类似于 Docker CLI 工具处理方式的方式正确实现(https://github.com/ansible-collections/community.docker/issues/8,https://github.com/ansible-collections/community.docker/pull/60)。
community.hashi_vault
hashi_vault - 选项
url
的环境变量VAULT_ADDR
在 1.0.0 版本中将降低优先级;使用ANSIBLE_HASHI_VAULT_ADDR
来有意覆盖配置值(https://github.com/ansible-collections/community.hashi_vault/issues/8)。hashi_vault - 选项
auth_method
的环境变量VAULT_AUTH_METHOD
将在 2.0.0 版本中移除,请使用ANSIBLE_HASHI_VAULT_AUTH_METHOD
代替(https://github.com/ansible-collections/community.hashi_vault/issues/17)。hashi_vault - 选项
role_id
的环境变量VAULT_ROLE_ID
将在 2.0.0 版本中移除,请使用ANSIBLE_HASHI_VAULT_ROLE_ID
代替(https://github.com/ansible-collections/community.hashi_vault/issues/20)。hashi_vault - 选项
secret_id
的环境变量VAULT_SECRET_ID
将在 2.0.0 版本中移除,请使用ANSIBLE_HASHI_VAULT_SECRET_ID
代替(https://github.com/ansible-collections/community.hashi_vault/issues/20)。hashi_vault - 选项
token_file
的环境变量VAULT_TOKEN_FILE
将在 2.0.0 版本中移除,请使用ANSIBLE_HASHI_VAULT_TOKEN_FILE
代替(https://github.com/ansible-collections/community.hashi_vault/issues/15)。hashi_vault - 选项
token_path
的环境变量VAULT_TOKEN_PATH
将在 2.0.0 版本中移除,请使用ANSIBLE_HASHI_VAULT_TOKEN_PATH
代替(https://github.com/ansible-collections/community.hashi_vault/issues/15)。
v2.10.4 的移植指南
重大更改
community.hrobot
firewall - 现在需要 ipaddress 库(https://github.com/ansible-collections/community.hrobot/pull/2)。
主要更改
community.general
对于 community.general 2.0.0,Hetzner Robot 模块将被移动到 community.hrobot 集合。将会插入一个重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。
如果您使用 Ansible 2.9 并显式地使用此集合中的 Hetzner Robot 模块,您将需要调整您的 playbook 和角色,以使用以
community.hrobot.
开头的 FQCN,而不是community.general.hetzner_
,例如,将任务中的community.general.hetzner_firewall_info
替换为community.hrobot.firewall_info
。如果您使用 ansible-base 并手动安装了
community.general
,并且依赖于 Hetzner Robot 模块,则必须确保同时安装community.hrobot
集合。如果您使用 FQCN(即使用community.general.hetzner_failover_ip
而不是hetzner_failover_ip
),它将继续工作,但我们仍然建议您也调整 FQCN。对于 community.general 2.0.0,
docker
模块和插件将被移动到 community.docker 集合。将会插入一个重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。如果您使用 Ansible 2.9 并显式地使用此集合中的
docker
内容,您将需要调整您的 playbook 和角色,以使用以community.docker.
开头的 FQCN,而不是community.general.
,例如,将任务中的community.general.docker_container
替换为community.docker.docker_container
。如果您使用 ansible-base 并手动安装了
community.general
,并且依赖于docker
内容,则必须确保同时安装community.docker
集合。如果您使用 FQCN(即使用community.general.docker_container
而不是docker_container
),它将继续工作,但我们仍然建议您也调整 FQCN。对于 community.general 2.0.0,
postgresql
模块和插件将被移动到 community.postgresql 集合。将会插入一个重定向,以便使用 ansible-base 2.10 或更高版本的用户无需进行任何更改。如果您使用 Ansible 2.9 并显式地使用此集合中的
postgresql
内容,您将需要调整您的 playbook 和角色,以使用以community.postgresql.
开头的 FQCN,而不是community.general.
,例如,将任务中的community.general.postgresql_info
替换为community.postgresql.postgresql_info
。如果您使用 ansible-base 并手动安装了
community.general
,并且依赖于postgresql
内容,则必须确保同时安装community.postgresql
集合。如果您使用 FQCN(即使用community.general.postgresql_info
而不是postgresql_info
),它将继续工作,但我们仍然建议您也调整 FQCN。community.general 集合不再依赖于 ansible.posix 集合(https://github.com/ansible-collections/community.general/pull/1157)。
community.network
对于 community.network 2.0.0,
routeros
模块和插件将被移动到 community.routeros 集合中。将插入一个重定向,以便使用 ansible-base 2.10 或更新版本的用户无需进行任何更改。如果您使用 Ansible 2.9 并显式使用此集合中的
routeros
内容,则需要调整您的 playbook 和角色,以使用以community.routeros.
开头的 FQCN,而不是community.network.routeros_
,例如,将任务中的community.network.routeros_api
替换为community.routeros.api
。如果您使用 ansible-base 并手动安装了
community.network
并且依赖于routeros
内容,您必须确保也安装了community.routeros
集合。如果您使用 FQCN,即community.network.routeros_command
而不是routeros_command
,它将继续工作,但我们仍然建议您也调整 FQCN。在 community.network 2.0.0 中,
fortimanager
httpapi 插件将被删除,并替换为重定向到 fortios.fortimanager 集合中相应插件的重定向。对于 Ansible 2.10 和 ansible-base 2.10 用户,这意味着它将继续工作,前提是安装了该集合。对于 Ansible 2.9 用户,这意味着他们必须将 FQCN 从community.network.fortimanager
调整为fortios.fortimanager.fortimanager
(https://github.com/ansible-collections/community.network/pull/151)。
community.okd
添加自定义 k8s 模块,更好地集成 Molecule 测试 (https://github.com/ansible-collections/community.okd/pull/7)。
添加下游构建脚本以构建 redhat.openshift (https://github.com/ansible-collections/community.okd/pull/20)。
添加 openshift 连接插件,更新清单插件以使用它 (https://github.com/ansible-collections/community.okd/pull/18)。
添加 openshift_process 模块,用于模板渲染和可选的应用渲染资源 (https://github.com/ansible-collections/community.okd/pull/44)。
添加 openshift_route 模块,用于从服务创建路由 (https://github.com/ansible-collections/community.okd/pull/40)。
从 community.kubernetes 初始迁移内容 (https://github.com/ansible-collections/community.okd/pull/3)。
openshift_auth - 新模块(从 community.kubernetes 中的 k8s_auth 迁移)(https://github.com/ansible-collections/community.okd/pull/33)。
删除的功能
community.docker
docker_container - 不再返回
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1)。docker_container -
networks_cli_compatible
的默认值已更改为true
(https://github.com/ansible-collections/community.docker/pull/1)。docker_container - 已删除未使用的选项
trust_image_content
(https://github.com/ansible-collections/community.docker/pull/1)。docker_image -
state=build
已被删除。请改用present
(https://github.com/ansible-collections/community.docker/pull/1)。docker_image - 已删除
container_limits
、dockerfile
、http_timeout
、nocache
、rm
、path
、buildargs
、pull
。请改用build
的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_image - 已删除
force
选项。请改用更具体的force_*
选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_image -
source
选项现在是强制性的 (https://github.com/ansible-collections/community.docker/pull/1)。docker_image - 已删除
use_tls
选项。请改用tls
和validate_certs
(https://github.com/ansible-collections/community.docker/pull/1)。docker_image -
build.pull
选项的默认值已更改为false
(https://github.com/ansible-collections/community.docker/pull/1)。docker_image_facts - 此别名不再可用,请改用
docker_image_info
(https://github.com/ansible-collections/community.docker/pull/1)。docker_network - 不再返回
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1)。docker_network - 已删除
ipam_options
选项。请改用ipam_config
(https://github.com/ansible-collections/community.docker/pull/1)。docker_service - 不再返回
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm - 已删除
state=inspect
。请改用docker_swarm_info
(https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
constraints
选项。请改用placement.constraints
(https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
limit_cpu
和limit_memory
选项。请改用limits
中的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
log_driver
和log_driver_options
选项。请改用logging
中的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
reserve_cpu
和reserve_memory
选项。请改用reservations
中的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
restart_policy
、restart_policy_attempts
、restart_policy_delay
和restart_policy_window
选项。请改用restart_config
中的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_swarm_service - 已删除
update_delay
、update_parallelism
、update_failure_action
、update_monitor
、update_max_failure_ratio
和update_order
选项。请改用update_config
中的相应子选项 (https://github.com/ansible-collections/community.docker/pull/1)。docker_volume - 不再返回
ansible_facts
(https://github.com/ansible-collections/community.docker/pull/1)。docker_volume - 已删除
force
选项。请改用recreate
(https://github.com/ansible-collections/community.docker/pull/1)。
已弃用的功能
community.general
django_manage - 参数
liveserver
与一个不再维护的 django 第三方模块相关。它现在已被弃用,并将在 community.general 3.0.0 中删除 (https://github.com/ansible-collections/community.general/pull/1154)。proxmox - 新
proxmox_default_behavior
选项的默认值将在 community.general 4.0.0 中从compatibility
更改为no_defaults
。将该选项设置为显式值以避免弃用警告 (https://github.com/ansible-collections/community.general/pull/850)。proxmox_kvm - 新
proxmox_default_behavior
选项的默认值将在 community.general 4.0.0 中从compatibility
更改为no_defaults
。将该选项设置为显式值以避免弃用警告 (https://github.com/ansible-collections/community.general/pull/850)。syspatch - 弃用多余的
apply
参数 (https://github.com/ansible-collections/community.general/pull/360)。
community.network
弃用使用持久框架的网络平台的 connection=local 支持 (https://github.com/ansible-collections/community.network/pull/120)。
v2.10.2 的移植指南
重大变更
Ansible-base
ansible-galaxy login 命令已移除(请参阅 https://github.com/ansible/ansible/issues/71560)
主要变更
f5networks.f5_modules
将电话回拨 Teem 集成到所有模块中,可以通过设置 F5_TEEM 环境变量或 no_f5_teem 提供程序参数来禁用该功能
ovirt.ovirt
cluster_upgrade - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/94)。
disaster_recovery - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/134)。
engine_setup - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/69)。
hosted_engine_setup - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/106)。
image_template - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/95)。
infra - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/92)。
manageiq - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/97)。
repositories - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/96)。
shutdown_env - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/112)。
vm_infra - 迁移角色 (https://github.com/oVirt/ovirt-ansible-collection/pull/93)。
已移除的功能
f5networks.f5_modules
从 bigip_virtual_address 模块中移除了 arp_state 参数
已弃用的功能
cisco.nxos
弃用 nxos_interface_ospf,改为使用 nxos_ospf_interfaces 资源模块。
v2.10.1 的移植指南
主要变更
community.kubernetes
k8s - 添加对模板参数的支持 (https://github.com/ansible-collections/community.kubernetes/pull/230)。
k8s_* - 添加对已加密的 kubeconfig 和 src 的支持 (https://github.com/ansible-collections/community.kubernetes/pull/193)。
已弃用的功能
cisco.nxos
弃用 nxos_smu,改为使用 nxos_rpm 模块。
nxos_ospf_vrf 模块已由 nxos_ospfv2 和 nxos_ospfv3 资源模块弃用。
v2.10.0 的移植指南
已知问题
由于 pip 中的一个限制,您不能从 ansible-2.9 或更早版本
pip install --upgrade
到 ansible-2.10 或更高版本。 相反,您必须在 pip 安装新版本之前显式使用pip uninstall ansible
。 如果您尝试在不首先卸载的情况下使用 pip 升级 Ansible,则安装程序会警告您首先卸载。可以独立查看构成 ansible-2.10.0 包的各个集合。 但是,它们目前未通过 ansible-galaxy 列出。 要使用 ansible-galaxy 查看这些集合,请显式指定 ansible 安装集合的位置 –
COLLECTION_INSTALL=$(python -c 'import ansible, os.path ; print("%s/../ansible_collections" % os.path.dirname(ansible.__file__))') ansible-galaxy collection list -p "$COLLECTION_INSTALL"
。这些 fortios 模块不会自动从它们的 2.9.x 名称重定向到集合中的新 2.10.x 名称。 您必须修改您的 playbook 以使用它们的完全限定的集合名称。 您可以使用文档 (https://docs.ansible.org.cn/ansible/2.10/collections/fortinet/fortios/) 来确定
fortinet.fortios
集合的完全限定的集合名称是什么。fortios_address
fortios_config
fortios_firewall_DoS_policy
fortios_firewall_DoS_policy6
fortios_ipv4_policy
fortios_switch_controller_802_1X_settings
fortios_switch_controller_security_policy_802_1X
fortios_system_firmware_upgrade
fortios_system_nd_proxy
fortios_webfilter
community.grafana
grafana_datasource 未正确设置密码 (#113)
重大变更
cisco.nxos.nxos_igmp_interface - 不再支持已弃用的
oif_prefix
和oif_source
选项。 这些已被oif_ps
取代。community.grafana.grafana_dashboard - 参数
message
被重命名为commit_message
,因为message
在内部由 Ansible Core 引擎使用。purestorage.flashblade.purefb_fs - 不再支持已弃用的
nfs
选项。 该选项已被nfsv3
取代。
amazon.aws
aws_s3 - 现在可以删除已版本控制的存储桶,即使它们不是空的 - 将模式设置为删除以删除已版本控制的存储桶及其中的所有内容。
ansible.windows
setup - 确保
ansible_date_time.epoch
是自 UTC 时间的 EPOCH 以来的秒数,以便镜像 POSIX 事实。ansible_date_time.epoch_local
包含自本地时区 EPOCH 以来的秒数,以便向后兼容setup - 现在将在
ansible_ip_addresses
的链接本地地址上添加 IPv6 作用域setup -
ansible_processor
现在将返回索引,然后再返回其他值,以匹配 POSIX 事实行为win_find - 不再按目录大小进行过滤,此功能存在很多错误,减慢了模块速度,并且不是
find
模块支持的方案。- win_find - 模块已重构,以更好地匹配
find
模块的行为。 以下是更改的内容 当
paths
指定的目录不存在或是一个文件时,它将不再失败,而只会警告用户连接点不再报告为
islnk
,请使用isjunction
正确报告这些文件。 此行为与 win_stat 模块匹配目录不再返回
size
,这与stat
和find
行为一致,并且由于难以正确报告目录的大小而被删除
- win_find - 模块已重构,以更好地匹配
win_user - 将
description
的幂等性检查更改为区分大小写win_user - 将
fullname
的幂等性检查更改为区分大小写
cisco.meraki
meraki_device - 将标签从字符串更改为列表
meraki_device - 移除 serial_lldp_cdp 参数
meraki_device - 移除 serial_uplink 参数
meraki_intrusion_prevention - 将 whitedlisted_rules 重命名为 allowed_rules
meraki_mx_l3_firewall - 规则响应现在位于 rules 列表中
meraki_mx_l7_firewall - 将 blacklisted_countries 重命名为 blocked_countries
meraki_mx_l7_firewall - 将 whitelisted_countries 重命名为 allowed_countries
meraki_network - 无法在网络创建期间设置本地和远程状态页面设置
meraki_network - disableRemoteStatusPage 响应现在为 remote_status_page_enabled
meraki_network - disable_my_meraki_com 响应现在为 local_status_page_enabled
meraki_network - 已弃用 disable_my_meraki
meraki_network - enable_my_meraki 现在称为 local_status_page_enabled
meraki_network - enable_remote_status_page 现在称为 remote_status_page_enabled
meraki_network - VLAN 状态的 enabled 响应现在为 vlans_enabled
meraki_network - tags 和 type 现在返回列表
meraki_snmp - peer_ips 现在是一个列表
meraki_switchport - access_policy_number 现在是 int 而不是字符串
meraki_switchport - tags 现在是一个列表而不是一个字符串
meraki_webhook - 查询测试状态现在使用查询状态。
community.general
已更正 oc.py 连接插件的身份验证上下文的环境变量 (K8S_CONTEXT)。 它错误地使用了初始小写字母 k。 (https://github.com/ansible-collections/community.general/pull/377)。
bigpanda - 参数
message
已被重命名为deployment_message
,因为message
在 Ansible Core 引擎内部使用。cisco_spark - 模块选项
message
已被重命名为msg
,因为message
在 Ansible Core 引擎内部使用(https://github.com/ansible/ansible/issues/39295)datadog - 参数
message
已被重命名为notification_message
,因为message
在 Ansible Core 引擎内部使用。docker_container - 不再将非匿名卷或绑定信息作为
Volumes
传递给 Docker 守护进程。这提高了与docker
CLI 程序的兼容性。请注意,如果在comparisons
中指定volumes: strict
,这可能会导致使用 Ansible 2.9 或更早版本的 docker_container 创建的现有容器重新启动。docker_container - 对端口范围的支持进行了调整,使其与
docker
命令行实用程序更加兼容:一个单端口容器范围与一个多端口主机范围结合使用时,将不再只使用第一个主机端口,而是将整个范围传递给 Docker,以便使用该范围内的空闲端口。hashi_vault lookup - 现在在使用 KV v2 秘密引擎时返回最新版本。以前,它返回秘密的所有版本,这需要额外的步骤来提取和过滤所需的版本。
log_plays callback - 将缺失的信息添加到回调插件生成的日志中。这更改了日志消息格式(https://github.com/ansible-collections/community.general/pull/442)。
pkgng - 使用
state: absent
传递name: *
将不再从系统中删除所有已安装的软件包。现在它是一个空操作。(https://github.com/ansible-collections/community.general/pull/569)。pkgng - 使用
state: latest
或state: present
传递name: *
将不再从配置的软件包存储库安装所有软件包。相反,name: *, state: latest
将升级所有已安装的软件包,而name: *, state: present
则为空操作。(https://github.com/ansible-collections/community.general/pull/569)。
community.network
routeros_facts - 允许每个接口有多个地址和邻居。这使得
ansible_net_neighbors
成为列表而不是字典(https://github.com/ansible-collections/community.network/pull/6)。
community.vmware
vmware_datastore_maintenancemode - 现在返回
datastore_status
而不是 Ansible 内部键results
。vmware_guest_custom_attributes - 不需要 VM 名称,这是 Ansible 2.10 之前版本必需的参数。
vmware_guest_find - 已删除
datacenter
选项。vmware_host_kernel_manager - 现在返回
host_kernel_status
而不是 Ansible 内部键results
。vmware_host_ntp - 现在返回
host_ntp_status
而不是 Ansible 内部键results
。vmware_host_service_manager - 现在返回
host_service_status
而不是 Ansible 内部键results
。vmware_tag - 现在返回
tag_status
而不是 Ansible 内部键results
。vmware_vmkernel - 已删除选项
ip_address
和subnet_mask
;请改用network
选项的子选项ip_address
和subnet_mask
。
community.windows
win_pester - 由于它执行潜在的未知脚本,不再运行指定目录中的所有
*.ps1
文件。它将遵循默认行为,只运行类似*.tests.ps1
文件的测试,这是 Pester 本身内置的。
community.zabbix
zabbix_javagateway - 选项
javagateway_pidfile
、javagateway_listenip
、javagateway_listenport
和javagateway_startpollers
已重命名为zabbix_javagateway_xyz
(请参阅 UPGRADE.md)。
netbox.netbox
将 netbox 清单插件中的
ip-addresses
键更改为ip_addresses
(https://github.com/netbox-community/ansible_modules/issues/139)在
netbox_tenant.py
中将group
更改为tenant_group
(https://github.com/netbox-community/ansible_modules/issues/9)在
netbox_prefix.py
中将role
更改为prefix_role
(https://github.com/netbox-community/ansible_modules/issues/9)当未提供必需字段时,模块会失败(https://github.com/netbox-community/ansible_modules/issues/24)
将
netbox_interface
重命名为netbox_device_interface
(https://github.com/netbox-community/ansible_modules/issues/9)由于新的命名空间和集合名称,此版本有一些重大更改。我认为有必要更改查找插件和清单插件的名称,只是为了不使用非描述性的命名空间调用它们。以下是一个示例:
netbox.netbox.netbox
将用于清单插件和查找插件,但在不同的上下文中,因此不会出现冲突,但会引起混淆。我将查找插件重命名为nb_lookup
,以便与 FQCNnetbox.netbox.nb_lookup
一起使用。现在,清单插件将在清单文件中通过netbox.netbox.nb_inventory
调用。现在通过使其成为带有
id
键的字典,来传递通过 Ansible Jinja 过滤器传递的整数,该过滤器用于data
中需要查询端点的键。之前的行为是只传递一个整数,并且在规范化数据时会进行转换,但是有些人可能有都是整数的名称,并且这些名称被错误地转换了,所以我们决定更改方法,以便为 NetBox API 转换为整数。tasks: - name: Create device within NetBox with only required information netbox_device: netbox_url: http://netbox-demo.org:32768 netbox_token: 0123456789abcdef0123456789abcdef01234567 data: name: Test66 device_type: id: "{{ some_jinja_variable }}" device_role: Core Switch site: Test Site status: Staged state: present
pynetbox
更改为使用requests.Session()
来管理 HTTP 会话,这破坏了在构建 NetBox API 客户端时传递ssl_verify
。此 PR 使pynetbox 5.0.4+
成为 Ansible 模块和查找插件所需的新 pynetbox 版本。(https://github.com/netbox-community/ansible_modules/pull/269)
theforeman.foreman
所有模块都已重命名,以删除
foreman_
和katello_
前缀。除了删除前缀外,以下模块还进一步重命名katello_upload 为 content_upload
katello_sync 为 repository_sync
katello_manifest 为 subscription_manifest
foreman_search_facts 为 resource_info
foreman_ptable 为 partition_table
foreman_model 为 hardware_model
foreman_environment 为 puppet_environment
重大更改
Ansible-base
对于返回文档无法解析为 YAML 的模块和插件,ansible-doc 和 ansible-console 的 help 命令都会报错。所有通过
ansible-test sanity --test yamllint
测试的模块和插件都不会受此影响。集合可以声明该集合支持/测试过的 Ansible 版本列表。如果集合不支持加载它的 Ansible 版本,则会发出警告(也可以配置为静默或致命错误)。未声明支持的 Ansible 版本的集合不会发出警告/错误。
插件路由允许集合声明所有插件类型的弃用、重定向目标和移除。
导入 module_utils 和其他已移至集合的 ansible 命名空间的插件应继续按原样工作。
Ansible 2.10 中内置的路由数据确保了 2.9 的内容在 2.10 上应按原样工作。以前包含的、已移至集合的模块和插件仍然可以通过其原始的非限定名称访问,只要它们的目标集合已安装即可。
当在代码中进行弃用时,它们需要指定一个
collection_name
,以便弃用警告可以提及哪个集合(或 ansible-base)正在弃用某个功能。这会影响所有Display.deprecated()
或AnsibleModule.deprecate()
或Ansible.Basic.Deprecate()
调用,以及模块参数规范中的removed_in_version
/removed_at_date
或deprecated_aliases
。ansible-test 现在为 Ansible 集合使用不同的
default
测试容器。
amazon.aws
ec2 module_utils -
AWSRetry
装饰器默认不再捕获NotFound
异常。NotFound
异常需要使用catch_extra_error_codes
显式添加。由于 AWS 的最终一致性模型,一些 AWS 模块可能会出现更多瞬时故障。
ansible.netcommon
添加 libssh 连接插件并重构 network_cli (https://github.com/ansible-collections/ansible.netcommon/pull/30)
ansible.posix
cisco.meraki
重写版本 1.0 API 的请求方法,并提高了可读性
meraki_mr_rf_profile - 配置无线 RF 配置文件。
meraki_mr_settings - 配置无线的网络设置。
meraki_ms_l3_interface - 新模块
meraki_ms_ospf - 配置 OSPF。
community.general
docker_container - 如果至少给出一个网络并且
networks_cli_compatible
为true
,则network_mode
选项将默认设置为networks
中第一个网络的名称(将从 community.general 2.0.0 开始默认)。如果您指定网络并将networks_cli_compatible
设置为true
,请设置为显式值以避免弃用警告。当前的默认值(不指定它)等效于值default
。docker_container - 该模块有一个新选项
container_default_behavior
,其默认值将从compatibility
更改为no_defaults
。设置为显式值以避免弃用警告。gitlab_user - 当
state=absent
时,不再需要name
、email
和password
参数。
community.grafana
为 ansible 2.10 添加变更日志管理 (#112)
grafana_datasource ; 添加 additional_json_data 参数
community.kubernetes
添加变更日志和片段并记录变更日志过程 (https://github.com/ansible-collections/community.kubernetes/pull/131)。
helm - 用于管理 Helm chart 的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/61)。
helm_info - 用于检索 Helm chart 信息的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/61)。
helm_plugin - 用于管理 Helm 插件的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/154)。
helm_plugin_info - 用于收集有关 Helm 插件信息的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/154)。
helm_repository - 用于管理 Helm 存储库的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/61)。
k8s - 清单源从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s - Lookup 插件从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s - 模块从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s_auth - 模块从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s_config_resource_name - Filter 插件从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s_exec - 用于通过 Kubernetes API 在 pod 上执行命令的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/14)。
k8s_exec - 返回执行的命令的 rc (https://github.com/ansible-collections/community.kubernetes/pull/158)。
k8s_info - 模块从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s_log - 用于检索 pod 日志的新模块 (https://github.com/ansible-collections/community.kubernetes/pull/16)。
k8s_scale - 模块从 Ansible 2.9 迁移到 Kubernetes 集合。
k8s_service - 模块从 Ansible 2.9 迁移到 Kubernetes 集合。
kubectl - 连接插件从 Ansible 2.9 迁移到 Kubernetes 集合。
openshift - 清单源从 Ansible 2.9 迁移到 Kubernetes 集合。
community.libvirt
添加了通用的 libvirt 清单插件
移除了 libvirt_lxc 清单脚本
dellemc.os10
新角色 os10_aaa - 方便配置身份验证、授权和记帐 (AAA),TACACS 和 RADIUS 服务器。
新角色 os10_acl - 方便配置访问控制列表。
新角色 os10_bfd - 方便配置 BFD 全局属性。
新角色 os10_bgp - 方便配置边界网关协议 (BGP) 属性。
新角色 os10_copy_config - 此角色将备份的运行配置推送到 OS10 设备中。
新角色 os10_dns - 方便配置域名服务 (DNS)。
新角色 os10_ecmp - 方便配置 IPv4 的等价多路径 (ECMP)。
新角色 os10_fabric_summary 方便获取 fabric 中所有 OS10 交换机的显示系统信息。
新角色 os10_flow_monitor 方便配置基于 ACL 流的监控属性。
新角色 os10_image_upgrade 方便安装 OS10 软件镜像。
新角色 os10_interface 方便配置接口属性。
新角色 os10_lag 方便配置链路聚合组 (LAG) 属性。
新角色 os10_lldp 方便配置全局和接口级别的链路层发现协议 (LLDP) 属性。
新角色 os10_logging 方便配置全局日志属性和日志服务器。
新角色 os10_network_validation 方便验证布线连接、BGP 邻居、邻居之间的 MTU 以及 VLT 对。
新角色 os10_ntp 方便配置网络时间协议 (NTP) 属性。
新角色 os10_prefix_list 方便配置 IP 前缀列表。
新角色 os10_qos 方便配置服务质量属性,包括 policy-map 和 class-map。
新角色 os10_raguard 方便配置 IPv6 RA Guard 属性。
新角色 os10_route_map 方便配置 route-map 属性。
新角色 os10_snmp 方便配置全局 SNMP 属性。
新角色 os10_system 方便配置主机名和哈希算法。
新角色 os10_template 该角色从 OS10 设备的 CLI 中获取原始字符串输入,并以 Python 字典的形式返回结构化文本。
新角色 os10_uplink 方便配置上行链路属性,例如上行链路状态组。
新角色 os10_users 方便配置全局系统用户属性。
新角色 os10_vlan 方便配置虚拟 LAN (VLAN) 属性。
新角色 os10_vlt 方便配置虚拟链路中继 (VLT)。
新角色 os10_vrf 方便配置虚拟路由和转发 (VRF)。
新角色 os10_vrrp 方便配置虚拟路由器冗余协议 (VRRP) 属性。
新角色 os10_vxlan 方便配置虚拟可扩展 LAN (VXLAN) 属性。
新角色 os10_xstp 方便配置 xSTP 属性。
f5networks.f5_modules
分解了 bigip_device_auth_radius,以在 bigip_device_auth_server 模块中实现 radius 服务器配置。有关用法详细信息,请参阅模块文档
删除 f5_provider 中冗余的参数,以修复文档和模块参数之间的差异
gluster.gluster
geo_rep - 添加了与其他 Gluster 模块独立的地理复制模块 (https://github.com/gluster/gluster-ansible-collection/pull/2)。
ovirt.ovirt
ovirt_disk - 添加备份功能 (https://github.com/oVirt/ovirt-ansible-collection/pull/57)。
ovirt_disk - 支持直接上传/下载 (https://github.com/oVirt/ovirt-ansible-collection/pull/35)。
ovirt_host - 添加 ssh_port (https://github.com/oVirt/ovirt-ansible-collection/pull/60)。
ovirt_vm_os_info - 创建模块 (https://github.com/oVirt/ovirt-ansible-collection/pull/26)。
purestorage.flasharray
purefa_console - 管理 FlashArray 的控制台锁定设置
purefa_endpoint - 管理 FlashArray 上的 VMware 协议端点
purefa_eula - 签署或重新签署 FlashArray EULA
purefa_inventory - 从 FlashArray 获取硬件清单信息
purefa_network - 管理 FlashArray 上的物理和虚拟网络设置
purefa_pgsched - 管理 FlashArray 上的保护组快照和复制计划
purefa_pod - 管理 FlashArray 中的 ActiveCluster pod
purefa_pod_replica - 管理 FlashArray 中的 ActiveDR pod 副本链接
purefa_proxy - 管理 FlashArray 的 phonehome HTTPS 代理设置
purefa_smis - 管理 FlashArray 上的 SMI-S 设置
purefa_subnet - 管理 FlashArray 上的网络子网
purefa_timeout - 管理 FlashArray 上的 GUI 空闲超时
purefa_vlan - 管理 FlashArray 上的 VLAN 接口
purefa_vnc - 管理 FlashArray 上安装的应用程序的 VNC
purefa_volume_tags - 管理 FlashArray 上的卷标签
purestorage.flashblade
purefb_alert - 管理 FlashBlade 上的警报电子邮件设置
purefb_bladename - 管理 FlashBlade 名称
purefb_bucket_replica - 管理 FlashBlade 上的存储桶副本链接
purefb_connect - 管理 FlashBlade 之间的连接
purefb_dns - 管理 FlashBlade 上的 DNS 设置
purefb_fs_replica - 管理 FlashBlade 上的文件系统副本链接
purefb_inventory - 获取有关 FlashBlade 硬件清单的信息
purefb_ntp - 管理 FlashBlade 的 NTP 设置
purefb_phonehome - 管理 FlashBlade 的 phone home 设置
purefb_policy - 管理 FlashBlade 的文件系统快照策略
purefb_proxy - 管理 FlashBlade 的 phone home HTTP 代理设置
purefb_remote_cred - 管理 FlashBlade 上的对象存储远程凭据
purefb_snmp_agent - 修改 FlashBlade SNMP 代理
purefb_snmp_mgr - 管理 FlashBlade 上的 SNMP 管理器
purefb_target - 管理 FlashBlade 的远程 S3 兼容目标
purefb_user - 管理 FlashBlade 上的本地
pureuser
帐户密码
已删除的功能
Ansible-base
core - 移除
AnsibleModule
、AzureModule
和UTMModule
中对check_invalid_arguments
的支持。
ansible.netcommon
已移除 module_utils.network.common.utils.ComplexDict
ansible.windows
win_stat - 移除已弃用的
get_md55
选项和md5
返回值。
community.crypto
已移除
letsencrypt
模块。请改用acme_certificate
。
community.general
conjur_variable lookup - 已移至
cyberark.conjur
集合。重定向处于活动状态,将在 2.0.0 版本中移除 (https://github.com/ansible-collections/community.general/pull/570)。core - 移除
UTMModule
中对check_invalid_arguments
的支持。digital_ocean_* - 所有 DigitalOcean 模块已移至
community.digitalocean
集合。重定向处于活动状态,将在 2.0.0 版本中移除 (https://github.com/ansible-collections/community.general/pull/622)。infini_* - 所有 infinidat 模块已移至
infinidat.infinibox
集合。重定向处于活动状态,将在 2.0.0 版本中移除 (https://github.com/ansible-collections/community.general/pull/607)。logicmonitor - 该模块已在 1.0.0 版本中移除,因为它无人维护,并且该模块使用的 API 已在 2017 年关闭 (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541)。
logicmonitor_facts - 该模块已在 1.0.0 版本中移除,因为它无人维护,并且该模块使用的 API 已在 2017 年关闭 (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541)。
mysql_* - 所有 MySQL 模块已移至
community.mysql
集合。重定向处于活动状态,将在 2.0.0 版本中移除 (https://github.com/ansible-collections/community.general/pull/633)。pacman - 移除已弃用的
recurse
选项,请改用extra_args=--recursive
proxysql_* - 所有 ProxySQL 模块已移至
community.proxysql
集合。重定向处于活动状态,将在 2.0.0 版本中移除 (https://github.com/ansible-collections/community.general/pull/624)。
community.network
onyx - 所有 onyx 模块和插件已移至 mellanox.onyx 集合。已添加重定向,这些重定向将在 community.network 2.0.0 中移除 (https://github.com/ansible-collections/community.network/pull/83)。
community.vmware
vmware_guest_find - 移除已弃用的
datacenter
选项vmware_portgroup - 移除已弃用的 ‘inbound_policy’ 和 ‘rolling_order’ 选项。
vmware_vmkernel - 移除已弃用的
ip_address
选项;请改用网络选项中的子选项 ip_addressvmware_vmkernel - 移除已弃用的
subnet_mask
选项;请改用网络选项中的子选项 subnet_mask
community.windows
win_disk_image - 移除已弃用的返回值
mount_path
,请改用mount_paths
。win_psexec - 移除已弃用的
extra_opts
选项。
f5networks.f5_modules
移除 _bigip_iapplx_package 别名
移除 _bigip_security_address_list 别名
移除 _bigip_security_port_list 别名
移除 _bigip_traffic_group 别名
移除 bigip_appsvcs_extension 模块
移除 bigip_asm_policy 模块
已弃用的功能
vyos.vyos.vyos_static_route 模块已弃用,将在以后的版本中移除;请改用 vyos.vyos.vyos_static_routes。
Ansible-base
使用 DefaultCallback 而不使用相应的 doc_fragment 或复制文档。
hash_behaviour - 弃用
hash_behaviour
以便将来移除。script inventory plugin - 'cache' 选项已弃用,将在 2.12 中移除。其使用已从插件中移除,因为它从未生效。
amazon.aws
所有 AWS 模块 - 在 2022-06-01 之后,
aws_access_key
、aws_secret_key
和security_token
将与profile
互斥。cloudformation -
template_format
选项自 Ansible 2.3 以来不起作用,将在 2022-06-01 之后移除cloudformation -
template_format
选项已弃用,将在以后的版本中移除。自 Ansible 2.3 以来,该模块已忽略它。data_pipeline -
version
选项不起作用,将在 2022-06-01 之后移除ec2 - 在以后的版本中,
group
和group_id
选项将变得互斥。目前,如果您同时传递两者,则会忽略group_id
。ec2_ami -
no_device
别名NoDevice
已弃用,将在 2022-06-01 之后移除ec2_ami -
virtual_name
别名VirtualName
已弃用,将在 2022-06-01 之后移除ec2_eip -
wait_timeout
选项不起作用,将在 2022-06-01 之后移除ec2_key -
wait_timeout
选项不起作用,将在 2022-06-01 之后移除ec2_key -
wait
选项不起作用,将在 2022-06-01 之后移除ec2_key -
wait_timeout
选项已弃用,将在以后的版本中移除。自 Ansible 2.5 以来,它不起作用。ec2_key -
wait
选项已弃用,将在以后的版本中移除。自 Ansible 2.5 以来,它不起作用。ec2_lc -
associate_public_ip_address
选项不起作用,将在 2022-06-01 之后移除ec2_tag - 弃用
list
选项,请改用 ec2_tag_infoec2_tag - 对
list
作为状态的支持已弃用,将在以后的版本中移除。可以使用ec2_tag_info
来获取 EC2 资源上的标签。
ansible.windows
win_domain_computer - 已弃用未记录的
log_path
选项。此选项将在2022-07-01
之后的重大版本中移除。win_domain_controller -
log_path
选项已被弃用,并将在以后的版本中删除。此选项未被记录,仅与模块开发的调试信息相关。win_package -
ensure
选项作为state
选项的别名已被弃用,并将在以后的版本中删除。请使用state
而不是ensure
。win_package -
productid
选项作为product_id
选项的别名已被弃用,并将在以后的版本中删除。请使用product_id
而不是productid
。win_package -
username
和password
选项已被弃用,并将在以后的版本中删除。可以通过在任务中使用become: yes
和become_flags: logon_type=new_credentials logon_flags=netcredentials_only
来实现相同的功能。win_regedit - 已弃用使用正斜杠作为路径分隔符,请使用反斜杠以避免键名中的正斜杠或作为路径分隔符的正斜杠之间的歧义。此功能将在
2021-07-01
之后的重大版本中删除。
community.aws
cloudformation -
template_format
选项自 Ansible 2.3 以来不起作用,将在 2022-06-01 之后移除data_pipeline -
version
选项不起作用,将在 2022-06-01 之后删除data_pipeline -
version
选项已被弃用,并将在以后的版本中删除。该选项始终被模块忽略。ec2_eip -
wait_timeout
选项不起作用,将在 2022-06-01 之后移除ec2_eip -
wait_timeout
选项已被弃用,并将在以后的版本中删除。自 Ansible 2.3 以来,它一直不起作用。ec2_key -
wait_timeout
选项不起作用,将在 2022-06-01 之后移除ec2_key -
wait
选项不起作用,将在 2022-06-01 之后移除ec2_lc -
associate_public_ip_address
选项不起作用,将在 2022-06-01 之后移除ec2_lc -
associate_public_ip_address
选项已被弃用,并将在以后的版本中删除。该选项始终被模块忽略。elb_network_lb -
state
选项的当前默认值已被弃用,并将在 2022-06-01 之后从 absent 更改为 presentelb_network_lb - 在以后的版本中,
state
选项的默认行为将从absent
更改为present
。要保持现有行为,请显式地将 state 设置为absent
。iam_managed_policy -
fail_on_delete
选项不起作用,将在 2022-06-01 之后删除iam_managed_policy -
fail_on_delete
选项已被弃用,并将在以后的版本中删除。该选项始终被模块忽略。iam_policy -
policy_document
将在 2022-06-01 之后删除。要保持现有行为,请使用policy_json
选项并通过lookup
插件读取文件。iam_policy -
skip_duplicates
的默认值将在 2022-06-01 之后从true
更改为false
。iam_policy - 在以后的版本中,
skip_duplicates
选项的默认值将从true
更改为false
。要保持现有行为,请显式地将其设置为true
。iam_policy -
policy_document
选项已被弃用,并将在以后的版本中删除。要保持现有行为,请使用policy_json
选项并通过lookup
插件读取文件。iam_role - purge_policies 的默认值已被弃用,并将在 2022-06-01 之后从 true 更改为 false
iam_role - 在以后的版本中,
purge_policies
选项(也称为purge_policy
)的默认值将从true
更改为false
s3_lifecycle -
requester_pays
选项不起作用,将在 2022-06-01 之后删除s3_lifecycle -
requester_pays
选项已被弃用,并将在以后的版本中删除。该选项始终被模块忽略。s3_sync -
retries
选项不起作用,将在 2022-06-01 之后删除s3_sync -
retries
选项已被弃用,并将在 2022-06-01 之后删除。该选项始终被模块忽略。
community.crypto
openssl_csr -
version
选项的所有值(1
除外)都已弃用。值 1 表示当前唯一标准化的 CSR 版本。
community.general
ldap_attr 模块已被弃用,并将在以后的版本中删除;请改用 ldap_attrs。
airbrake_deployment - 为
token
参数和 v2 api 部署添加弃用通知。此功能将在 community.general 3.0.0 中删除。clc_aa_policy -
wait
选项不起作用,将在 community.general 3.0.0 中删除。clc_aa_policy -
wait
参数将被删除。该参数始终被模块忽略。docker_container -
trust_image_content
选项现已弃用,并将在 community.general 3.0.0 中删除。该选项从未被模块使用。docker_container -
trust_image_content
选项将被删除。该选项始终被模块忽略。docker_container -
container_default_behavior
的默认值将在 community.general 3.0.0 中从compatibility
更改为no_defaults
。将该选项设置为显式值以避免弃用警告。docker_container - 如果指定了至少一个网络且
networks_cli_compatible
为true
,则network_mode
的默认值将在 community.general 3.0.0 中更改。有关更多详细信息,请参阅移植指南、模块文档或弃用警告。docker_stack - 返回值
out
和err
已被弃用,并将在 community.general 3.0.0 中删除。请改用stdout
和stderr
。docker_stack - 返回值
err
和out
已被弃用。请从现在开始改用stdout
和stderr
。helm - 将
helm
模块标记为已弃用。新的实现可在 community.kubernetes 集合中使用。redfish_config - 弃用
bios_attribute_name
和bios_attribute_value
,转而使用新的 bios_attributes 选项。redfish_config -
bios_attribute_name
和bios_attribute_value
选项将被删除。要保持现有行为,请改用bios_attributes
选项。redfish_config 和 redfish_command - 当存在多个要修改的 System、Manager 或 Chassis 资源时,选择第一个资源进行修改的行为将被删除。请使用新的
resource_id
选项来指定要修改的目标资源。redfish_config, redfish_command - 修改第一个 System、Manager 或 Chassis 资源(当存在多个资源时)的行为已被弃用。请使用新的
resource_id
选项来指定要修改的目标资源。xbps -
force
选项从未起过任何作用。它现在已被弃用,并将在 3.0.0 中删除(https://github.com/ansible-collections/community.general/pull/568)。
community.vmware
vmware_dns_config 模块已被弃用,并将在以后的版本中删除;请改用 vmware_host_dns。
vca - vca_fw、vca_nat、vca_app 已被弃用,因为这些模块依赖于 Pyvcloud 库中已弃用的部分。
vmware_dns_config - 弃用,转而使用新模块 vmware_host_dns。
vmware_guest - 弃用将 CDROM 配置指定为字典的方式,请改用列表。
vmware_tag_info - 在以后的版本中,该模块将不再返回
tag_facts
,因为它不返回具有相同名称和不同类别 ID 的多个标签。要保持现有行为,请使用tag_info
,它是一个标签元数据列表。
community.zabbix
zabbix_proxy (模块) - 当代理类型通过
status=passive
设置为被动时,弃用interface
子选项type
和main
。请确保从您的 playbook 中删除这些子选项,因为 Zabbix 从未支持过它们。
f5networks.f5_modules
已弃用 bigip_appsvcs_extension 模块
已弃用 bigip_device_facts 模块名称
已弃用 bigiq_device_facts 模块名称