# --- 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 -f $(GITEA_COMPOSE_FILE) 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 -f $(GITEA_COMPOSE_FILE) 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}'