2.7 KiB
2.7 KiB
Makefile
# --- Gitea & Runner Management ---
# Định nghĩa các target không phải là file
.PHONY: gitea-up gitea-down gitea-force-up gitea-force-down \
gitea-runner-up gitea-runner-down gitea-runner-force-up gitea-runner-force-down
# Đường dẫn đến file docker-compose.yaml
GITEA_COMPOSE_FILE := ./docker-compose.yaml
# --- Gitea Management ---
gitea-up: ## Khởi động toàn bộ dịch vụ Gitea (DB, server và runner)
@echo ">>> Khởi động dịch vụ Gitea..."
docker-compose -f $(GITEA_COMPOSE_FILE) up -d
@echo ">>> Đã khởi động dịch vụ Gitea."
gitea-down: ## Dừng toàn bộ dịch vụ Gitea (DB, server và runner)
@echo ">>> Dừng dịch vụ Gitea..."
docker-compose -f $(GITEA_COMPOSE_FILE) down
@echo ">>> Đã dừng dịch vụ Gitea."
gitea-force-up: ## Khởi động lại và buộc xây dựng lại các dịch vụ Gitea
@echo ">>> Force khởi động lại dịch vụ Gitea..."
docker-compose -f $(GITEA_COMPOSE_FILE) up -d --force-recreate --build
@echo ">>> Đã force khởi động lại dịch vụ Gitea."
gitea-force-down: ## Dừng và xóa các container, network và image của Gitea
@echo ">>> Force dừng và xóa dịch vụ Gitea..."
docker-compose -f $(GITEA_COMPOSE_FILE) down -v --rmi local
@echo ">>> Đã force dừng và xóa dịch vụ Gitea."
# --- Runner Management ---
gitea-runner-up: ## Chỉ khởi động runner cho Gitea
@echo ">>> Khởi động Gitea runner..."
docker-compose -f $(GITEA_COMPOSE_FILE) up -d runner
@echo ">>> Đã khởi động Gitea runner."
gitea-runner-down: ## Chỉ dừng runner của Gitea
@echo ">>> Dừng Gitea runner..."
docker-compose -f $(GITEA_COMPOSE_FILE) stop runner
@echo ">>> Đã dừng Gitea runner."
gitea-runner-force-up: ## Force khởi động lại runner cho Gitea
@echo ">>> Force khởi động lại Gitea runner..."
docker-compose up -d --force-recreate --build runner
@echo ">>> Đã force khởi động lại Gitea runner."
gitea-runner-force-down: ## Force dừng và xóa runner của Gitea
@echo ">>> Force dừng và xóa Gitea runner..."
docker-compose rm -fsv runner
@echo ">>> Đã force dừng và xóa Gitea runner."
# --- Help ---
help: ## Hiển thị hướng dẫn sử dụng các lệnh
@echo "----------------------------------------"
@echo " GITEA & RUNNER MANAGEMENT COMMANDS "
@echo "----------------------------------------"
@echo "Usage: make [target]"
@echo ""
@echo "Targets:"
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-20s\033[0m %s\n", $$1, $$2}'