| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- .PHONY: update-screenshots start stop
- ROOT := $(abspath $(dir $(lastword $(MAKEFILE_LIST)))/../../../..)
- OLIVETIN ?= $(ROOT)/service/OliveTin
- PORT := 11337
- ifndef CONFIGDIR
- $(error CONFIGDIR must be set before including screenshots.mk)
- endif
- .DEFAULT_GOAL := update-screenshots
- start:
- @set -e; \
- if curl -sf "http://localhost:$(PORT)/" >/dev/null 2>&1; then \
- echo "Port $(PORT) is already in use; run 'make stop' first"; \
- exit 1; \
- fi; \
- cd "$(ROOT)/service" && "$(OLIVETIN)" -configdir "$(CONFIGDIR)" & \
- pid=$$!; \
- for i in 1 2 3 4 5 6 7 8 9 10; do \
- if curl -sf "http://localhost:$(PORT)/" >/dev/null; then \
- exit 0; \
- fi; \
- if ! kill -0 $$pid 2>/dev/null; then \
- echo "OliveTin exited before listening on port $(PORT)"; \
- exit 1; \
- fi; \
- sleep 1; \
- done; \
- echo "Timed out waiting for OliveTin on port $(PORT)"; \
- exit 1
- stop:
- @set +e; \
- if command -v fuser >/dev/null 2>&1; then \
- fuser -k $(PORT)/tcp 2>/dev/null; \
- else \
- for pid in $$(lsof -t -i :$(PORT) 2>/dev/null); do kill $$pid 2>/dev/null; done; \
- fi; \
- for i in 1 2 3 4 5; do \
- curl -sf "http://localhost:$(PORT)/" >/dev/null || exit 0; \
- sleep 1; \
- done; \
- exit 0
- update-screenshots: stop start
- cd "$(CONFIGDIR)" && repo-helper screenshot --config screenshots.ini
- @$(MAKE) stop
|