#!make
SHELL := /bin/bash

include .env
include .version
export $(shell sed 's/=.*//' .env)
export $(shell sed 's/=.*//' .version)

SIREN_IMAGES = $(shell docker images 'siren' -a -q)

.PHONY: help build test up down exec clean

help: ## Help command
	@echo
	@cat Makefile | grep -E '^[a-zA-Z\/_-]+:.*?## .*$$' | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
	@echo

build: ## Build the docker image
	docker build -t siren:${SIREN_VERSION} .

test: ## Run the docker app as a container
	docker run --env-file .env -it --rm --name siren siren:${SIREN_VERSION}

db: ## Start the docker database
	docker compose up -d db

up: ## Start the app
	docker compose up -d

down: ## Stop the app
	docker compose down

exec: ## Enter running docker container
	docker exec -it siren bash

clean: ## Cleanup docker images
	docker rmi $(SIREN_IMAGES)
