All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #107 Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com> Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
77 lines
2.1 KiB
Makefile
77 lines
2.1 KiB
Makefile
.DEFAULT_GOAL := help
|
|
|
|
COMPOSE = docker compose -f docker-compose.yml -f docker-compose.override.yml
|
|
|
|
.PHONY: system_setup
|
|
system_setup: ## setup system deps
|
|
@lefthook install
|
|
|
|
.PHONY: setup
|
|
setup: system_setup ## setup project
|
|
@mkdir -p priv/plts
|
|
@mix do local.rebar --force, local.hex --force
|
|
@mix do deps.get, deps.compile
|
|
@mix dialyzer --plt
|
|
|
|
.PHONY: check_format
|
|
check_format: ## run format checker
|
|
@mix format --check-formatted
|
|
|
|
.PHONY: check_compile
|
|
check_compile: ## run compile
|
|
@mix compile --warnings-as-errors --force
|
|
|
|
.PHONY: credo
|
|
credo: ## run credo
|
|
@mix credo suggest --strict --format=flycheck
|
|
|
|
.PHONY: dialyzer
|
|
dialyzer: ## run dialyzer
|
|
@mix dialyzer --no-check --quiet --ignore-exit-status --format short
|
|
|
|
.PHONY: static_code_analysis
|
|
static_code_analysis: check_format check_compile credo dialyzer ## run static code analysis
|
|
|
|
.PHONY: test
|
|
test: ## run tests
|
|
@mix test --cover --trace --slowest 10
|
|
|
|
.PHONY: compose_database_create
|
|
compose_database_create:
|
|
@$(COMPOSE) run --rm --entrypoint mix app ecto.create
|
|
|
|
.PHONY: compose_database_migrate
|
|
compose_database_migrate: ## apply migrations to our database
|
|
@$(COMPOSE) run --rm --entrypoint mix app ecto.migrate
|
|
|
|
.PHONY: compose_database_setup
|
|
compose_database_setup: compose_database_create compose_database_migrate ## create and apply migrations
|
|
|
|
.PHONY: compose_ps
|
|
compose_ps: ## status of containers
|
|
@$(COMPOSE) ps
|
|
|
|
.PHONY: compose_remote
|
|
compose_remote: ## connect to remote node
|
|
@$(COMPOSE) exec app ./priv/docker/service/docker-remote.sh
|
|
|
|
.PHONY: compose_test
|
|
compose_test: ## execute test on docker environment
|
|
@$(COMPOSE) --profile test run --build --rm test
|
|
|
|
.PHONY: compose_test_shell
|
|
compose_test_shell: ## enter test environment shell
|
|
@$(COMPOSE) --profile test run --rm --entrypoint bash test -c bash
|
|
|
|
.PHONY: compose_up
|
|
compose_up: ## start containers for this service
|
|
@$(COMPOSE) up -d
|
|
|
|
.PHONY: compose_watch
|
|
compose_watch: ## start containers for this service watching for updates in filesystem
|
|
@$(COMPOSE) up -w
|
|
|
|
.PHONY: help
|
|
help:
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
|