Commit Graph

82 Commits

Author SHA1 Message Date
Сергей Антропов
3238b3903a feat: добавлен контейнер k8s-portforward для порт-форвардинга
- Создан Dockerfile для контейнера порт-форвардинга
- Скрипт portforward-container.py работает внутри контейнера
- Скрипт portforward_container.py управляет контейнером с хоста
- Контейнер автоматически пробрасывает порты через -p
- Контейнер подключается к сети Kind для доступа к кластеру
- Добавлен k8s-portforward в docker-get-base-tag
2025-10-26 09:48:05 +03:00
Сергей Антропов
ebed1f76ab feat: добавлена команда recreate для port-forward
- Добавлена функция recreate_portforwards() в scripts/portforward.py
- Команда recreate удаляет все существующие port-forward и создает их заново
- Добавлена команда в Makefile: make k8s portforward recreate
- Полезно для переподключения после перезапуска контейнера или кластера
2025-10-26 09:28:07 +03:00
Сергей Антропов
69b547dda6 feat: добавлен port-forward для кластера Kubernetes
- Создан скрипт scripts/portforward.py для управления port-forward
- Добавлены команды в Makefile:
  - make k8s portforward create - создать port-forward для всех сервисов
  - make k8s portforward list - показать активные port-forward
  - make k8s portforward clear - очистить все port-forward
  - make k8s portforward delete PORT - удалить конкретный port-forward
- Сервисы остаются с типом ClusterIP
- Port-forward автоматически создается для Prometheus, Grafana, Kiali и Metrics Server
- Порты: Prometheus 9090, Grafana 3000, Kiali 20001, Metrics Server 4443
2025-10-26 09:25:59 +03:00
Сергей Антропов
591cdaf831 refactor: переименовать контейнер Kubernetes в k8s-controller
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Все команды make k8s теперь используют единый контейнер k8s-controller
- Упрощена логика именования контейнеров
- Контейнер k8s-controller используется для всех операций с Kubernetes
2025-10-26 08:28:19 +03:00
Сергей Антропов
377e15119a refactor: запуск Python скриптов через контейнер k8s
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Команда destroy теперь запускает delete_hosts.py через контейнер k8s
- Все Python скрипты выполняются внутри Docker контейнера для единообразия
- Если контейнер не запущен, скрипты выполняются на хосте (fallback)
2025-10-26 08:26:20 +03:00
Сергей Антропов
4ed9c2e0eb feat: добавлена поддержка создания и удаления контейнеров из пресета
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Добавлено создание контейнеров из секции hosts в create_k8s_cluster.py
- Добавлено удаление контейнеров в команде make k8s destroy
- Создан скрипт scripts/delete_hosts.py для удаления контейнеров
- Контейнеры автоматически создаются в Docker сети из пресета
- Контейнеры удаляются вместе с Kind кластером при make k8s destroy
2025-10-26 08:23:43 +03:00
Сергей Антропов
714ca43d38 feat: добавить команды для работы с манифестами, Helm и Helm репозиториями
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Добавлены команды make k8s manifest для работы с манифестами YAML
- Добавлены команды make k8s helm для управления Helm чартами
- Добавлены команды make k8s helmrepo для управления Helm репозиториями
- Создана подробная документация docs/kubernetes-commands.md
- Обновлена справка в Makefile

