@@ -7,14 +7,12 @@ VERSION := $(shell uname -a)
77
88# Checks for handling various operating systems
99ifeq ($(filter Windows_NT,$(OS ) ) ,)
10- IS_WSL := $(if $(findstring microsoft,$(shell uname -a | tr '[:upper:]' '[:lower:]') ) ,WSL,)
1110IS_WSL2 := $(if $(findstring -microsoft-,$(shell uname -a) ) ,WSL2,)
1211IS_OSX := $(filter Darwin,$(shell uname -a) )
1312IS_LINUX: = $(if $(or $(IS_WSL ) ,$(IS_OSX ) ) ,,$(filter Linux,$(shell uname -a) ) )
1413endif
1514IS_WIN := $(strip $(if $(or $(IS_LINUX ) ,$(IS_OSX ) ,$(IS_WSL ) ) ,,$(OS ) ) )
1615
17- $(if $(IS_WIN),$(error Windows is not supported in all recipes. Use WSL2 instead. Follow instructions in README.md),)
1816$(if $(IS_WSL2),,$(if $(IS_WSL),$(error WSL1 is not supported in all recipes. Use WSL2 instead. Follow instructions in README.md),))
1917
2018# Check that a valid location to a config file is set.
@@ -37,13 +35,13 @@ endif
3735export DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL: =$(shell set -o allexport; \
3836 source $(REPO_CONFIG_LOCATION ) ; \
3937 if [ -z "$${DEPLOYMENT_FQDNS}" ]; then \
40- DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL="(Host(\`$$MACHINE_FQDN\`) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ MACHINE_FQDN\` ))|| (Host( \` storage. $$ MACHINE_FQDN \` )) || (HostRegexp(\` services.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` ))" ; \
38+ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL="(Host(\`$$MACHINE_FQDN\`) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ MACHINE_FQDN\` ))|| (HostRegexp(\` services.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` ))" ; \
4139 else \
4240 IFS=', ' read -r -a hosts <<< " $$ {DEPLOYMENT_FQDNS}" ; \
43- DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL=" (Host(\` $$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ MACHINE_FQDN\` ))|| (Host( \` storage. $$ MACHINE_FQDN \` )) || ( HostRegexp(\` services.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` ))" ; \
41+ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL=" (Host(\` $$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ MACHINE_FQDN\` ))|| (HostRegexp(\` services.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ MACHINE_FQDN\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ MACHINE_FQDN\` ) && PathPrefix(\` /\` ))" ; \
4442 for element in " $$ {hosts[@]}" ; \
4543 do \
46- DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL=" $$ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL || (Host(\` $$ element\` ) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ element\` )) || (Host( \` storage. $$ element \` )) || ( HostRegexp(\` services.$$ element\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ element\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ element\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ element\` ) && PathPrefix(\` /\` ))" ;\
44+ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL=" $$ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL || (Host(\` $$ element\` ) && PathPrefix(\` /\` )) || (Host(\` invitations.$$ element\` )) || (HostRegexp(\` services.$$ element\` ,\` {subhost:[a-zA-Z0-9-]+}.services.$$ element\` ) && PathPrefix(\` /\` )) || (HostRegexp(\` services.testing.$$ element\` ,\` {subhost:[a-zA-Z0-9-]+}.services.testing.$$ element\` ) && PathPrefix(\` /\` ))" ;\
4745 done; \
4846 DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL=" $$ DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_CATCHALL" ; \
4947 fi; \
@@ -66,21 +64,6 @@ export DEPLOYMENT_FQDNS_CAPTURE_INVITATIONS:=$(shell set -o allexport; \
6664 echo $$ DEPLOYMENT_FQDNS_CAPTURE_INVITATIONS; \
6765 set +o allexport; )
6866
69- export DEPLOYMENT_FQDNS_CAPTURE_STORAGE:=$( shell set -o allexport; \
70- source $( REPO_CONFIG_LOCATION) ; \
71- if [ -z " $$ {DEPLOYMENT_FQDNS}" ]; then \
72- DEPLOYMENT_FQDNS_CAPTURE_STORAGE=" (Host(\` storage.$$ MACHINE_FQDN\` ))" ; \
73- else \
74- IFS=' , ' read -r -a hosts <<< " $${DEPLOYMENT_FQDNS}" ; \
75- DEPLOYMENT_FQDNS_CAPTURE_STORAGE=" (Host(\` storage.$$ MACHINE_FQDN\` ))" ; \
76- for element in " $$ {hosts[@]}" ; \
77- do \
78- DEPLOYMENT_FQDNS_CAPTURE_STORAGE=" $$ DEPLOYMENT_FQDNS_CAPTURE_STORAGE || (Host(\` storage.$$ element\` ))" ; \
79- done ; \
80- DEPLOYMENT_FQDNS_CAPTURE_STORAGE=" $$ DEPLOYMENT_FQDNS_CAPTURE_STORAGE" ; \
81- fi ; \
82- echo $$ DEPLOYMENT_FQDNS_CAPTURE_STORAGE; \
83- set +o allexport; )
8467
8568export DEPLOYMENT_FQDNS_CAPTURE_TRAEFIK_RULE_MAINTENANCE_PAGE:=$( shell set -o allexport; \
8669 source $( REPO_CONFIG_LOCATION) ; \
@@ -207,7 +190,6 @@ clean-default: .check_clean ## Cleans all outputs
207190 export DEPLOYMENT_FQDNS_TESTING_CAPTURE_TRAEFIK_RULE=' ${DEPLOYMENT_FQDNS_TESTING_CAPTURE_TRAEFIK_RULE}' ; \
208191 export DEPLOYMENT_API_DOMAIN_TESTING_CAPTURE_TRAEFIK_RULE=' ${DEPLOYMENT_API_DOMAIN_TESTING_CAPTURE_TRAEFIK_RULE}' ; \
209192 export DEPLOYMENT_FQDNS_CAPTURE_INVITATIONS=' ${DEPLOYMENT_FQDNS_CAPTURE_INVITATIONS}' ; \
210- export DEPLOYMENT_FQDNS_CAPTURE_STORAGE=' ${DEPLOYMENT_FQDNS_CAPTURE_STORAGE}' ; \
211193 export DOLLAR=' $$' ; \
212194 set +o allexport; \
213195 envsubst < $< > .env
@@ -243,20 +225,21 @@ clean-default: .check_clean ## Cleans all outputs
243225 # creating virtual environment with tooling (jinja, etc)
244226 @python3 -m venv .venv
245227 @.venv/bin/pip3 install --upgrade pip wheel setuptools
246- @.venv/bin/pip3 install jinja2 j2cli[yaml]
228+ @.venv/bin/pip3 install jinja2 j2cli[yaml] typer
229+ @echo " To activate the venv, execute 'source .venv/bin/activate'"
247230
248231
249232# https://github.com/kolypto/j2cli?tab=readme-ov-file#customization
250233ifeq ($( shell test -f j2cli_customization.py && echo -n yes) ,yes)
251234
252235define jinja
253- .venv/bin/j2 --format=env $( 1) .env -o $( 2) --customize j2cli_customization.py
236+ $( REPO_BASE_DIR ) / .venv/bin/j2 --format=env $( 1) .env -o $( 2) --customize j2cli_customization.py
254237endef
255238
256239else
257240
258241define jinja
259- .venv/bin/j2 --format=env $( 1) .env -o $( 2)
242+ $( REPO_BASE_DIR ) / .venv/bin/j2 --format=env $( 1) .env -o $( 2)
260243endef
261244
262245endif
0 commit comments