community.general.fqdn_valid 测试 – 根据 RFC 1123 验证完全限定域名
注意
此测试插件是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。您需要其他要求才能使用此测试插件,请参阅 需求 以了解详情。
要在 playbook 中使用它,请指定:community.general.fqdn_valid
。
community.general 8.1.0 中的新增功能
概要
此测试验证符合互联网工程任务组规范 RFC 1123 和 RFC 952 的完全限定域名 (FQDN)。
设计意图是验证字符串是否传统上被 RFC 兼容软件接受为公共互联网主机名,这是诸如 Mozilla Firefox 和 Chromium 等现代网络浏览器中确定是否进行 DNS 查询的逻辑的严格子集。
像 Let’s Encrypt 这样的证书颁发机构运行更窄的字符串验证逻辑来确定签发的有效性。此测试并非旨在实现与 CA 签发的功能等效性。
默认情况下允许单个标签名称(
min_labels=1
)。
需求
以下需求是在执行此测试的本地控制器节点上需要的。
fqdn>=1.5.1 (PyPI)
输入
这描述了测试的输入,即 is community.general.fqdn_valid
或 is not community.general.fqdn_valid
之前的数值。
参数 |
注释 |
---|---|
主机名称。 |
关键字参数
这描述了测试的关键字参数。这些是在以下示例中的 key1=value1
、key2=value2
等值:input is community.general.fqdn_valid(key1=value1, key2=value2, ...)
和 input is not community.general.fqdn_valid(key1=value1, key2=value2, ...)
参数 |
注释 |
---|---|
允许下划线字符。 选项
|
|
标签的最小数量要求,用句点分隔。 默认值: |
示例
- name: Make sure that hostname is valid
ansible.builtin.assert:
that: hostname is community.general.fqdn_valid
- name: Make sure that hostname is at least 3 labels long (a.b.c)
ansible.builtin.assert:
that: hostname is community.general.fqdn_valid(min_labels=3)
- name: Make sure that hostname is at least 2 labels long (a.b). Allow '_'
ansible.builtin.assert:
that: hostname is community.general.fqdn_valid(min_labels=2, allow_underscores=True)
返回值
键 |
描述 |
---|---|
名称是否有效。 返回: success |