Merge branch '145-build-system-rewrite' of https://dev.azure.com/fraport/Fahrerausbildung/_git/FRADrive into 145-build-system-rewrite
This commit is contained in:
commit
83249080ac
35
Makefile
35
Makefile
@ -16,6 +16,7 @@ export MAILDEV_IMAGE = $(IMAGE_REGISTRY)/maildev/maildev:latest # TODO: needs di
|
||||
export IN_CONTAINER ?= false
|
||||
export IN_CI ?= false
|
||||
export CONTAINER_FILE
|
||||
export CONTAINER_IDENT
|
||||
export CF_PREFIX
|
||||
export DEVELOP
|
||||
export MOUNT_DIR=/mnt/fradrive
|
||||
@ -25,8 +26,8 @@ export SERVICE
|
||||
export SERVICE_VARIANT ?= $(SERVICE)
|
||||
export SERVICE_PARALLEL ?= false
|
||||
export JOB
|
||||
export JOB_ID
|
||||
export CONTAINER_CMD
|
||||
export SET_CONTAINER_CMD
|
||||
export ENTRYPOINT
|
||||
export EXEC_OPTS
|
||||
|
||||
@ -129,13 +130,13 @@ start:
|
||||
.PHONY: %-memcached
|
||||
%-memcached: SERVICE=memcached
|
||||
%-memcached: SERVICE_VARIANT=memcached
|
||||
%-memcached: CONTAINER_CMD=$(MEMCACHED_IMAGE) --port=`cat $(CONTAINER_FILE) | grep 'MEMCACHED_PORT=' | sed 's/MEMCACHED_PORT=//'`
|
||||
%-memcached: SET_CONTAINER_CMD=$$(MEMCACHED_IMAGE) --port=`cat $$(CONTAINER_FILE) | grep 'MEMCACHED_PORT=' | sed 's/MEMCACHED_PORT=//'`
|
||||
%-memcached: BASE_PORTS = "MEMCACHED_PORT=11211"
|
||||
|
||||
.PHONY: %-minio
|
||||
%-minio: SERVICE=minio
|
||||
%-minio: SERVICE_VARIANT=minio
|
||||
%-minio: CONTAINER_CMD=$(MINIO_IMAGE) -- server `mktemp` --address=:`cat $(CONTAINER_FILE) | grep 'UPLOAD_S3_PORT=' | sed 's/UPLOAD_S3_PORT=//'`:
|
||||
%-minio: SET_CONTAINER_CMD=$$(MINIO_IMAGE) -- server `mktemp` --address=:`cat $$(CONTAINER_FILE) | grep 'UPLOAD_S3_PORT=' | sed 's/UPLOAD_S3_PORT=//'`
|
||||
%-minio: BASE_PORTS = "UPLOAD_S3_PORT=9000"
|
||||
|
||||
.PHONY: start-%
|
||||
@ -172,27 +173,21 @@ lint-%: --act ;
|
||||
|
||||
--develop_%: PORTS = $(foreach PORT,$(BASE_PORTS),$(shell utils/next_free_port.pl $(PORT)))
|
||||
--develop_%: --ensure-develop
|
||||
echo "--develop ################## ATTACHED: $(CONTAINER_ATTACHED)"
|
||||
DEVELOP=develop/`cat develop/.current` ; \
|
||||
echo "$(SERVICE_PARALLEL)" ; \
|
||||
if [[ "$(SERVICE_PARALLEL)" == "false" ]] ; then \
|
||||
CONTAINER_FILE=$${DEVELOP}/$(CF_PREFIX)$(SERVICE_VARIANT) ; \
|
||||
JOB_ID=$(JOB) ; \
|
||||
if [[ -e $${CONTAINER_FILE} ]]; then \
|
||||
CONTAINER_IDENT=$(CF_PREFIX)$(SERVICE_VARIANT) ; \
|
||||
if [[ -e $${DEVELOP}/$${CONTAINER_IDENT} ]]; then \
|
||||
>&2 echo "Another $* service is already running! Use \"make new-develop\" to start a new develop instance despite currently running services." ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
else \
|
||||
DEVDIR=$${DEVELOP}/$(CF_PREFIX)$(SERVICE_VARIANT) ; \
|
||||
I=`ls $${DEVELOP} | grep '$(SERVICE_VARIANT)' | sed 's/$(SERVICE_VARIANT)-//' | sort -n | tail -n1` ; \
|
||||
echo "I=$${I}" ; \
|
||||
J=$$(($${I}+1)) ; \
|
||||
echo "J=$${J}" ; \
|
||||
CONTAINER_FILE=$${DEVDIR}-$${J} ; \
|
||||
JOB_ID=$(JOB)-$${J} ; \
|
||||
CONTAINER_IDENT=$(CF_PREFIX)$(SERVICE_VARIANT)-$${J} ; \
|
||||
fi ; \
|
||||
CONTAINER_FILE=$${DEVELOP}/$${CONTAINER_IDENT} ; \
|
||||
echo "$(PORTS)" | sed 's/ /\n/g' > $${CONTAINER_FILE} ; \
|
||||
$(MAKE) -- --$* CONTAINER_FILE=$${CONTAINER_FILE} JOB_ID=$${JOB_ID}
|
||||
$(MAKE) -- --$* CONTAINER_FILE=$${CONTAINER_FILE} CONTAINER_IDENT=$${CONTAINER_IDENT}
|
||||
|
||||
.PHONY: image-rebuild_%
|
||||
# HELP(image-rebuild_{backend,frontend,database,memcached,minio}): force-rebuild the stated docker image
|
||||
@ -215,10 +210,15 @@ else
|
||||
endif
|
||||
|
||||
--containerized: --image-build
|
||||
echo "--containerized ################## ATTACHED: $(CONTAINER_ATTACHED)"
|
||||
DEVELOP=`cat develop/.current` ; \
|
||||
./utils/watchcontainerrun.sh "$(CONTAINER_COMMAND)" "$(CONTAINER_FILE)" & \
|
||||
CONTAINER_NAME=fradrive.$(CURR_DEV).$(SERVICE_VARIANT).$(JOB_ID) ; \
|
||||
CONTAINER_NAME=fradrive.$(CURR_DEV).$(CONTAINER_IDENT) ; \
|
||||
if ! [ -z "$(SET_CONTAINER_CMD)" ] ; \
|
||||
then \
|
||||
CONTAINER_CMD="$(SET_CONTAINER_CMD)" ; \
|
||||
else \
|
||||
CONTAINER_CMD=$(CONTAINER_CMD) ; \
|
||||
fi ; \
|
||||
CONTAINER_ID=`$(CONTAINER_BGRUN) \
|
||||
-v $(PWD):$(MOUNT_DIR) \
|
||||
--env IN_CONTAINER=true \
|
||||
@ -226,11 +226,10 @@ endif
|
||||
--env CONTAINER_FILE=$(CONTAINER_FILE) \
|
||||
--env CONTAINER_NAME=$${CONTAINER_NAME} \
|
||||
--name $${CONTAINER_NAME} \
|
||||
$(CONTAINER_CMD) \
|
||||
$${CONTAINER_CMD} \
|
||||
` ; \
|
||||
printf "CONTAINER_ID=$${CONTAINER_ID}" >> "$(CONTAINER_FILE)" ; \
|
||||
if [[ "true" == "$(CONTAINER_ATTACHED)" ]] ; then \
|
||||
echo "###!!! postgres shall not go here!" ; \
|
||||
$(CONTAINER_COMMAND) attach $${CONTAINER_ID} || : ; \
|
||||
fi
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user