GITHASH := $(shell git rev-parse --short HEAD)$(shell git diff-index --quiet HEAD || echo "-dirty")

TARNAME := xl-imbus-$(GITHASH).tar.gz

run:
	echo $(GITHASH)
	./gradlew run

watch:
	./gradlew run --continuous

build:
	./gradlew build
	#./gradlew shadowJar

clean:
	./gradlew clean
	rm -f *.tar.gz *.tar.gz.minisig *.zip *.jpg

test:
	./gradlew test

$(TARNAME):
	git ls-files -z | xargs -0 tar -czf $(TARNAME)

$(TARNAME).minisig: $(TARNAME)
	minisign -Sm $(TARNAME)

tar: $(TARNAME)
	tar -tvf $(TARNAME)

sign: $(TARNAME).minisig

publish: $(TARNAME) $(TARNAME).minisig
	scp $(TARNAME) server:/public/xl/$(TARNAME)
	scp $(TARNAME).minisig server:/public/xl/$(TARNAME).minisig

.PHONY: run watch build clean test archive sign publish