.PHONY: prepare dev dev-test first-run build up down logs test unit rules routeros-amd64 routeros-arm64 routeros-arm routeros-deploy routeros-status clean

prepare:
	@test -f .env || cp .env.example .env

dev:
	./dev.sh

dev-test:
	./dev.sh --test

first-run: prepare
	./scripts/first-run.sh

build: prepare
	docker compose build

up: prepare
	docker compose up -d --build

down:
	docker compose down

logs:
	docker compose logs -f ids

test:
	./scripts/selftest.sh

unit:
	python3 -m unittest discover -s tests -v

rules:
	docker compose exec ids /opt/ids/scripts/update-rules.sh

routeros-amd64:
	./scripts/build-routeros.sh amd64

routeros-arm64:
	./scripts/build-routeros.sh arm64

routeros-arm:
	./scripts/build-routeros.sh arm

routeros-deploy:
	./scripts/deploy-routeros.sh

routeros-status:
	./scripts/routeros-status.sh

clean:
	docker compose down -v --remove-orphans || true
	rm -f data/ids.db logs/*.log logs/*.json build/*.tar build/*.sha256 build/deploy-*.rsc