Поддерживаемые операции:
- manifest: apply, delete, update
- helm: apply, delete, update, rollback, list, status
- helmrepo: add, list, delete, update, packages
2025-10-26 03:33:47 +03:00
Сергей Антропов
881502ad69 feat: добавить поддержку Kubernetes Kind кластеров
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Создан новый Docker образ k8s для работы с Kind, kubectl, Helm, Istio CLI
- Добавлены команды make k8s: create, destroy, stop, start, status, config, nodes, addon, shell
- Добавлена поддержка пресетов Kubernetes в molecule/presets/k8s/
- Создан скрипт create_k8s_cluster.py для автоматического создания кластеров и установки аддонов
- Добавлена документация docs/kubernetes-kind.md
- Команды kubectl выполняются внутри контейнера k8s, не требуют локальной установки
2025-10-26 03:30:58 +03:00
Сергей Антропов
3f3507e079 refactor: переименование проекта из AnsibleTemplate в AnsibleLab
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Обновлены все упоминания AnsibleTemplate на AnsibleLab
- Изменены название проекта в README.md, Makefile и документации
- Обновлены комментарии в CI/CD конфигурациях

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-26 01:02:21 +03:00
Сергей Антропов
e638f7cc94 Добавлены новые версии образов в docker-get-base-tag: centos7/8/9, ubuntu20/22/24, debian9/10/11/12 2025-10-25 23:25:20 +03:00
Сергей Антропов
098d8b672f Добавлены версионные образы ОС и обновлены конфигурации
- Переименованы: ubuntu -> ubuntu22, centos -> centos9
- Добавлены новые версии: ubuntu20, ubuntu24, centos7, centos8
- Добавлены версии Debian: debian9, debian10, debian11, debian12
- Обновлен Makefile с новыми образами
- Обновлен preset all-images.yml с новыми версиями
2025-10-25 23:22:50 +03:00
Сергей Антропов
d698f25aa7 Обновлены команды docker build и rebuild с предупреждениями о платформах
- Добавлены предупреждения в make docker build и make docker rebuild
- Обновлены справочные сообщения с указанием ограничений
- RED OS и Astra Linux автоматически собираются только для AMD64
- Остальные образы собираются для всех платформ
2025-10-25 23:07:14 +03:00
Сергей Антропов
9f6ec970a4 Автоматическая сборка RED OS и Astra Linux только для AMD64
- Добавлена проверка имени образа в docker-build-image
- RED OS и Astra Linux автоматически собираются только для linux/amd64
- Остальные образы собираются для всех платформ (AMD64 + ARM64)
- Добавлено предупреждение при сборке AMD64-only образов
2025-10-25 23:06:09 +03:00
Сергей Антропов
7924691d34 Оптимизация Dockerfile: убраны лишние пакеты и закомментированы Docker/yq
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Убраны пакеты: vim, jq, git, htop, tree из всех Dockerfile
- Закомментированы установки Docker, Docker Compose, yq
- Обновлен Rocky Linux до версии 9 с Python 3
- Исправлена проблема с passlib в ansible-controller
- Оставлены только необходимые пакеты: systemd, curl, wget, nano, python3, sudo
2025-10-25 22:31:41 +03:00
Сергей Антропов
34e0cbd570 docs: обновлена документация и help для линтинга ролей
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Обновлена основная справка make help с примерами использования
- Добавлена подробная справка по линтингу в make role
- Создана документация docs/linting-guide.md с полным руководством
- Обновлен README.md с примерами команд линтинга
- Добавлена ссылка на новую документацию в секции разработки

Новая документация включает:
- Команды линтинга (все роли и конкретные)
- Профили линтинга (production, basic, min)
- Типы ошибок и способы исправления
- Интеграция с CI/CD
- Лучшие практики и устранение неполадок
2025-10-25 20:44:51 +03:00
Сергей Антропов
b315bc6b14 feat: добавлена возможность проверки отдельной роли через make role lint
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Добавлен параметр для указания конкретной роли: make role lint [role]
- Без параметра проверяются все роли: make role lint
- Добавлена валидация существования роли с показом доступных ролей
- Обновлена справка в Makefile с примерами использования
- Исправлены ошибки линтера: trailing spaces и комментарии

Примеры использования:
- make role lint          - проверить все роли
- make role lint devops   - проверить только роль devops
- make role lint ping     - проверить только роль ping
2025-10-25 20:27:51 +03:00
Сергей Антропов
30b69ce0ec feat: добавлена роль devops и оптимизирована структура проекта
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
- Создана роль devops с функциями:
  * Создание пользователя devops
  * Генерация безопасного пароля (30 символов)
  * Настройка SSH доступа по ключу
  * Добавление в sudoers без пароля
  * Полная документация и тесты

- Оптимизирована структура проекта:
  * Удален Dockerfile из корня (сборка из dockerfiles/ansible-controller)
  * Заменены внешние образы на локальные ansible-controller
  * Обновлен Makefile для использования локальных образов
  * Зашифрован vault/secrets.yml с помощью ansible-vault

