- Создана универсальная роль Python для установки Python 3.12 на всех ОС - Восстановлена роль Docker из git истории - Исправлены все ошибки линтера - Обновлен deploy.yml с правильным порядком ролей: devops → python → docker - Удалена устаревшая роль ping - Добавлена поддержка альтернативных репозиториев для старых ОС Автор: Сергей Антропов Сайт: https://devops.org.ru
67 lines
2.0 KiB
YAML
67 lines
2.0 KiB
YAML
---
|
||
# Пример использования роли python
|
||
# Автор: Сергей Антропов
|
||
# Сайт: https://devops.org.ru
|
||
|
||
- name: "Установка Python 3.12 на все хосты"
|
||
hosts: all
|
||
become: yes
|
||
gather_facts: yes
|
||
|
||
vars:
|
||
# Основные настройки
|
||
python_version: "3.12"
|
||
python_log_level: "INFO"
|
||
|
||
# Дополнительные пакеты
|
||
python_pip_packages:
|
||
- requests
|
||
- flask
|
||
- django
|
||
- pytest
|
||
|
||
# Создание виртуального окружения
|
||
python_create_venv: true
|
||
python_venv_path: "/opt/python-venv"
|
||
|
||
# Настройки символических ссылок
|
||
python_create_symlinks: true
|
||
python_setup_alternatives: true
|
||
|
||
# Обновление pip до последней версии
|
||
python_update_pip: true
|
||
|
||
roles:
|
||
- python
|
||
|
||
post_tasks:
|
||
- name: "Проверка установки Python"
|
||
command: "python3 --version"
|
||
register: python_version_result
|
||
changed_when: false
|
||
|
||
- name: "Проверка установки pip"
|
||
command: "pip3 --version"
|
||
register: pip_version_result
|
||
changed_when: false
|
||
|
||
- name: "Проверка виртуального окружения"
|
||
stat:
|
||
path: "{{ python_venv_path }}"
|
||
register: venv_check
|
||
|
||
- name: "📋 КРАТКИЙ ОТЧЕТ О УСТАНОВКЕ"
|
||
debug:
|
||
msg: |
|
||
|
||
🎉 УСТАНОВКА ЗАВЕРШЕНА УСПЕШНО!
|
||
|
||
📊 Результаты:
|
||
• Python: {{ python_version_result.stdout }}
|
||
• Pip: {{ pip_version_result.stdout }}
|
||
• Виртуальное окружение: {{ 'создано' if venv_check.stat.exists else 'не создано' }}
|
||
• Путь к Python: {{ python_current_executable | default('не определен') }}
|
||
• Путь к pip: {{ python_current_pip | default('не определен') }}
|
||
|
||
🚀 Python {{ python_version }} готов к использованию!
|