116 lines
3.0 KiB
Makefile
116 lines
3.0 KiB
Makefile
include .env
|
|
export $(shell sed 's/=.*//' .env)
|
|
|
|
SHELL := /bin/sh
|
|
PROJECTNAME ?= agenda_culturel
|
|
APP_NAME := $(PROJECTNAME)
|
|
BACKEND_APP_NAME := $(APP_NAME)-backend
|
|
REDIS_APP_NAME := $(APP_NAME)-redis
|
|
|
|
|
|
DOCKERCOMPOSE=$(shell if command -v docker-compose 2>&1 >/dev/null; then echo "docker-compose"; else echo "docker compose"; fi)
|
|
define HELP
|
|
|
|
Manage $(PROJECTNAME). Usage:
|
|
|
|
make lint Run linter
|
|
make format Run formatter
|
|
make test Run tests
|
|
make super-user Create super user
|
|
make make-migrations Make migrations
|
|
make migrate Migrate
|
|
make build-dev Build and run dev environment
|
|
make stop-dev Stop dev environment
|
|
make stop-prod Stop prod environment
|
|
make build-prod Build and run prod environment
|
|
make restar-prod Restart prod environment
|
|
make all Show help
|
|
|
|
endef
|
|
|
|
export HELP
|
|
|
|
help:
|
|
@echo "$$HELP"
|
|
|
|
lint:
|
|
@bash ./scripts/lint.sh
|
|
|
|
format:
|
|
@bash ./scripts/format.sh
|
|
|
|
test:
|
|
@bash ./scripts/test.sh
|
|
|
|
super-user:
|
|
docker exec -it $(BACKEND_APP_NAME) sh "-c" \
|
|
"python manage.py createsuperuser"
|
|
|
|
make-migrations:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python manage.py makemigrations"
|
|
|
|
migrate:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python manage.py migrate"
|
|
|
|
create-categories:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python3 manage.py runscript create_categories"
|
|
|
|
create-reference-locations:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python3 manage.py runscript create_reference_locations"
|
|
|
|
cleanup-unused-media:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python3 manage.py cleanup_unused_media"
|
|
|
|
make-translations:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python3 manage.py makemessages --locale fr"
|
|
|
|
build-translations:
|
|
docker exec -it $(BACKEND_APP_NAME) $(SHELL) "-c" \
|
|
"python3 manage.py compilemessages"
|
|
|
|
build-dev:
|
|
DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 $(DOCKERCOMPOSE) -f docker-compose.yml up --build -d
|
|
|
|
build-dev-log:
|
|
DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 $(DOCKERCOMPOSE) -f docker-compose.yml up --build
|
|
|
|
build-prod:
|
|
DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 $(DOCKERCOMPOSE) -f docker-compose.prod.yml up --build -d
|
|
|
|
build-prod-log:
|
|
DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 $(DOCKERCOMPOSE) -f docker-compose.prod.yml up --build
|
|
|
|
stop-dev:
|
|
@$(DOCKERCOMPOSE) -f docker-compose.yml down
|
|
|
|
stop-prod:
|
|
@$(DOCKERCOMPOSE) -f docker-compose.prod.yml down
|
|
|
|
up-dev: #use up-dev to attach a running environment and have an access to the logs
|
|
@$(DOCKERCOMPOSE) -f docker-compose.yml up
|
|
|
|
up-prod:
|
|
@$(DOCKERCOMPOSE) -f docker-compose.prod.yml up
|
|
|
|
restart-backend-prod:
|
|
$(DOCKERCOMPOSE) -f docker-compose.prod.yml restart backend
|
|
|
|
clean-builder-cache: # useful for huge overlay directory
|
|
docker builder prune
|
|
|
|
restart-prod:
|
|
DOCKER_BUILDKIT=1 COMPOSE_DOCKER_CLI_BUILD=1 $(DOCKERCOMPOSE) -f docker-compose.prod.yml restart
|
|
|
|
clear-redis:
|
|
docker exec -i $(REDIS_APP_NAME) redis-cli FLUSHALL
|
|
|
|
all: help
|
|
|
|
.PHONY: help lint format test super-user make-migrations migrate build-dev build-prod stop-dev stop-prod all
|