stockholm/old/Makefile

49 lines
1.0 KiB
Makefile

all:;@exit 23
tv-cluster := cd mkdir nomic rmdir wu
deploy-cd:; ./deploy cd
deploy-mkdir:; ./deploy mkdir
deploy-nomic:; ./deploy nomic root@nomic-local
deploy-rmdir:; ./deploy rmdir
deploy-wu:; ./deploy wu root@localhost
ifndef cluster
cluster := $(LOGNAME)
endif
hosts := $($(cluster)-cluster)
ifeq ($(hosts),)
$(error bad cluster: $(cluster))
else
.ONESHELL:
.PHONY: deploy $(addprefix deploy-,$(hosts))
deploy:
exec parallel \
-j 0 \
--no-notice \
--rpl '{u} s/^.* deploy-(.*)/\1/' \
--tagstring '{u}' \
--line-buffer \
$(MAKE) deploy-{} ::: $(hosts)
.PHONY: rotate-consul-encrypt
rotate-consul-encrypt:
umask 0377
mkencrypt() { dd status=none if=/dev/random bs=1 count=16 | base64; }
json=$$(printf '{"encrypt":"%s"}\n' $$(mkencrypt))
cmd='
f=secrets/{}/rsync/etc/consul/encrypt.json
rm -f "$$f"
echo "$$json" > "$$f"
'
export json
exec parallel \
-j 0 \
--no-notice \
--rpl '{u} s/^.* deploy-(.*)/\1/' \
--tagstring '{u}' \
--line-buffer \
--quote \
sh -eufc "$$cmd" ::: $(hosts)
endif