diff options
Diffstat (limited to 'make')
| -rw-r--r-- | make/nginx.mk | 75 | ||||
| -rw-r--r-- | make/vars.mk | 25 |
2 files changed, 3 insertions, 97 deletions
diff --git a/make/nginx.mk b/make/nginx.mk deleted file mode 100644 index ebfbfd1..0000000 --- a/make/nginx.mk +++ /dev/null @@ -1,75 +0,0 @@ -installed_nginx_sites = $(wildcard /etc/nginx/http.d/*.joeac.net.conf) -installed_nginx_subdomains = $(installed_nginx_sites:/etc/nginx/http.d/%.joeac.net.conf=%) -nginx_subdomains_to_remove = $(filter-out $(NGINX_SUBDOMAINS),$(installed_nginx_subdomains)) -nginx_sites_to_remove = $(nginx_subdomains_to_remove:%=/etc/nginx/http.d/%.joeac.net.conf) -nginx_module_config_template = \ - $(if $(PORT_$(module)),nginx/http.d/reverse_proxy.conf.template) \ - $(if $(PUBLIC_ROOT_DIR_$(module)),nginx/http.d/static.conf.template) -nginx_module_config_template_args = \ - CERTNAME=$(SUBDOMAIN_$(module)).joeac.net \ - DOMAIN=$(if $(filter-out @,$(SUBDOMAIN_$(module))),$(SUBDOMAIN_$(module)).)joeac.net \ - $(if $(PORT_$(module)),PORT=$(PORT_$(module)) HOST=$(HOST_$(module))) \ - $(if $(PUBLIC_ROOT_DIR_$(module)),ROOT="$(PUBLIC_ROOT_DIR_$(module))") - -define install_nginx_module_rule = -.PHONY: install_nginx_$(module) -install_nginx_$(module): $(if $(SUBDOMAIN_$(module)),/etc/nginx/http.d/$(SUBDOMAIN_$(module)).joeac.net.conf) -endef - -define reinstall_nginx_module_rule = -.PHONY: reinstall_nginx_$(module) -reinstall_nginx_$(module): $(if $(SUBDOMAIN_$(module)),/etc/nginx/http.d/$(SUBDOMAIN_$(module)).joeac.net.conf) -endef - -define uninstall_nginx_module_rule = -.PHONY: uninstall_nginx_$(module) -uninstall_nginx_$(module): - $(if $(SUBDOMAIN_$(module)),sudo rm -f /etc/nginx/http.d/$(SUBDOMAIN_$(module)).joeac.net.conf) -endef - -define remove_nginx_site_rule = -remove_$(site): - sudo rm -f $(site) -endef - -define nginx_module_config_rule = -/etc/nginx/http.d/$(SUBDOMAIN_$(module)).joeac.net.conf: $(nginx_module_config_template) /etc/nginx/http.d /etc/nginx/nginx.conf - $(nginx_module_config_template_args) envsubst -i $$< -o $$(notdir $$@).tmp - sudo cp $$(notdir $$@).tmp $$@ - sudo rc-service nginx restart -endef - -$(foreach module,$(ALL_MODULES),$(eval $(install_nginx_module_rule))) -$(foreach module,$(ALL_MODULES),$(eval $(reinstall_nginx_module_rule))) -$(foreach module,$(ALL_MODULES),$(eval $(uninstall_nginx_module_rule))) -$(foreach site,$(nginx_sites_to_remove),$(eval $(remove_nginx_site_rule))) -$(foreach module,$(ALL_NGINX_MODULES),$(eval $(nginx_module_config_rule))) - -/etc/nginx/http.d: - sudo mkdir -p /etc/nginx/http.d - -.PHONY: remove_/etc/nginx/http.d/%.joeac.net.conf -remove_/etc/nginx/http.d/%.joeac.net.conf: - rm -f $(@:remove_%=%) - -.PHONY: install_nginx -install_nginx: /etc/nginx/nginx.conf $(addprefix install_nginx_,$(NGINX_MODULES)) - -.PHONY: reinstall_nginx -reinstall_nginx: /etc/nginx/nginx.conf $(add_prefix reinstall_nginx_,$(NGINX_MODULES)) $(addprefix remove_,$(nginx_sites_to_remove)) - -.PHONY: uninstall_nginx -uninstall_nginx: $(foreach module,$(NGINX_MODULES),uninstall_nginx_$(module)) -ifeq ($(shell test -d /etc/nginx/nginx.joeac.net-backup && echo 1 || echo 0),0) - $(warn No nginx backup config detected: doing nothing) -else - sudo mv /etc/nginx/nginx.joeac.net-backup /etc/nginx/nginx.conf - sudo rc-service nginx restart -endif - -/etc/nginx/nginx.conf: nginx/nginx.conf /etc/nginx/nginx.joeac.net-backup - sudo cp $< $@ - sudo rc-service nginx restart - -/etc/nginx/nginx.joeac.net-backup: - sudo mv /etc/nginx/nginx.conf /etc/nginx/nginx.joeac.net-backup diff --git a/make/vars.mk b/make/vars.mk index d7f9b19..8daf287 100644 --- a/make/vars.mk +++ b/make/vars.mk @@ -7,9 +7,9 @@ IP_ADDR_pi-broughton := 192.168.178.91 IP_ADDR_blade-canongate := 192.168.178.75 MASTER_NODE := blade-canongate IS_MASTER_NODE := $(filter $(MASTER_NODE),$(HOSTNAME)) -MODULES_pi-broughton := actualbudget http smtp vaultwarden ln -MODULES_blade-canongate := etherpad gemini mox mox_clientsettings mox_autoconfig mox_mta_sts -ALL_NGINX_MODULES := actualbudget http vaultwarden ln etherpad mox mox_clientsettings mox_autoconfig mox_mta_sts +MODULES_pi-broughton := actualbudget http smtp vaultwarden +MODULES_blade-canongate := etherpad gemini +ALL_NGINX_MODULES := actualbudget http vaultwarden etherpad NGINX_MODULES := $(if $(IS_MASTER_NODE),$(ALL_NGINX_MODULES)) MODULES := $(MODULES_$(HOSTNAME)) ALL_MODULES := $(sort $(foreach hostname,$(HOSTNAMES),$(MODULES_$(hostname)))) @@ -22,25 +22,14 @@ SUBDOMAIN_actualbudget := budget SUBDOMAIN_http := @ SUBDOMAIN_vaultwarden := pwd SUBDOMAIN_etherpad := docs -SUBDOMAIN_ln := ln -SUBDOMAIN_mox := mail -SUBDOMAIN_mox_autoconfig := autoconfig.mail -SUBDOMAIN_mox_clientsettings := clientsettings.mail -SUBDOMAIN_mox_mta_sts := mta-sts.mail PORT_actualbudget := 5006 PORT_etherpad := 9001 PORT_http := 8080 PORT_gemini := 1965 -PORT_mox := 81 -PORT_mox_autoconfig := $(PORT_mox) -PORT_mox_clientsettings := $(PORT_mox) -PORT_mox_mta_sts := $(PORT_mox) PORT_smtp := 2500 PORT_vaultwarden := 9000 -PUBLIC_ROOT_DIR_ln := /var/ln.joeac.net/public - export ACTUALBUDGET_DATA_DIR := /var/joeac.net-actualbudget/var export ETHERPAD_DATA_DIR := /var/etherpad/var export GEMINI_CERTIFICATES_DIR := /var/joeac.net-gemini/certificates @@ -57,7 +46,6 @@ $(foreach hostname,$(HOSTNAMES),$(foreach module,$(MODULES_$(hostname)),$(eval \ ALL_SUBDOMAINS := $(foreach module,$(ALL_MODULES),$(SUBDOMAIN_$(module))) SUBDOMAINS := $(if $(IS_MASTER_NODE),$(ALL_SUBDOMAINS)) -NGINX_SUBDOMAINS := $(foreach module,$(NGINX_MODULES),$(SUBDOMAIN_$(module))) ENV_RULES := $(foreach module,$(MODULES),$(if $(shell test -d $(module) && echo 1),$(module)/.env)) MAKE_RULES := $(foreach module,$(MAKE_MODULES),make_$(module)) @@ -83,10 +71,3 @@ COMPOSE_CMD := \ LOCAL_SMTP_PORT=$(PORT_smtp) \ $(foreach module,$(ALL_MODULES),$(call capitalise,$(module))_PORT=$(PORT_$(module))) \ podman-compose - -$(foreach module,$(ALL_NGINX_MODULES), \ - $(if $(SUBDOMAIN_$(module)),, \ - $(error $(module) is declared as an nginx module, but SUBDOMAIN_$(module) is not set))) -$(foreach module,$(ALL_NGINX_MODULES), \ - $(if $(PORT_$(module)) $(HOST_$(module)),,$(if $(PUBLIC_ROOT_DIR_$(module)),, \ - $(error $(module) is declared as an nginx module, but neither PUBLIC_ROOT_DIR_$(module), nor both PORT_$(module) and HOST_$(module), are set)))) |
