Добавил инициализацию make init

This commit is contained in:
2025-03-17 14:21:40 +03:00
parent dc43db99cc
commit d03d83cd3e
4 changed files with 76 additions and 54 deletions

103
Makefile
View File

@@ -24,38 +24,51 @@ endif
view create edit show delete test lint deploy new:
@true
####################################################################################################
# Инициализация новой роли
####################################################################################################
init:
@echo "Шаг 1: Создание Docker-образа..."
@make docker build
@echo "Шаг 2: Создание нового vault-файла с паролем..."
@read -p "Введите пароль для vault: " VAULT_PASSWORD; \
echo "$$VAULT_PASSWORD" > vault-password.txt; \
make vault create
@echo "Шаг 3: Создание новой роли..."
@make role new
####################################################################################################
# Управление контейнерами с помощью docker compose или docker run
####################################################################################################
# Сборка docker-образов
build:
cp ~/.ssh/id_rsa .
ifeq ($(RUN_MODE), docker-compose)
docker compose build $(c)
else
docker build -t $(REGISTRY)/ansible/$(IMAGE) .
endif
rm id_rsa
# Пересборка docker-образов
rebuild:
cp ~/.ssh/id_rsa .
ifeq ($(RUN_MODE), docker-compose)
docker compose build --no-cache $(c)
else
docker build --no-cache -t $(REGISTRY)/ansible/$(IMAGE) .
endif
rm id_rsa
# Удаление docker-контейнеров с полной очисткой неактивных контейнеров
prune:
docker system prune -af
release:
cp ~/.ssh/id_rsa .
docker login $(REGISTRY)
docker buildx build -t $(REGISTRY)/ansible/$(IMAGE):$(TAG) --platform linux/amd64,linux/arm64 --push .
rm id_rsa
docker:
@case "$(word 2, $(MAKECMDGOALS))" in \
build) \
cp ~/.ssh/id_rsa .; \
if [ "$(RUN_MODE)" = "docker-compose" ]; then \
docker compose build $(c); \
else \
docker build -t $(REGISTRY)/ansible/$(IMAGE) .; \
fi; \
rm id_rsa;; \
rebuild) \
cp ~/.ssh/id_rsa .; \
if [ "$(RUN_MODE)" = "docker-compose" ]; then \
docker compose build --no-cache $(c); \
else \
docker build --no-cache -t $(REGISTRY)/ansible/$(IMAGE) .; \
fi; \
rm id_rsa;; \
prune) \
docker system prune -af;; \
release) \
cp ~/.ssh/id_rsa .; \
docker login $(REGISTRY); \
docker buildx build -t $(REGISTRY)/ansible/$(IMAGE):$(TAG) --platform linux/amd64,linux/arm64 --push .; \
rm id_rsa;; \
*) echo "Unknown action. Available actions: build, rebuild, prune, release";; \
esac
####################################################################################################
# Работа с ролью
@@ -104,15 +117,23 @@ role:
####################################################################################################
# Работа с Git
####################################################################################################
push:
git branch
@read -p "Выберите ветку для пуша: " BRANCH; \
read -p "Введите описание коммита: " COMMIT; \
commitname=$$COMMIT; \
git add . ; \
git commit -m "$$commitname"; \
git push -u origin $$BRANCH; \
echo "Изменения внесены в Git"
pull:
git pull
git:
@case "$(word 2, $(MAKECMDGOALS))" in \
push) \
git branch; \
read -p "Выберите ветку для пуша: " BRANCH; \
read -p "Введите описание коммита: " COMMIT; \
commitname=$$COMMIT; \
git add . ; \
git commit -m "$$commitname"; \
git push -u origin $$BRANCH; \
echo "Изменения внесены в Git";; \
pull) \
git pull;; \
new) \
read -p "Введите имя новой ветки (без префикса cluster-): " BRANCH_NAME; \
NEW_BRANCH="cluster-$$BRANCH_NAME"; \
git checkout -b $$NEW_BRANCH; \
echo "Создана и переключена на новую ветку: $$NEW_BRANCH";; \
*) echo "Unknown action. Available actions: push, pull, cluster-branch";; \
esac