feat: Реорганизация проекта и восстановление ролей
- Восстановлены команды make role в Makefile - Создана папка ci-cd/ для CI/CD конфигурации - Перенесены GitLab файлы в ci-cd/ - Перенесены Dockerfile'ы в ci-cd/dockerfiles/ - Удален корневой requirements.yml - Удалена пустая папка vars/ - Создана документация ci-cd/README.md - Обновлен README.md с информацией о CI/CD Изменения: - Восстановлены команды: make role list|create|edit|test|lint|deploy|info - Создана структура ci-cd/ с GitLab CI/CD - Перенесены Dockerfile'ы для разных ОС - Добавлена документация по CI/CD - Обновлена структура проекта в README.md Новая структура: - ci-cd/ - CI/CD конфигурация - ci-cd/gitlab/ - GitLab Runner - ci-cd/dockerfiles/ - Dockerfile'ы - ci-cd/.gitlab-ci.yml - GitLab CI/CD - ci-cd/README.md - документация CI/CD Преимущества: - Организованная структура проекта - Восстановлена функциональность ролей - Готовые примеры CI/CD - Документация по настройке - Разделение ответственности Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
40
ci-cd/dockerfiles/Dockerfile
Normal file
40
ci-cd/dockerfiles/Dockerfile
Normal file
@@ -0,0 +1,40 @@
|
||||
# Используем готовый образ с Ansible
|
||||
FROM geerlingguy/docker-ubuntu2204-ansible:latest
|
||||
|
||||
# Добавляем метаданные
|
||||
LABEL maintainer="Сергей Антропов <sergey@antropoff.ru>"
|
||||
LABEL description="Этот Dockerfile создан для внедрения подхода IaC в Ansible."
|
||||
LABEL version="0.1"
|
||||
LABEL contact.website="https://devops.org.ru"
|
||||
|
||||
# Устанавливаем переменные окружения
|
||||
ENV PYTHONUNBUFFERED=1
|
||||
ENV EDITOR=nano
|
||||
|
||||
# Устанавливаем дополнительные зависимости Python для Molecule
|
||||
RUN pip install --upgrade pip && \
|
||||
pip install \
|
||||
molecule \
|
||||
molecule-docker \
|
||||
ansible-lint \
|
||||
yamllint \
|
||||
docker \
|
||||
&& rm -rf /root/.cache/pip
|
||||
|
||||
# Создаем рабочую директорию
|
||||
WORKDIR /ansible
|
||||
|
||||
# Копируем файлы проекта
|
||||
COPY . /ansible/
|
||||
|
||||
# Устанавливаем права на выполнение (если папка scripts существует)
|
||||
RUN if [ -d /ansible/scripts ]; then chmod +x /ansible/scripts/*.sh; fi
|
||||
|
||||
# Устанавливаем пользователя
|
||||
USER root
|
||||
|
||||
# Открываем порт для SSH
|
||||
EXPOSE 22
|
||||
|
||||
# Команда по умолчанию
|
||||
CMD ["/bin/bash"]
|
||||
Reference in New Issue
Block a user