Добавил создание ролей make role new

This commit is contained in:
2025-03-13 19:02:34 +03:00
parent b6286aa9b7
commit 2cb442bd73
17 changed files with 87 additions and 35 deletions

View File

@@ -1,2 +1,46 @@
# AnsibleTemplate
Темплейт для создания, проверки и тестирование ролей Ansible с помощью контейнеров Docker.
### С чего начать?
На вашей машине вам необходимо сбилдить образ, где будут запускаться все роли через docker-compose.
- **make build** - создание контейнера
- **make rebuild** - пересоздание контейнера, если были внесены изменения в Dockerfile
- **make prune** - очистить систему от лишних образов
### Работа с ролью
- **make role new** - создать новую роль из шаблона. Название роли пишется на английском, описание роли на любом языке
- **make role lint** - проверяет все роли в папке roles/* на наличие ошибок
- **make role test** - позволяет тестировать роль, указанную в molecule/default/converge.yml
сразу на двух контейнерах (RedHat и Ubuntu)
- **make role deploy** - запускает роль в продакшен. Все хосты берет из файла inventory/hosts
### Работа с файлом переменных
Все переменные защищены через **Ansible-Vault** и находятся в папке vars/secrets.yml
Для смены пароля измените его в файле **./vault-password.txt**
- **make vault create** - создать новый файл с учетом пароля в файле **./vault-password.txt**
- **make vault delete** - удалить файл с переменными
- **make vault edit** - отредактировать файл переменных
- **make vault show** - показать содержимое файла переменных
### Работа с Git
- **make push** - запушить изменения. С выбором ветки и вводом коммита.
- **make pull** - получить изменения из репы
### Добавить свой образ контейнера для тестов
Что бы добавить или изменить докер-образы для тестирования ролей измените файл настроек молекулы
molecule/default/molecule.yml
```yaml
- name: ubuntu-instance
image: "geerlingguy/docker-ubuntu2004-ansible:latest"
privileged: true
pre_build_image: true
```
помните, что образ обязательно должен содержать python не ниже версии 3.12