# General settings
APP_NAME := pluralityspace
PYTHON ?= python3

# Development server
SERVER_LISTEN ?= 0.0.0.0:8042

# Deployment settings
STAGE ?= production
GIT_CRYPT_KEY ?= ~/.git-crypt-keys/$(APP_NAME)-$(STAGE).key
DOCKER_COMPOSE_YML := .deployment/$(STAGE)/docker-compose.yml

.PHONY: run decrypt deploy-production

# Default target: none
all:


### Local development

# Run django development server
run:
	$(PYTHON) manage.py runserver $(SERVER_LISTEN)


### Deployment

# Unlock git-crypted production secrets
decrypt:
	git-crypt unlock $(GIT_CRYPT_KEY)

# Deploy on production using docker-compose
deploy:
	docker-compose -f $(DOCKER_COMPOSE_YML) up --build --detach

# Show logs for running container
log-show:
	docker-compose -f $(DOCKER_COMPOSE_YML) logs -f
