diff --git a/Makefile b/Makefile index e366843..5faef6c 100644 --- a/Makefile +++ b/Makefile @@ -20,19 +20,19 @@ endef define install_module_rule = .PHONY: install_$(module) -install_$(module): install_openrc_$(module) install_nginx_$(module) install_dyndns_$(module) $(install_submake_file) +install_$(module): install_openrc_$(module) install_dyndns_$(module) $(install_submake_file) $(if $(install_submake_file),$(MAKE) --makefile=$(notdir $(install_submake_file)) --directory=$(dir $(install_submake_file)) install) endef define reinstall_module_rule = .PHONY: reinstall_$(module) -reinstall_$(module): reinstall_openrc_$(module) reinstall_nginx_$(module) reinstall_dyndns_$(module) $(install_submake_file) +reinstall_$(module): reinstall_openrc_$(module) reinstall_dyndns_$(module) $(install_submake_file) $(if $(install_submake_file),$(MAKE) --makefile=$(notdir $(install_submake_file)) --directory=$(dir $(install_submake_file)) reinstall) endef define uninstall_module_rule = .PHONY: uninstall_$(module) -uninstall_$(module): uninstall_openrc_$(module) uninstall_nginx_$(module) uninstall_dyndns_$(module) +uninstall_$(module): uninstall_openrc_$(module) uninstall_dyndns_$(module) $(if $(install_submake_file),\ $(MAKE) --makefile=$(notdir (install_submake_file)) --directory $(dir $(install_submake_file)) uninstall ) @@ -50,7 +50,7 @@ $(foreach module,$(MAKE_MODULES),$(eval $(call make_module_rule))) $(foreach module,$(MODULES),$(eval $(call module_env_rule))) .PHONY: install -install: $(foreach module,$(MODULES),$(module)/.env install_$(module)) install_crontab +install: install_nginx $(foreach module,$(MODULES),$(module)/.env install_$(module)) install_crontab .PHONY: uninstall uninstall: uninstall_nginx uninstall_dyndns uninstall_joeac.net_service $(foreach module,$(MODULES),uninstall_$(module)) uninstall_crontab diff --git a/make/nginx.mk b/make/nginx.mk index 6dbd998..d13b8b3 100644 --- a/make/nginx.mk +++ b/make/nginx.mk @@ -24,8 +24,14 @@ $(foreach module,$(MODULES),$(eval $(uninstall_nginx_module_rule))) /etc/nginx/http.d: sudo mkdir -p /etc/nginx/http.d +.PHONY: install_nginx +install_nginx: /etc/nginx/nginx.conf $(add_prefix install_nginx_,$(NGINX_MODULES)) + +.PHONY: reinstall_nginx +reinstall_nginx: /etc/nginx/nginx.conf $(add_prefix reinstall_nginx_,$(NGINX_MODULES)) + .PHONY: uninstall_nginx -uninstall_nginx: $(foreach module,$(MODULES),uninstall_nginx_$(module)) +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 diff --git a/make/vars.mk b/make/vars.mk index 99fa27b..5b01e00 100644 --- a/make/vars.mk +++ b/make/vars.mk @@ -5,6 +5,7 @@ MODULES_blade-canongate := etherpad ALL_MODULES := $(sort $(foreach hostname,$(HOSTNAMES),$(MODULES_$(hostname)))) MASTER_NODE := pi-broughton IS_MASTER_NODE := $(filter $(MASTER_NODE),$(HOSTNAME)) +NGINX_MODULES := $(if $(IS_MASTER_NODE),$(ALL_MODULES)) MODULES := $(MODULES_$(HOSTNAME)) SUBDOMAINS := $(foreach module,$(MODULES),$(SUBDOMAIN_$(module))) COMPOSE_SERVICES := $(shell podman-compose config \