diff --git a/.env.dist b/.env.dist index 0ae4c16..a22bfe3 100644 --- a/.env.dist +++ b/.env.dist @@ -2,4 +2,3 @@ DOCKER_MACHINE=${DOCKER_MACHINE} DOCKER_SOCKET_LOCATION=${DOCKER_SOCKET_LOCATION} DOCKER_SYSTEM=${DOCKER_SYSTEM} DOMAIN=${DOMAIN} -STACK=${STACK} diff --git a/README.md b/README.md index 126623a..43f3d71 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ # myos - Make Your Own Stack -Docker paas based on docker compose and make files. - Make Your Own Stack provides common make targets to build and run docker projects. ## Disclaimer @@ -18,9 +16,9 @@ You need `docker`, `git` and `make`. ``` MYOS ?= ../myos -MYOS_REPOSITORY ?= $(patsubst %/$(APP),%/myos,$(APP_REPOSITORY)) -APP ?= $(lastword $(subst /, ,$(APP_REPOSITORY))) -APP_REPOSITORY ?= $(shell git config --get remote.origin.url 2>/dev/null) +MYOS_REPOSITORY ?= $(patsubst %/$(THIS),%/myos,$(THIS_REPOSITORY)) +THIS ?= $(lastword $(subst /, ,$(THIS_REPOSITORY))) +THIS_REPOSITORY ?= $(shell git config --get remote.origin.url 2>/dev/null) $(MYOS): -@git clone $(MYOS_REPOSITORY) $(MYOS) -include $(MYOS)/make/include.mk diff --git a/make/apps/docker.mk b/make/apps/docker.mk index 57128ac..2a40b74 100644 --- a/make/apps/docker.mk +++ b/make/apps/docker.mk @@ -234,7 +234,9 @@ docker-run-%: docker-build-% .PHONY: docker-stack-% docker-stack-%: MAKE_VARS += DOCKER_COMPOSE_DOWN_OPTIONS docker-stack-%: - $(foreach stack, $(STACK), $(call make,docker-compose-$* STACK=$(stack) APP_NAME=$(subst _,,$(subst -,,$(subst .,,$(call LOWERCASE,$(firstword $(subst /, ,$(stack))))))))) + $(if $(filter-out myos,$(filter $(APP),$(STACK))), \ + $(call make,app-$(APP)-$*) \ + , $(foreach stack, $(STACK), $(call make,docker-compose-$* STACK=$(stack) APP_NAME=$(subst _,,$(subst -,,$(subst .,,$(call LOWERCASE,$(firstword $(subst /, ,$(stack)))))))))) # target docker-tag: Call docker-tag for each SERVICES .PHONY: docker-tag diff --git a/make/monorepo/common.mk b/make/apps/monorepo/common.mk similarity index 100% rename from make/monorepo/common.mk rename to make/apps/monorepo/common.mk diff --git a/make/monorepo/def.drone.mk b/make/apps/monorepo/def.drone.mk similarity index 100% rename from make/monorepo/def.drone.mk rename to make/apps/monorepo/def.drone.mk diff --git a/make/monorepo/def.mk b/make/apps/monorepo/def.mk similarity index 100% rename from make/monorepo/def.mk rename to make/apps/monorepo/def.mk diff --git a/make/monorepo/release.mk b/make/apps/monorepo/release.mk similarity index 100% rename from make/monorepo/release.mk rename to make/apps/monorepo/release.mk diff --git a/make/monorepo/subrepo.mk b/make/apps/monorepo/subrepo.mk similarity index 100% rename from make/monorepo/subrepo.mk rename to make/apps/monorepo/subrepo.mk diff --git a/make/def.docker.mk b/make/def.docker.mk index 8269759..4bffab7 100644 --- a/make/def.docker.mk +++ b/make/def.docker.mk @@ -37,7 +37,7 @@ MYOS_STACK ?= $(foreach stack_dir,$(STACK_DIR),$(MYOS)/$(st MYOS_STACK_FILE ?= networks volumes RESU_DOCKER_REPOSITORY ?= $(subst -,/,$(USER_COMPOSE_PROJECT_NAME)) STACK ?= $(APP) -STACK_DIR ?= stack +STACK_DIR ?= ../stack USER_COMPOSE_PROJECT_NAME ?= $(subst .,-,$(RESU)) USER_COMPOSE_SERVICE_NAME ?= $(USER_COMPOSE_PROJECT_NAME) USER_DOCKER_IMAGE ?= $(USER_DOCKER_REPOSITORY):${DOCKER_IMAGE_TAG} diff --git a/make/def.mk b/make/def.mk index b51bdfc..1cb4cbf 100644 --- a/make/def.mk +++ b/make/def.mk @@ -79,7 +79,7 @@ $(foreach cmd,$(INSTALL_CMDS),$(if $(CMD_$(cmd)),$(eval INSTALL_CMD ?= $(CMD_$(c LOG_LEVEL := $(or $(if $(DEBUG),debug),$(if $(VERBOSE),info),error) MAIL ?= $(GIT_AUTHOR_EMAIL) MAKE_ARGS = $(foreach var,$(MAKE_VARS),$(if $($(var)),$(var)='$($(var))')) -MAKE_SUBDIRS ?= $(if $(filter myos,$(MYOS)),monorepo,$(if $(APP),apps $(foreach type,$(APP_TYPE),$(if $(wildcard $(MAKE_DIR)/apps/$(type)),apps/$(type))))) +MAKE_SUBDIRS ?= $(if $(filter myos,$(MYOS)),apps/monorepo,$(if $(APP),apps $(foreach type,$(APP_TYPE),$(if $(wildcard $(MAKE_DIR)/apps/$(type)),apps/$(type))))) MAKE_CMD_ARGS ?= $(foreach var,$(MAKE_CMD_VARS),$(var)='$($(var))') MAKE_CMD_VARS ?= $(strip $(foreach var, $(filter-out .VARIABLES,$(.VARIABLES)), $(if $(filter command\ line,$(origin $(var))),$(var)))) MAKE_ENV_ARGS ?= $(foreach var,$(filter $(ENV_VARS),$(MAKE_ENV_VARS)),$(var)='$($(var))') diff --git a/make/myos.mk b/make/myos.mk index 5607c1b..96eb74c 100644 --- a/make/myos.mk +++ b/make/myos.mk @@ -1,10 +1,6 @@ ## # MYOS -# target myos: Call host target in MYOS folder -.PHONY: myos -myos: myos-host - # target myos-%: Call % target in MYOS folder .PHONY: myos-% myos-%: ;