# 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