- Добавлена документация:
  * Руководство по работе с vault (docs/vault-guide.md)
  * Подробная документация роли devops
  * Примеры использования и тесты

- Улучшена безопасность:
  * Все секреты зашифрованы
  * Обновлен .gitignore для vault файлов
  * Добавлены инструкции по безопасности
2025-10-25 20:06:08 +03:00
Сергей Антропов
5093d38c06 fix: Исправление ошибок в скриптах
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled
Исправленные проблемы:
- Makefile: убран лишний 'fi' после удаления test-standart.sh
- role-manager.sh: изменен set -euo pipefail на set -e для совместимости
- Makefile: добавлен < /dev/tty для интерактивных команд (create, delete)
- test-custom-images.sh: добавлена поддержка команды 'check'

Результат:
- make role create теперь работает корректно
- make role delete теперь работает корректно
- make custom-images check теперь работает корректно
- Все остальные скрипты протестированы и работают
2025-10-25 19:41:21 +03:00
Сергей Антропов
c6dd7bc0b8 chore: Удаление неиспользуемых скриптов из папки scripts/
Удаленные скрипты:
- test-buildx-fixes.sh - не используется в проекте
- update-dockerfiles-sudo.sh - не используется в проекте
- test-standart.sh - устаревший подход, заменен на Molecule preset
- test-playbook.yml - использовался только в test-standart.sh

Обновления:
- Удалена ссылка на test-standart.sh из Makefile
- Теперь preset 'standart' использует стандартный Molecule подход

