fix make node-exec
This commit is contained in:
parent
be8cdb0870
commit
7eb022327c
|
@ -6,7 +6,7 @@
|
|||
.PHONY: build-env
|
||||
build-env: SERVICE ?= $(DOCKER_SERVICE)
|
||||
build-env: bootstrap
|
||||
$(call docker-compose-exec,$(SERVICE), \
|
||||
$(call docker-compose-exec-sh,$(SERVICE), \
|
||||
rm -f .env \
|
||||
&& make .env ENV=$(ENV) \
|
||||
&& printf 'BUILD=true\n' >> .env \
|
||||
|
@ -26,7 +26,7 @@ build-init:
|
|||
.PHONY: build-shared
|
||||
build-shared: SERVICE ?= $(DOCKER_SERVICE)
|
||||
build-shared: bootstrap
|
||||
$(call docker-compose-exec,$(SERVICE), \
|
||||
$(call docker-compose-exec-sh,$(SERVICE), \
|
||||
mkdir -p /$(notdir $(SHARED)) \
|
||||
&& $(foreach folder,$(SHARED_FOLDERS), \
|
||||
rm -rf $(folder) \
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
CMDS += docker-compose-exec docker-run docker-run-%
|
||||
CMDS += docker-run docker-run-%
|
||||
COMPOSE_ARGS ?= --ansi auto
|
||||
COMPOSE_FILE ?= $(wildcard docker/docker-compose.yml $(foreach file,$(patsubst docker/docker-compose.%,%,$(basename $(wildcard docker/docker-compose.*.yml))),$(if $(filter true,$(COMPOSE_FILE_$(file)) $(COMPOSE_FILE_$(call UPPERCASE,$(file)))),docker/docker-compose.$(file).yml)))
|
||||
COMPOSE_FILE_$(ENV) ?= true
|
||||
|
@ -63,9 +63,9 @@ define docker-compose
|
|||
$(if $(DOCKER_RUN),$(call docker-build,$(MYOS)/docker/compose,docker/compose:$(COMPOSE_VERSION)))
|
||||
$(if $(COMPOSE_FILE),$(call run,$(DOCKER_COMPOSE) $(patsubst %,-f %,$(COMPOSE_FILE)) -p $(if $(filter node,$(firstword $(subst /, ,$(STACK)))),$(NODE_COMPOSE_PROJECT_NAME),$(if $(filter User,$(firstword $(subst /, ,$(STACK)))),$(USER_COMPOSE_PROJECT_NAME),$(COMPOSE_PROJECT_NAME))) $(1)))
|
||||
endef
|
||||
# function docker-compose-exec: Run docker-compose-exec with arg 2 in service 1
|
||||
define docker-compose-exec
|
||||
$(call INFO,docker-compose-exec,$(1)$(comma) $(2))
|
||||
# function docker-compose-exec-sh: Run docker-compose-exec sh -c 'arg 2' in service 1
|
||||
define docker-compose-exec-sh
|
||||
$(call INFO,docker-compose-exec-sh,$(1)$(comma) $(2))
|
||||
$(if $(DOCKER_RUN),$(call docker-build,$(MYOS)/docker/compose,docker/compose:$(COMPOSE_VERSION)))
|
||||
$(if $(COMPOSE_FILE),$(call run,$(DOCKER_COMPOSE) $(patsubst %,-f %,$(COMPOSE_FILE)) -p $(if $(filter node,$(firstword $(subst /, ,$(STACK)))),$(NODE_COMPOSE_PROJECT_NAME),$(if $(filter User,$(firstword $(subst /, ,$(STACK)))),$(USER_COMPOSE_PROJECT_NAME),$(COMPOSE_PROJECT_NAME))) exec -T $(1) sh -c '$(2)'))
|
||||
endef
|
||||
|
|
|
@ -52,7 +52,7 @@ docker-compose-down:
|
|||
.PHONY: docker-compose-exec
|
||||
docker-compose-exec: SERVICE ?= $(DOCKER_SERVICE)
|
||||
docker-compose-exec:
|
||||
$(call docker-compose-exec,$(SERVICE),$(ARGS)) || true
|
||||
$(call docker-compose-exec-sh,$(SERVICE),$(ARGS)) || true
|
||||
|
||||
# target docker-compose-logs: Call docker-compose logs SERVICE
|
||||
.PHONY: docker-compose-logs
|
||||
|
|
|
@ -317,11 +317,3 @@ $(foreach env,$(ENV_LIST),$(eval TARGET := %\:$(env)) $(eval ASSIGN_ENV := ENV:=
|
|||
|
||||
# set ENV=env for targets ending with @env
|
||||
$(foreach env,$(ENV_LIST),$(eval %@$(env): ENV:=$(env)))
|
||||
|
||||
# Accept arguments for CMDS targets and turn them into do-nothing targets
|
||||
ifneq ($(filter $(CMDS),$(firstword $(MAKECMDGOALS))),)
|
||||
ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
||||
ARGS := $(subst :,\:,$(ARGS))
|
||||
ARGS := $(subst &,\&,$(ARGS))
|
||||
$(eval $(ARGS):;@:)
|
||||
endif
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
# Accept arguments for CMDS targets and turn them into do-nothing targets
|
||||
ifneq ($(filter $(CMDS),$(firstword $(MAKECMDGOALS))),)
|
||||
ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
||||
ARGS := $(subst :,\:,$(ARGS))
|
||||
ARGS := $(subst &,\&,$(ARGS))
|
||||
$(eval $(ARGS):;@:)
|
||||
endif
|
|
@ -5,17 +5,21 @@
|
|||
MAKE_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST))))
|
||||
# variable MAKE_FILE: Name of this file
|
||||
MAKE_FILE := $(notdir $(lastword $(MAKEFILE_LIST)))
|
||||
# variable MAKE_FILES: List of first files to load
|
||||
MAKE_FILES := env.mk def.mk $(wildcard def.*.mk)
|
||||
## it includes $(MAKE_DIR)/$(MAKE_FILES)
|
||||
include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILES)))
|
||||
# variable MAKE_FIRST: List of first files to load
|
||||
MAKE_FIRST := env.mk def.mk $(wildcard def.*.mk)
|
||||
# variable MAKE_LATEST: List of latest files to load
|
||||
MAKE_LATEST := end.mk
|
||||
## it includes $(MAKE_DIR)/$(MAKE_FIRST)
|
||||
include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FIRST)))
|
||||
## it includes $(MAKE_DIR)/*/def.mk $(MAKE_DIR)/*/def.*.mk
|
||||
include $(foreach subdir,$(MAKE_SUBDIRS),$(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk))
|
||||
## it includes def.mk def.*.mk */def.mk */def.*.mk
|
||||
include $(wildcard def.mk def.*.mk) $(filter-out $(wildcard $(MAKE_DIR)/*.mk),$(wildcard */def.mk */def.*.mk))
|
||||
## it includes $(MAKE_DIR)/*.mk
|
||||
include $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILE) $(MAKE_FILES))),$(wildcard $(MAKE_DIR)/*.mk))
|
||||
include $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILE) $(MAKE_FIRST) $(MAKE_LATEST))),$(wildcard $(MAKE_DIR)/*.mk))
|
||||
## it includes $(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)))
|
||||
## it includes *.mk */*.mk
|
||||
include $(filter-out $(wildcard def.mk def.*.mk),$(wildcard *.mk)) $(filter-out $(wildcard $(MAKE_DIR)/*.mk */def.mk */def.*.mk),$(wildcard */*.mk))
|
||||
## it includes $(MAKE_DIR)/$(MAKE_LATEST)
|
||||
include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_LATEST)))
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
CMDS += user-exec user-exec:% user-exec@% user-run user-run:% user-run@%
|
||||
User ?= User/User
|
||||
|
||||
# target bootstrap-stack-User: Fire docker-network-create
|
||||
|
|
|
@ -3,4 +3,4 @@ logs ?= sematext/logagent
|
|||
# target app-build-logagent: Exec 'rm -Rf /root/.npm /log-buffer/*' in docker SERVICE
|
||||
.PHONY: app-build-logagent
|
||||
app-build-logagent:
|
||||
$(call make,docker-compose-exec ARGS='rm -Rf /root/.npm /log-buffer/*' SERVICE=logagent)
|
||||
$(call docker-compose-exec-sh,logagent,rm -Rf /root/.npm /log-buffer/*)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
CMDS += node-exec stack-node-exec node-exec:% node-exec@% node-run node-run:% node-run@%
|
||||
node ?= node/node
|
||||
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET4 DOCKER_INTERNAL_DOCKER_HOST
|
||||
|
||||
|
@ -10,6 +11,7 @@ bootstrap-stack-node: docker-network-create-$(DOCKER_NETWORK_PUBLIC) node-ssl-ce
|
|||
node: stack-node-up
|
||||
|
||||
# target node-%; Fire target stack-node-%
|
||||
.PHONY: node-%
|
||||
node-%: stack-node-%;
|
||||
|
||||
# target node-ssl-certs: Create ${DOMAIN}.key.pem and ${DOMAIN}.crt.pem files
|
||||
|
|
Loading…
Reference in New Issue