build(Makefile): CONTAINER_INIT and CONTAINER_CLEANUP for stack-work dir symlinking
This commit is contained in:
parent
e813c72684
commit
c8cb73d366
13
Makefile
13
Makefile
@ -21,6 +21,11 @@ export CF_PREFIX
|
|||||||
export DEVELOP
|
export DEVELOP
|
||||||
export MOUNT_DIR=/mnt/fradrive
|
export MOUNT_DIR=/mnt/fradrive
|
||||||
export CONTAINER_ATTACHED
|
export CONTAINER_ATTACHED
|
||||||
|
export CONTAINER_INIT
|
||||||
|
export CONTAINER_CLEANUP
|
||||||
|
|
||||||
|
export STACK_INIT="./utils/stack-work-init.sh"
|
||||||
|
export STACK_CLEANUP="rm -f .stack-work.lock"
|
||||||
|
|
||||||
export SERVICE
|
export SERVICE
|
||||||
export SERVICE_VARIANT ?= $(SERVICE)
|
export SERVICE_VARIANT ?= $(SERVICE)
|
||||||
@ -98,18 +103,24 @@ start:
|
|||||||
%-backend: SERVICE=backend
|
%-backend: SERVICE=backend
|
||||||
%-backend: SERVICE_VARIANT=backend
|
%-backend: SERVICE_VARIANT=backend
|
||||||
%-backend: CONTAINER_CMD=localhost/fradrive/backend
|
%-backend: CONTAINER_CMD=localhost/fradrive/backend
|
||||||
|
%-backend: CONTAINER_INIT="$(STACK_INIT)"
|
||||||
|
%-backend: CONTAINER_CLEANUP="$(STACK_CLEANUP)"
|
||||||
%-backend: BASE_PORTS = "DEV_PORT_HTTP=3000" "DEV_PORT_HTTPS=3443"
|
%-backend: BASE_PORTS = "DEV_PORT_HTTP=3000" "DEV_PORT_HTTPS=3443"
|
||||||
|
|
||||||
.PHONY: %-uniworxdb
|
.PHONY: %-uniworxdb
|
||||||
%-uniworxdb: SERVICE=backend
|
%-uniworxdb: SERVICE=backend
|
||||||
%-uniworxdb: SERVICE_VARIANT=uniworxdb
|
%-uniworxdb: SERVICE_VARIANT=uniworxdb
|
||||||
%-uniworxdb: CONTAINER_CMD=localhost/fradrive/backend
|
%-uniworxdb: CONTAINER_CMD=localhost/fradrive/backend
|
||||||
|
%-uniworxdb: CONTAINER_INIT="$(STACK_INIT)"
|
||||||
|
%-uniworxdb: CONTAINER_CLEANUP="$(STACK_CLEANUP)"
|
||||||
|
|
||||||
.PHONY: %-hoogle
|
.PHONY: %-hoogle
|
||||||
%-hoogle: SERVICE=backend
|
%-hoogle: SERVICE=backend
|
||||||
%-hoogle: SERVICE_VARIANT=hoogle
|
%-hoogle: SERVICE_VARIANT=hoogle
|
||||||
%-hoogle: BASE_PORTS = "HOOGLE_PORT=8081"
|
%-hoogle: BASE_PORTS = "HOOGLE_PORT=8081"
|
||||||
%-hoogle: CONTAINER_CMD=localhost/fradrive/backend
|
%-hoogle: CONTAINER_CMD=localhost/fradrive/backend
|
||||||
|
%-hoogle: CONTAINER_INIT="$(STACK_INIT)"
|
||||||
|
%-hoogle: CONTAINER_CLEANUP="$(STACK_CLEANUP)"
|
||||||
--start-hoogle:
|
--start-hoogle:
|
||||||
HOOGLE_PORT=`cat $(CONTAINER_FILE) | grep 'HOOGLE_PORT=' | sed 's/HOOGLE_PORT=//'` ; \
|
HOOGLE_PORT=`cat $(CONTAINER_FILE) | grep 'HOOGLE_PORT=' | sed 's/HOOGLE_PORT=//'` ; \
|
||||||
stack $(STACK_CORES) hoogle -- server --local --port $${HOOGLE_PORT}
|
stack $(STACK_CORES) hoogle -- server --local --port $${HOOGLE_PORT}
|
||||||
@ -203,7 +214,7 @@ endif
|
|||||||
|
|
||||||
--containerized: --image-build
|
--containerized: --image-build
|
||||||
DEVELOP=`cat develop/.current` ; \
|
DEVELOP=`cat develop/.current` ; \
|
||||||
./utils/watchcontainerrun.sh "$(CONTAINER_COMMAND)" "$(CONTAINER_FILE)" & \
|
./utils/watchcontainerrun.sh "$(CONTAINER_COMMAND)" "$(CONTAINER_FILE)" "$(CONTAINER_INIT)" "$(CONTAINER_CLEANUP)" & \
|
||||||
CONTAINER_NAME=fradrive.$(CURR_DEV).$(CONTAINER_IDENT) ; \
|
CONTAINER_NAME=fradrive.$(CURR_DEV).$(CONTAINER_IDENT) ; \
|
||||||
if ! [ -z "$(SET_CONTAINER_CMD)" ] ; \
|
if ! [ -z "$(SET_CONTAINER_CMD)" ] ; \
|
||||||
then \
|
then \
|
||||||
|
|||||||
18
utils/stack-work-init.sh
Executable file
18
utils/stack-work-init.sh
Executable file
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
STACK_WORK_SRC=.stack-work-${JOB}
|
||||||
|
|
||||||
|
if [[ -e .stack-work.lock ]]; then
|
||||||
|
echo ".stack-work directory is locked (lock file exists); is another stack currently running?"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
touch .stack-work.lock
|
||||||
|
rm -rf .stack-work
|
||||||
|
|
||||||
|
if [[ ! -e "$STACK_WORK_SRC" ]]; then
|
||||||
|
mkdir "$STACK_WORK_SRC"
|
||||||
|
chmod 777 "$STACK_WORK_SRC"
|
||||||
|
fi
|
||||||
|
|
||||||
|
ln -s "$STACK_WORK_SRC" .stack-work
|
||||||
Loading…
Reference in New Issue
Block a user