cloudscale_ch.cloud.inventory 清单 – cloudscale.ch 清单源
注意
此清单插件是 cloudscale_ch.cloud 集合(版本 2.4.0)的一部分。
如果您正在使用 ansible
包,您可能已经安装了这个集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install cloudscale_ch.cloud
。
要在 playbook 中使用它,请指定:cloudscale_ch.cloud.inventory
。
概要
从 cloudscale.ch API 获取清单主机
使用以 cloudscale.yml 或 cloudscale.yaml 结尾的 YAML 配置文件来设置参数值(另请参阅示例)。
别名:cloudscale
参数
参数 |
注释 |
---|---|
要注册为 ansible_host 的 IP 地址。如果请求的值不存在或设置为 ‘none’,则不会设置 ansible_host。 选项
|
|
cloudscale.ch API 令牌。 这也可以在 |
|
从 jinja2 表达式创建变量。 默认值: |
|
根据 Jinja2 条件将主机添加到组。 默认值: |
|
要注册为清单主机名。如果设置为 ‘uuid’,将使用服务器的 uuid,并且将为服务器名称创建一个组。如果设置为 ‘name’,将使用服务器的名称,除非有多个服务器具有相同的名称,在这种情况下将使用 ‘uuid’ 逻辑。 选项
|
|
根据变量的值将主机添加到组。 默认值: |
|
当主机变量的值为空字符串时的默认值。 此选项与 |
|
用于生成组的输入字典中的键。 |
|
键控组的父组。 |
|
键控组名称将以此前缀开头。 默认值: |
|
用于构建键控组名称的分隔符。 默认值: |
|
将此选项设置为 此选项与 选项
|
|
与 默认情况下,不提供前缀或分隔符的键控组的名称将以下划线开头。 这是因为默认前缀是 如果未提供前缀,则将此选项设置为 如果组名称来自映射,则分隔符仍用于连接各项。 要完全不在组名称中使用分隔符,请将键控组的分隔符设置为空字符串。 选项
|
|
确保这是 ‘cloudscale’ 插件的源文件的令牌。 选项
|
|
如果 由于在表达式中可以使用事实,它们可能并非总是可用,我们默认忽略这些错误。 选项
|
|
将额外变量合并到用于组合的可用变量中(优先级最高)。 选项
配置
|
示例
# cloudscale.yml name ending file in YAML format
# Example command line: ansible-inventory --list -i inventory_cloudscale.yml
plugin: cloudscale_ch.cloud.inventory
# Example grouping by tag key "project"
plugin: cloudscale_ch.cloud.inventory
keyed_groups:
- prefix: project
key: cloudscale.tags.project
# Example grouping by key "operating_system" lowercased and prefixed with "os"
plugin: cloudscale_ch.cloud.inventory
keyed_groups:
- prefix: os
key: cloudscale.image.operating_system | lower