feat(ci): additional code/deps/security checks (#37)

To improve `CI` quality the following checks were added:

* compile warnings
* deprecated dependencies
* insecure dependencies
* unused dependencies
* code vulnerabilities

Also, to improve `CI` execution time, dependencies checks and lining were separated from the test pipeline.

Last, but not least, to make local development easier a `Dockerfile` was created to contain any system dependencies, and targets to handle database creation and migration were added.

Reviewed-on: #37
This commit is contained in:
2023-11-11 20:35:45 +00:00
parent 62219ecc9f
commit 7420139650
7 changed files with 154 additions and 19 deletions

View File

@@ -1,6 +1,6 @@
.DEFAULT_GOAL := help
COMPOSE = docker-compose -f docker-compose.yml -f docker-compose.override.yml
COMPOSE = docker compose -f docker-compose.yml -f docker-compose.override.yml
.PHONY: setup
setup: ## setup project
@@ -36,6 +36,17 @@ compose_up: ## start containers for this service
compose_test: ## run tests in containers
@$(COMPOSE) run -e MIX_ENV=test --entrypoint make app test
.PHONY: compose_database_create
compose_database_create:
@$(COMPOSE) --profile setup run db_setup
.PHONY: compose_database_migrate
compose_database_migrate: ## apply migrations to our database
@$(COMPOSE) --profile migrate run db_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