feat: Создана роль deploy для управления инфраструктурой
- Создана полноценная роль deploy в roles/deploy/ - Перенесена логика развертывания из site.yml в роль - Обновлен site.yml для использования роли deploy - Добавлена поддержка условного развертывания по группам Структура роли deploy: - tasks/main.yml - основные задачи - tasks/etcd.yml - развертывание ETCD - tasks/patroni.yml - развертывание Patroni - tasks/haproxy.yml - развертывание HAProxy - tasks/apps.yml - развертывание приложений - tasks/dind-stack.yml - развертывание DinD стека - templates/haproxy.cfg.j2 - конфигурация HAProxy - templates/docker-compose.yml.j2 - конфигурация DinD стека - handlers/main.yml - обработчики сервисов - defaults/main.yml - переменные по умолчанию - vars/main.yml - переменные роли - meta/main.yml - метаданные роли - README.md - документация роли Обновления в site.yml: - Упрощен до базовой установки common tools - Добавлена роль deploy с условным развертыванием - Поддержка развертывания по группам (etcd, patroni, haproxy, apps) Новые команды: - make role info NAME=deploy - информация о роли - make role deploy - развертывание ролей с inventory Преимущества: - Модульная архитектура с разделением ответственности - Условное развертывание по группам хостов - Переиспользуемые компоненты (ETCD, Patroni, HAProxy) - Шаблоны для конфигурации сервисов - Обработчики для перезапуска сервисов - Подробная документация роли Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
		
							
								
								
									
										37
									
								
								roles/deploy/tasks/apps.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								roles/deploy/tasks/apps.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| --- | ||||
| # Задачи для развертывания приложений | ||||
| # Автор: Сергей Антропов | ||||
| # Сайт: https://devops.org.ru | ||||
|  | ||||
| - name: Apps placeholder | ||||
|   debug: | ||||
|     msg: "Apps группа готова для настройки" | ||||
|  | ||||
| - name: Install Docker dependencies | ||||
|   package: | ||||
|     name: | ||||
|       - docker.io | ||||
|       - docker-compose | ||||
|     state: present | ||||
|   when: ansible_os_family == "Debian" | ||||
|  | ||||
| - name: Start Docker service | ||||
|   systemd: | ||||
|     name: docker | ||||
|     state: started | ||||
|     enabled: true | ||||
|  | ||||
| - name: Add user to docker group | ||||
|   user: | ||||
|     name: "{{ ansible_user }}" | ||||
|     groups: docker | ||||
|     append: true | ||||
|  | ||||
| - name: Docker status | ||||
|   systemd: | ||||
|     name: docker | ||||
|   register: docker_status | ||||
|  | ||||
| - name: Display Docker status | ||||
|   debug: | ||||
|     msg: "Docker service status: {{ docker_status.status.ActiveState }}" | ||||
		Reference in New Issue
	
	Block a user