Типовой проект#

Использование типовой структуры проектов Ansible позволяет упростить их создание, использование и поддержку.

Файлы и каталоги#

Структура типового проекта Ansible, для запуска которого используется Automation Cotnroller или Ansible Navigator имеет следующий вид:

project/
├── playbooks/
│   ├── playbook1.yml
│   ├── playbook2.yml
│   │   ...
│   └── playbookK.yml
├── inventory/
│   ├── inventory1.yml
│   ├── inventory2.yml
│   │   ...
│   └── inventoryL.yml
├── files/
│   ├── file1
│   ├── file2
│   │   ...
│   └── fileM
├── vars/
│   ├── vars1.yml
│   ├── vars2.yml
│   │   ...
│   └── varsN.yml
└── execution-environment.yml

Указанные файлы и каталоги используются для следующих целей:

  • playbooks/.

    Каталог с файлами playbook. Если проект содержит только один файл playbook, допускается разместить его в корневом каталоге проекта.

  • inventory/.

    Каталог с файлами инвентаря. Рекомендуемый формат файлов – YAML.

    Если инвентарь состоит из одного файла, допускается разместить его в корневом каталоге проекта. Рекомендуемое имя файла в этом случае – inventory.yml.

  • files/.

    Каталог с файлами, используемыми при сборке образа среды исполнения.

  • vars/.

    Каталог с файлами с переменными, используемыми в playbook.

    Если все переменные хранятся в одном файле, допускается разместить его в корневом каталоге проекта. Рекомендуемое имя файла в этом случае – vars.yml.

  • execution-environment.yml.

    Файл определения среды исполнения, используемой для запуска playbook. Подробности см. в инструкции по созданию собственных образов среды исполнения.