集合 Galaxy 元数据结构
Ansible 集合的一个关键组件是位于集合根目录下的 galaxy.yml
文件。此文件包含用于生成集合工件的集合元数据。
结构
galaxy.yml
文件必须包含以下键,并使用有效的 YAML 格式。
键 |
注释 |
---|---|
namespace 字符串 / 必需 |
集合的命名空间。 这可以是公司/品牌/组织或产品的命名空间,所有内容都存在于此命名空间下。 只能包含字母数字小写字符和下划线。命名空间不能以下划线或数字开头,也不能包含连续的下划线。 |
name 字符串 / 必需 |
集合的名称。 具有与 |
version 字符串 / 必需 |
集合的版本。 必须与语义版本控制兼容。 |
readme 字符串 / 必需 |
Markdown (.md) 自述文件的路径。 此路径相对于集合的根目录。 |
authors 列表 / 必需 |
集合内容作者的列表。 可以是姓名,也可以是“完整姓名 <电子邮件> (网址) @nicks:irc/im.site#频道”格式。 |
description 字符串 |
集合的简要描述。 |
license 列表 |
集合内内容的单个许可证或许可证列表。 Ansible Galaxy 目前仅接受 SPDX 许可证 此键与 |
license_file 字符串 |
集合许可证文件的路径。 此路径相对于集合的根目录。 此键与 |
tags 列表 |
您希望与集合关联的用于索引/搜索的标签列表。 标签名称与 |
dependencies 字典 |
此集合需要安装才能使用的集合。 字典的键是集合标签 值是版本范围 说明符。 可以设置多个版本范围说明符,并用 |
repository 字符串 |
源 SCM 存储库的 URL。 |
documentation 字符串 |
任何在线文档的 URL。 |
homepage 字符串 |
集合/项目的首页 URL。 |
issues 字符串 |
集合问题跟踪器的 URL。 |
build_ignore 列表
|
用于过滤构建工件中不应包含的任何文件或目录的文件 glob 类模式列表。 从集合目录的文件或目录的相对路径匹配模式。 这使用 某些目录和文件(如 与 |
manifest 哨兵
|
一个字典,用于控制在构建集合工件时使用的清单指令的使用。 键 键 与 |
示例
namespace: "namespace_name"
name: "collection_name"
version: "1.0.12"
readme: "README.md"
authors:
- "Author1"
- "Author2 (https://author2.example.com)"
- "Author3 <[email protected]>"
dependencies:
"other_namespace.collection1": ">=1.0.0"
"other_namespace.collection2": ">=2.0.0,<3.0.0"
"anderson55.my_collection": "*" # note: "*" selects the highest version available
license:
- "MIT"
tags:
- demo
- collection
repository: "https://www.github.com/my_org/my_collection"
另请参阅
- 开发集合
开发或修改集合。
- 开发模块
了解如何编写 Ansible 模块
- 使用 Ansible 集合
了解如何安装和使用集合。
- 邮件列表
开发邮件列表
- irc.libera.chat
#ansible IRC 聊天频道