# ansible collection

# 创建collection

collections是ansible 2.8版本引入的新特性,用于组织和分发ansible roles和playbooks。

本地开发时 collection可以放在~/.ansible/collections/ansible_collections目录下,也可以放在项目目录下。

放置在项目目录下的collection可以通过ansible-galaxy collection install -p ./collections -r requirements.yml命令安装到本地。

或者 也可以通过ansible-galaxy collection install -p ./collections my_namespace.my_collection命令安装到本地。

免安装直接使用,可以放置在项目目录下的./collections/ansible_collections目录下。

ansible-galaxy collection init my_namespace.my_collection

collection的目录结构如下:

├── ansible.cfg
├── collections
│   └── ansible_collections
│       └── my_namespace
│           └── my_collection
│               ├── docs
│               ├── galaxy.yml
│               ├── plugins
│               │   ├── action
│               │   ├── callback
│               │   ├── connection
│               │   ├── filter
│               │   ├── inventory
│               │   ├── lookup
│               │   ├── module_utils
│               │   ├── modules
│               │   ├── netconf
│               │   ├── shell
│               │   ├── strategy
│               │   ├── terminal
│               │   └── vars
│               ├── README.md
│               ├── roles
│               ├── tests
│               └── tox.ini
├── docs

Last Updated: 2022/12/7 17:35:14