This commit is contained in:
aynic.os 2021-05-25 14:55:16 +02:00
parent afce46f3df
commit 8a7a545a6c
7 changed files with 24 additions and 22 deletions

9
make/debug.mk Normal file
View File

@ -0,0 +1,9 @@
##
# DEBUG
.PHONY: debug
debug:
$(MAKE) DEBUG=true
.PHONY: debug-%
debug-%: context-% ;

View File

@ -11,6 +11,8 @@ APP_PATH ?= /${APP_PATH_PREFIX}
APP_SCHEME ?= https
APP_URI ?= ${APP_HOST}${APP_PATH}
APP_URL ?= ${APP_SCHEME}://${APP_URI}
APPS ?= $(if $(MONOREPO),$(sort $(patsubst $(MONOREPO_DIR)/%/.git,%,$(wildcard $(MONOREPO_DIR)/*/.git))))
APPS_NAME ?= $(foreach app,$(APPS),$(or $(shell awk -F '=' '$$1 == "APP" {print $$2}' $(or $(wildcard $(MONOREPO_DIR)/$(app)/.env),$(wildcard $(MONOREPO_DIR)/$(app)/.env.$(ENV)),$(MONOREPO_DIR)/$(app)/.env.dist) 2>/dev/null),$(app)))
BRANCH ?= $(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)
CMDS ?= exec exec:% exec@% run run:% run@%
COMMIT ?= $(shell git rev-parse $(BRANCH) 2>/dev/null)
@ -92,9 +94,6 @@ endif
# include .env files
include $(wildcard $(ENV_FILE))
# include *.mk
include $(wildcard $(MAKE_DIR)/def.*.mk)
include $(foreach subdir,$(MAKE_SUBDIRS),$(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk))
ifeq ($(HOST_SYSTEM),DARWIN)
ifneq ($(DOCKER),true)

View File

@ -23,17 +23,14 @@ blank1 blank2:
## Show available targets
target:
printf "${COLOR_BROWN}Targets:${COLOR_RESET}\n"
awk 'BEGIN {FS = ":.*?## "}; $$0 ~ /^[a-zA-Z_-]+:.*?## .*$$/ {printf "${COLOR_BLUE}%-30s${COLOR_RESET} %s\n", $$1, $$2}' $(MAKEFILE_LIST)
awk 'BEGIN {FS = ":.*?## "}; $$0 ~ /^[a-zA-Z_-]+:.*?## .*$$/ {printf "${COLOR_BLUE}%-31s${COLOR_RESET} %s\n", $$1, $$2}' $(MAKEFILE_LIST)
.PHONY: context
## Show current context
context:
printf "${COLOR_BROWN}Context:${COLOR_RESET}\n"
$(MAKE) $(CONTEXT)
$(MAKE) $(foreach var,$(CONTEXT),context-$(var))
.PHONY: $(CONTEXT)
$(CONTEXT):
@printf "${COLOR_BLUE}%-30s${COLOR_RESET} ${COLOR_GREEN}%s${COLOR_RESET}\n" $@ "$($@)"
.PHONY: print-%
print-%: ; @printf "${COLOR_BLUE}%-30s${COLOR_RESET} ${COLOR_GREEN}%s${COLOR_RESET}\n" $* "$($*)"
.PHONY: context--%
context-%:
printf "${COLOR_BLUE}%-31s${COLOR_RESET} ${COLOR_GREEN}%s${COLOR_RESET}\n" $* "$($*)"

View File

@ -1,11 +1,11 @@
# MAKE_DIR: directory path of this file
MAKE_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST))))
# MAKE_FILES: list of first files to load
MAKE_FILES := env.mk def.mk
MAKE_FILES := env.mk def.mk $(wildcard def.*.mk)
# include *.mk files
## $(MAKE_DIR)/$(MAKE_FILES) $(MAKE_DIR)/*.mk
include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILES))) $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,include.mk def.*.mk $(MAKE_FILES))),$(wildcard $(MAKE_DIR)/*.mk))
## $(MAKE_DIR)/*/*.mk
include $(foreach subdir,$(MAKE_SUBDIRS),$(filter-out $(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk),$(wildcard $(MAKE_DIR)/$(subdir)/*.mk)))
## *.mk */*.mk
include $(wildcard *.mk) $(filter-out $(wildcard $(MAKE_DIR)/*.mk),$(wildcard */def.mk */def.*.mk) $(filter-out $(wildcard */def.mk */def.*.mk),$(wildcard */*.mk)))
include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILES))) $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(notdir $(lastword $(MAKEFILE_LIST))) $(MAKE_FILES))),$(wildcard $(MAKE_DIR)/*.mk))
## $(MAKE_DIR)/*/def.mk $(MAKE_DIR)/*/def.*.mk $(MAKE_DIR)/*/*.mk
include $(foreach subdir,$(MAKE_SUBDIRS),$(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk) $(filter-out $(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk),$(wildcard $(MAKE_DIR)/$(subdir)/*.mk)))
## def.mk def.*.mk *.mk */def.mk */def.*.mk */*.mk
include $(wildcard def.mk def.*.mk) $(filter-out $(wildcard def.mk def.*.mk),$(wildcard *.mk)) $(filter-out $(wildcard $(MAKE_DIR)/*.mk),$(wildcard */def.mk */def.*.mk) $(filter-out $(wildcard */def.mk */def.*.mk),$(wildcard */*.mk)))

View File

@ -9,7 +9,6 @@ COMMIT_AFTER := $(DRONE_TAG)
COMMIT_BEFORE := $(shell git describe --abbrev=0 --tags $(DRONE_TAG)^ 2>/dev/null)
endif
APPS_IMPACTED := $(shell git diff --name-only $(COMMIT_BEFORE) $(COMMIT_AFTER) 2>/dev/null |awk -F '/' 'NF>1 && !seen[$$1]++ {print $$1}')
# prevent drone to make down myos
APPS := $(if $(filter-out down,$(MAKECMDGOALS)),$(filter $(MYOS),$(APPS_IMPACTED))) $(sort $(filter-out $(DIRS) $(MYOS),$(APPS_IMPACTED)))
APPS := $(or $(APPS_IMPACTED),$(APPS))
CONTEXT += DRONE_BRANCH DRONE_BUILD_EVENT DRONE_BUILD_NUMBER DRONE_COMMIT_AFTER DRONE_COMMIT_AUTHOR DRONE_COMMIT_AUTHOR_EMAIL DRONE_COMMIT_BEFORE DRONE_COMMIT_REF GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME
endif

View File

@ -1,7 +1,5 @@
APPS ?= $(MYOS) $(sort $(filter-out $(DIRS) $(MYOS), $(patsubst %/,%,$(wildcard */)) ))
APPS_NAME ?= $(foreach app,$(APPS),$(or $(shell awk -F '=' '$$1 == "APP" {print $$2}' $(or $(wildcard $(app)/.env),$(wildcard $(app)/.env.$(ENV)),$(app)/.env.dist) 2>/dev/null),$(app)))
CMDS += copy master-tag release release-check release-create release-finish subrepo-push update-subrepo
CONTEXT += APPS APPS_NAME ENV RELEASE_INSTALL
CONTEXT += APPS ENV RELEASE_INSTALL
DIRS ?= $(MAKE_DIR) $(PARAMETERS) $(SHARED)
RELEASE_UPGRADE ?= $(filter v%, $(shell git tag -l 2>/dev/null |sort -V |awk '/$(RELEASE_INSTALL)/,0'))
RELEASE_VERSION ?= $(firstword $(subst -, ,$(VERSION)))