35 lines
1.1 KiB
Makefile
35 lines
1.1 KiB
Makefile
SHELL := /bin/bash
|
|
.DEFAULT_GOAL := help
|
|
|
|
.PHONY: help doctor validate validate-structure validate-project check tree
|
|
|
|
help: ## 사용 가능한 명령을 표시합니다.
|
|
@awk 'BEGIN {FS = ":.*## "; print "Usage: make <target>"} /^[a-zA-Z_-]+:.*## / {printf " %-20s %s\n", $$1, $$2}' $(MAKEFILE_LIST)
|
|
|
|
doctor: ## 현재 로컬 도구 상태를 확인합니다.
|
|
@./scripts/doctor.sh
|
|
|
|
validate-structure: ## 템플릿 구조, 민감 파일, Kustomize, Helm과 IaC 형식을 검증합니다.
|
|
@./scripts/validate.sh
|
|
|
|
validate-project: ## 프로젝트 entrypoint, schema, policy, shell과 문서를 검증합니다.
|
|
@bash ./scripts/ci/validate.sh
|
|
|
|
validate: validate-structure validate-project ## 구조 및 프로젝트 검증을 모두 실행합니다.
|
|
|
|
check: validate ## CI와 동일한 전체 검증을 실행합니다.
|
|
|
|
tree: ## 생성물과 Git 메타데이터를 제외한 구조를 표시합니다.
|
|
@find . \
|
|
\( \
|
|
-name .build -o \
|
|
-name .cache -o \
|
|
-name .git -o \
|
|
-name .terraform -o \
|
|
-name .terragrunt-cache -o \
|
|
-name dist -o \
|
|
-name rendered -o \
|
|
-name tmp \
|
|
\) -prune -o \
|
|
-print | sort
|