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

Merged
joao.dubas merged 8 commits from jpd-improve-ci-pipeline into main 2023-11-11 20:35:46 +00:00
2 changed files with 38 additions and 3 deletions
Showing only changes of commit 1eab8b9372 - Show all commits

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

View File

@ -21,12 +21,12 @@ services:
depends_on:
- db
init: true
environment:
environment: &app_environment
POSTGRES_HOST: *db_host
POSTGRES_USER: *db_user
POSTGRES_PASS: *db_pass
POSTGRES_NAME: wabanex_dev
volumes:
volumes: &app_volumes
- '.:/opt/app'
- 'app_build:/opt/app/_build'
- 'app_deps:/opt/app/deps'
@ -34,6 +34,30 @@ services:
restart: unless-stopped
entrypoint: sleep
command: infinity
db_setup:
image: *app_image
depends_on:
- db
profiles:
- setup
environment: *app_environment
volumes: *app_volumes
restart: 'no'
command: |
mix ecto.setup \
&& MIX_ENV=test mix ecto.setup
db_migrate:
image: *app_image
depends_on:
- db
profiles:
- migrate
environment: *app_environment
volumes: *app_volumes
restart: 'no'
command: |
mix ecto.migrate \
&& MIX_ENV=test mix.ecto.migrate
volumes:
db_data: {}