Оставшиеся скрипты (используются):
- role-manager.sh - интерактивное управление ролями
- test-custom-images.sh - тестирование с собственными образами
- update-playbooks.sh - обновление playbook'ов
- generate-role-docs.sh - генерация документации
- setup-cicd.sh - настройка CI/CD
2025-10-25 19:37:35 +03:00
Сергей Антропов
bfed0d1ea8 refactor: Переименование проекта с AnsibleTemplate на AnsibleLab
- Обновлено название проекта во всех файлах
- Изменена документация (README.md, docs/*.md)
- Обновлены конфигурационные файлы (Makefile, env.example)
- Изменены CI/CD файлы (GitHub Actions, Azure DevOps, Jenkins)
- Обновлены скрипты и Dockerfile
- Изменено название в molecule.yml и dockerfiles/README.md

Все ссылки и упоминания проекта теперь используют название AnsibleLab
2025-10-25 19:30:54 +03:00
Сергей Антропов
5c2b63848c docs: Добавлена полная документация по кастомизации deploy.yml
- Создан файл docs/deploy-yml-customization.md с полным руководством
- Добавлены примеры использования become, групп, переменных, тегов
- Показаны примеры условного выполнения и параллелизма
- Добавлены примеры обработки ошибок и безопасности
- Включены примеры использования Vault и отладки
- Добавлены лучшие практики и рекомендации
- Обновлен roles/deploy.yml с примерами кастомизации
- Добавлены ссылки на документацию в Makefile и README.md

Документация включает:
- 15 разделов с подробными примерами
- Команды запуска с различными параметрами
- Примеры продакшн развертывания
- Настройки безопасности и мониторинга
- Обработка ошибок и логирование
2025-10-25 19:21:59 +03:00
Сергей Антропов
e98bfa9c1f feat: Добавлены интерактивные команды для управления ролями
- Добавлен скрипт scripts/role-manager.sh для управления ролями
- Добавлены команды make role list, create, delete
- Автоматическое создание структуры ролей (tasks, handlers, defaults, meta, README)
- Автоматическое обновление roles/deploy.yml при создании/удалении ролей
- Интерактивный интерфейс с подтверждением удаления
- Цветной вывод с эмодзи для лучшего UX

Команды:
- make role list    - показать все роли
- make role create  - создать новую роль (интерактивно)
- make role delete  - удалить роль (интерактивно)

Скрипт создает полную структуру роли:
- tasks/main.yml - основные задачи
- defaults/main.yml - переменные по умолчанию
- handlers/main.yml - обработчики
- meta/main.yml - метаданные для Ansible Galaxy
- README.md - документация роли
2025-10-25 19:19:06 +03:00
Сергей Антропов
9ce30e0d67 feat: Добавлен пресет all-images и установка sudo во все Dockerfile
- Создан пресет all-images для тестирования всех 9 образов
- Добавлен sudo во все Dockerfile образы
- Настроены sudoers для root и пользователей
- Упрощен site.yml (убрана установка sudo)
- Добавлена документация для пресета all-images
- Обновлен Makefile с поддержкой нового пресета
- Исправлена проблема с Parsec в Astra Linux
- Улучшена система очистки контейнеров

Пресет all-images включает:
- Debian-based: Ubuntu, Debian, Alt Linux, Astra Linux
- RHEL-based: CentOS, RHEL, AlmaLinux, Rocky Linux, RedOS
- Уникальные порты 8080-8088
- Переменные окружения TEST_OS и TEST_FAMILY
2025-10-25 19:00:34 +03:00
Сергей Антропов
94560ffaaa feat: Полная переработка документации и структуры проекта
- Переписан главный README.md с подробной навигацией
- Создана структурированная документация в docs/:
  - getting-started.md - быстрый старт
  - creating-roles.md - создание ролей
  - cicd-setup.md - настройка CI/CD
  - monitoring.md - мониторинг и диагностика
  - site-yml-guide.md - руководство по site.yml
  - molecule-guide.md - подробное руководство по Molecule
- Переписан dockerfiles/README.md с детальным описанием всех образов
- Перенесен deploy.yml из корня в roles/ для лучшей организации
- Обновлен site.yml для импорта roles/deploy.yml
- Добавлены fallback значения в create.yml для надежности
- Созданы скрипты автоматизации:
  - update-playbooks.sh - обновление playbook'ов
  - generate-role-docs.sh - генерация документации
  - setup-cicd.sh - настройка CI/CD
- Добавлен env.example с примерами переменных
- Обновлен Makefile с новыми командами автоматизации
- Улучшена навигация по документации
2025-10-25 18:11:36 +03:00
Сергей Антропов
1a4e52aab2 fix: исправлен базовый образ для redos в Makefile
- Изменен базовый образ с redos/redos:9 на registry.red-soft.ru/ubi7/ubi
- Теперь соответствует Dockerfile в dockerfiles/redos/Dockerfile

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:41:14 +03:00
Сергей Антропов
c702a43f6a docs: добавлен make vault init в основную справку
- Добавлена команда vault init в раздел VAULT основной справки (help)
- Добавлен пример использования make vault init
- Исправлено выравнивание для make vault scan

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:40:17 +03:00
Сергей Антропов
14a09f723e feat: добавлена команда make vault init для создания vault/.vault
- Добавлена команда make vault init для автоматического создания файла vault/.vault
- Команда проверяет существование файла перед созданием
- Добавлена проверка существования vault/.vault в команде make vault create
- Обновлена справка с новой командой
- Пароль запрашивается интерактивно с опцией -sp (скрытый ввод)

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:39:25 +03:00
Сергей Антропов
fadca7c322 fix: исправлены Dockerfile для systemd и molecule для тестирования
- Исправлены все Dockerfile (удален USER ansible перед CMD)
  Причина: systemd должен запускаться от root (PID 1)

- Исправлены параметры в molecule/default/create.yml
  (environment → env для модуля community.docker.docker_container)

- Добавлен -u root в Makefile для запуска контейнера
- Добавлена переменная MOLECULE_EPHEMERAL_DIRECTORY

- Удалена роль nginx из deploy.yml (не существует)

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:29:41 +03:00
Сергей Антропов
547d6b0ffa fix: упрощение команды test, возврат к /var/run/docker.sock
- Убрана попытка монтировать ~/.docker/run/docker.sock
- Возврат к стандартному /var/run/docker.sock
- Убрана опция --group-add (не работает на macOS)
- Убрана опция :ro для максимальной совместимости

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:16:47 +03:00
Сергей Антропов
b8d942e426 fix: добавлен универсальный таргет для пресетов
- Добавлен универсальный таргет % для всех пресетов
- Не нужно добавлять каждый пресет вручную
- Любой пресет теперь работает автоматически
- Удобное масштабирование без изменений Makefile

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:14:14 +03:00
Сергей Антропов
8bf5272555 fix: исправление команды test для работы с пресетами
- Добавлены minimal и default в список пустых целей Makefile
- Исправлена обработка Docker socket для тестирования
- Добавлен параметр --group-add для доступа к Docker socket
- Все команды (lint, test, deploy) работают в контейнерах

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 17:10:16 +03:00
Сергей Антропов
6a8998c0ec refactor: перенос команды deploy в контейнер ansible-controller
- Команда make role deploy теперь выполняется в контейнере
- Добавлено монтирование ~/.ssh для SSH доступа
- Все команды (lint, test, deploy) работают в контейнерах
- Не требуется установка Ansible на локальную машину

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 16:57:42 +03:00
Сергей Антропов
020c4f8087 feat: добавлена роль ping для проверки сетевого подключения
- Создана новая роль ping в roles/ping/
- Роль выполняет ping yandex.ru с 5 пакетами
- Добавлены задачи: выполнение ping, вывод результатов, статистика
- Добавлена документация (README.md, QUICKSTART.md)
- Добавлен пример playbook
- Роль интегрирована в deploy.yml
- Все файлы прошли проверку ansible-lint

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 16:55:36 +03:00
Сергей Антропов
ef384475c3 feat: обновление Dockerfiles Ubuntu/Debian и добавление help для build-image
- Обновлены Dockerfiles для Ubuntu и Debian по аналогии с astra-linux
- Упрощена структура: убраны лишние компоненты (kubectl, helm, kind, ansible)
- Установка Docker из официального репозитория вместо пакетов дистрибутива
- Добавлен systemd-sysv для корректной работы systemd
- Пользователь ansible создается и используется как основной
- CMD изменен на /sbin/init для запуска systemd

- Добавлена информация о make docker build-image в help
- Обновлен общий help (make help) с кратким описанием команды
- Обновлен docker help (make docker) с подробной информацией и примерами
- Показывается список доступных образов и поддерживаемых платформ

- Исправлена установка ansible-lint в ansible-controller Dockerfile
- Команда lint теперь использует файл .ansible-lint через volume
2025-10-25 16:30:57 +03:00
Сергей Антропов
30aa6a722f Обновлен образ контроллера в Makefile
- Изменена переменная DOCKER_IMAGE на inecs/ansible-lab:ansible-controller-latest
- Обновлена команда сборки контроллера для использования нового формата тегов
- Обновлен docker-compose.yml для использования готового образа
- Обновлена справка с новым именем образа
- Добавлены ubuntu и debian в список собираемых образов
- Теперь контроллер использует единый формат тегов с остальными образами

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 16:13:39 +03:00
Сергей Антропов
24d229b026 Добавлены образы Ubuntu 22.04 и Debian для тестирования
- Созданы Dockerfile'ы для Ubuntu 22.04 и Debian:
  - dockerfiles/ubuntu/Dockerfile - Ubuntu 22.04 с systemd
  - dockerfiles/debian/Dockerfile - Debian bookworm с systemd
- Обновлен Makefile:
  - Добавлены ubuntu и debian в DOCKER_IMAGES
  - Добавлена поддержка в docker-get-base-tag
  - Обновлена справка с новыми образами
- Обновлены все пресеты для поддержки новых образов:
  - ubuntu: inecs/ansible-lab:ubuntu-latest
  - debian: inecs/ansible-lab:debian-latest
- Обновлен molecule.yml для поддержки новых образов
- Обновлен скрипт test-custom-images.sh для проверки новых образов
- Теперь поддерживается 10 собственных образов AnsibleTemplate

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:56:30 +03:00
Сергей Антропов
3b2533c8ee Добавлена поддержка собственных образов для molecule тестирования
- Созданы пресеты для тестирования с собственными образами:
  - custom-minimal.yml - минимальный тест (4 хоста)
  - custom-images.yml - полный тест (все образы)
  - custom-performance.yml - тест производительности (8 хостов)
- Обновлен molecule.yml для поддержки собственных образов
- Добавлен скрипт test-custom-images.sh для автоматизации тестирования
- Добавлены команды в Makefile:
  - make custom-images test [minimal|full|performance]
  - make custom-images check - проверка наличия образов
  - make custom-images build - сборка всех образов
- Поддержка образов: ansible-controller, alt-linux, astra-linux, redos, rhel, centos, alma, rocky

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:46:05 +03:00
Сергей Антропов
d8fa474522 Добавлена команда build-image и исправлены базовые образы
- Добавлена команда 'make docker build-image IMAGE=имя' для сборки отдельных образов
- Исправлены базовые образы в docker-get-base-tag:
  - alt-linux: alt:p9 (было altlinux/p9)
  - astra-linux: registry.astralinux.ru/library/astra/ubi17:1.7.6.uu2
  - Остальные образы соответствуют FROM в Dockerfile
- Улучшена логика извлечения тегов из базовых образов
- Добавлена валидация существования директории образа
- Команда build-image добавлена в список пустых целей

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:42:16 +03:00
Сергей Антропов
8b9310a665 Исправление синтаксических ошибок в Makefile
- Убраны маркеры конфликта слияния (<<<<<<< HEAD, =======, >>>>>>>)
- Исправлен синтаксис case statement - добавлен недостающий ;;
- Убраны дублирующиеся строки в секции справки docker
- Восстановлена правильная структура docker команд
- Команда make docker build теперь работает корректно

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:25:12 +03:00
Сергей Антропов
85327e381f Разрешение конфликта слияния в Makefile
- Оставлена улучшенная версия clean-builder с docker-reset-builder
- Сохранены все исправления buildx проблем
- Объединены изменения из удаленного репозитория

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:13:18 +03:00
Сергей Антропов
e389cad393 Исправления проблем с Docker Buildx
- Заменен buildx ls на безопасный buildx inspect
- Добавлены диагностические команды для buildx
- Создана функция docker-diagnose-buildx для отладки
- Добавлена функция docker-reset-builder для сброса
- Предварительная загрузка образа moby/buildkit:buildx-stable-1
- Полная очистка buildkit контейнеров
- Обновлена документация и справка
- Добавлен тестовый скрипт для проверки исправлений

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-25 15:13:00 +03:00
Сергей Антропов
3caa0078e1 feat: оптимизирована команда docker clean-builder
- Добавлено удаление кеша builds в команду docker clean
- Оптимизирована команда docker clean-builder с таймаутами
- Добавлена принудительная остановка контейнеров builder'а
- Убрана проблемная проверка docker buildx inspect
- Добавлены таймауты 10 сек для docker buildx rm и prune
- Обновлена справка с описанием новых возможностей
- Команда теперь работает быстро и надежно
2025-10-25 15:00:46 +03:00
Сергей Антропов
2652d8376f feat: обновлен Docker registry на inecs/ansible-lab
- Изменен DOCKER_REGISTRY с inecs/ansible на inecs/ansible-lab
- Обновлен формат тегов с registry/image:tag на registry:image-tag
- Исправлены все команды docker (build, push, pull, clean, info)
- Улучшен вывод информации о сборке образов с четким выделением
- Все образы теперь будут собираться в публичный репозиторий inecs/ansible-lab
2025-10-25 14:38:40 +03:00
Сергей Антропов
7f6d9c9268 docs: Обновлена документация с командой docker rebuild
- Добавлена команда make docker rebuild в основную справку
- Обновлены примеры использования с новой командой
- Команда rebuild выполняет полную пересборку с очисткой кеша
- Полезно при проблемах с кешем или зависимостями

Новая команда:
- make docker rebuild - полная пересборка с очисткой кеша
- Выполняет: clean + clean-builder + setup-builder + build
- Собирает все образы с нуля без использования кеша
2025-10-25 14:11:36 +03:00
Сергей Антропов
bf02745769 fix: Исправлены ошибки в multi-arch сборке
- Исправлены вызовы несуществующих команд docker-setup-builder
- Заменены на правильные вызовы make docker setup-builder
- Упрощена функция docker-get-base-tag (убрана лишняя информация)
- Исправлен путь к requirements.yml в Dockerfile ansible-controller
- Убрана лишняя информация из вывода тегов

Исправления:
- make docker build теперь правильно вызывает setup-builder
- make controller build теперь правильно вызывает setup-builder
- docker-get-base-tag выводит только тег без лишней информации
- requirements.yml копируется из правильного пути

Теперь multi-arch сборка должна работать корректно.
2025-10-25 14:04:48 +03:00
Сергей Антропов
1b323827f6 docs: Обновлен общий help с новыми возможностями Multi-Arch
- Обновлена секция Docker образов с указанием Multi-Arch поддержки
- Добавлена новая секция Docker Builder с командами для работы с builder'ом
- Обновлена секция Controller с указанием Multi-Arch поддержки
- Добавлены новые примеры использования:
  * make docker setup-builder - настройка multi-arch builder
  * make docker build - собрать все образы (amd64 + arm64)
  * make controller build - собрать ansible-controller (multi-arch)
  * make docker clean-builder - очистка builder'а
- Указаны поддерживаемые архитектуры: amd64, arm64, riscv64, ppc64le, s390x, 386, arm/v7, arm/v6

Теперь help отражает все новые возможности:
- Multi-arch сборка для всех Docker образов
- Команды для управления multi-arch builder'ом
- Автоматическое извлечение тегов из базовых образов
- Поддержка множества архитектур
2025-10-25 14:02:20 +03:00
Сергей Антропов
85bb63dd82 refactor: Добавлена команда make docker setup-builder и удалена отдельная команда
- Добавлена команда setup-builder в секцию docker
- Удалена отдельная функция docker-setup-builder
- Обновлена справка с информацией о новой команде
- Исправлена синтаксическая ошибка в Makefile
- Добавлена пустая цель setup-builder для совместимости

Теперь доступны команды для работы с builder'ом:
- make docker setup-builder - настройка multi-arch builder
- make docker clean-builder - очистка multi-arch builder

Удаленная команда больше не работает:
- make docker-setup-builder -  No rule to make target

Это делает интерфейс более последовательным и понятным.
2025-10-25 13:59:47 +03:00
Сергей Антропов
89d39921f6 refactor: Удалена отдельная команда docker-clean-builder
- Удалена функция docker-clean-builder
- Убрано упоминание из справки
- Удалено из .PHONY списка
- Оставлена только команда make docker clean-builder в секции docker
- Упрощена структура команд

Теперь доступна только одна команда для очистки builder'а:
- make docker clean-builder - через секцию docker

Это делает интерфейс более последовательным и понятным.
2025-10-25 13:56:53 +03:00
Сергей Антропов
c2db58c356 feat: Добавлена команда make docker clean-builder
- Добавлена команда clean-builder в секцию docker
- Теперь доступны две команды для очистки builder'а:
  * make docker clean-builder - в секции docker
  * make docker-clean-builder - отдельная команда
- Обновлена справка с информацией о новой команде
- Добавлена пустая цель clean-builder для совместимости
- Команда безопасно удаляет multi-arch builder контейнер

Использование:
- make docker clean-builder - очистка builder'а через секцию docker
- make docker-clean-builder - очистка builder'а как отдельная команда
- Обе команды выполняют одинаковые действия
2025-10-25 13:56:00 +03:00
Сергей Антропов
8f5a9c955c fix: Исправлена настройка buildx для работы в контейнере
- Обновлена функция docker-setup-builder для работы в контейнере
- Добавлен флаг --bootstrap для автоматического запуска builder'а
- Добавлена проверка статуса builder'а после создания
- Добавлена функция docker-clean-builder для очистки builder'а
- Обновлена справка с информацией о новых функциях
- Builder теперь работает в контейнере, а не устанавливается в систему
- Поддержка всех платформ: linux/arm64, linux/amd64, linux/amd64/v2, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6

Исправления:
- buildx теперь запускается в контейнере
- Автоматическая проверка статуса builder'а
- Возможность очистки и пересоздания builder'а
- Улучшенная диагностика проблем со сборкой
2025-10-25 13:54:40 +03:00