Astroport.ONE/Makefile

62 lines
1.8 KiB
Makefile
Raw Permalink Normal View History

2022-12-10 18:14:30 +01:00
MYOS ?= ../myos
MYOS_REPOSITORY ?= $(patsubst %/$(APP),%/myos,$(APP_REPOSITORY))
APP ?= $(lastword $(subst /, ,$(APP_REPOSITORY)))
APP_REPOSITORY ?= $(shell git config --get remote.origin.url 2>/dev/null)
2022-11-16 06:11:07 +01:00
-include $(MYOS)/make/include.mk
$(MYOS):
-@git clone $(MYOS_REPOSITORY) $(MYOS)
SHELL_FILES ?= $(wildcard .*/*.sh */*.sh */*/*.sh)
2022-12-10 14:31:41 +01:00
.PHONY: all
2022-11-16 06:11:07 +01:00
all: install tests
2022-12-10 14:31:41 +01:00
.PHONY: install
2022-12-15 17:24:25 +01:00
install: myos build player up
2022-12-10 18:14:30 +01:00
echo "Welcome to myos docker land - make a user - make a player -"
2022-12-10 14:31:41 +01:00
.PHONY: migrate
2022-12-20 18:56:22 +01:00
migrate-%: home := ~/.zen/game/players
migrate-%:
2022-12-10 15:12:50 +01:00
if $(SUDO) test ! -d /var/lib/docker/volumes/$(HOSTNAME)_$*; then \
$(RUN) $(SUDO) mkdir -p /var/lib/docker/volumes/$(HOSTNAME)_$* \
&& $(RUN) $(SUDO) cp -a $(if $($*),$($*)/,~/.$*/) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \
&& $(RUN) $(SUDO) chown -R $(HOST_UID):$(HOST_GID) /var/lib/docker/volumes/$(HOSTNAME)_$*/_data \
; \
fi
2022-11-25 06:00:22 +01:00
2022-12-10 14:31:41 +01:00
.PHONY: player
2022-12-20 18:56:22 +01:00
player: STACK := User
2022-11-27 16:13:14 +01:00
player: docker-network-create-$(USER)
2022-12-20 18:56:22 +01:00
$(call make,stack-User-$(if $(DELETE),down,up),$(MYOS),$(PLAYER_MAKE_VARS))
2022-11-25 06:00:22 +01:00
2022-12-10 14:31:41 +01:00
.PHONY: player-%
2022-12-20 18:56:22 +01:00
player-%: STACK := User
2022-11-25 06:00:22 +01:00
player-%:
$(if $(filter $*,$(filter-out %-%,$(patsubst docker-compose-%,%,$(filter docker-compose-%,$(MAKE_TARGETS))))), \
2022-12-20 18:56:22 +01:00
$(call make,stack-User-$*,$(MYOS),$(PLAYER_MAKE_VARS)) \
2022-11-25 06:00:22 +01:00
)
2022-11-23 19:28:20 +01:00
.PHONY: upgrade
upgrade: migrate-home migrate-ipfs install
## TESTS
.PHONY: check
check:
2022-11-16 06:11:07 +01:00
shellcheck $(SHELL_FILES) ||:
2022-12-10 14:31:41 +01:00
.PHONY: shellcheck-%
2022-11-16 06:11:07 +01:00
shellcheck-%:
shellcheck $*/*.sh
2022-12-10 14:31:41 +01:00
.PHONY: shellspec
specs: shellspec-specs;
2022-12-10 14:31:41 +01:00
.PHONY: shellspec-%
shellspec-%:
shellspec -f tap $*
.PHONY: tests
tests: check specs