Merged in feature/localstackclean (pull request #53)
Clean Up Compose, Tasks, Fullsuite * splitfiles
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
---
|
||||
services:
|
||||
test-db:
|
||||
image: postgres:17.2-alpine3.21
|
||||
ports:
|
||||
- 5432:5432
|
||||
environment:
|
||||
POSTGRES_DB: ${DB_NAME}
|
||||
POSTGRES_PASSWORD: ${DB_PASS}
|
||||
POSTGRES_USER: ${DB_USER}
|
||||
expose:
|
||||
- 5432
|
||||
volumes:
|
||||
- test-db-data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U ${DB_USER}"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
networks:
|
||||
- test-server-network
|
||||
volumes:
|
||||
test-db-data:
|
||||
networks:
|
||||
test-server-network:
|
||||
+28
-20
@@ -33,16 +33,21 @@ tasks:
|
||||
- touch .env
|
||||
fullsuite:
|
||||
cmds:
|
||||
- task deps:tidy
|
||||
- task build
|
||||
- task lint
|
||||
- task test:unit
|
||||
- task test:integration:cmd:nocache
|
||||
- task: deps:tidy
|
||||
- task: compose:clean:test
|
||||
- task: generate
|
||||
- task: build:nogen
|
||||
- task: lint:nogen
|
||||
- task: test:unit:nogen
|
||||
- task: test:integration:cmd:nocache
|
||||
build:
|
||||
deps:
|
||||
- generate
|
||||
cmds:
|
||||
- task docker:build
|
||||
- task: build:nogen
|
||||
build:nogen:
|
||||
cmds:
|
||||
- task: docker:build
|
||||
generate:
|
||||
deps:
|
||||
- db:generate
|
||||
@@ -52,22 +57,25 @@ tasks:
|
||||
deps:
|
||||
- generate
|
||||
cmds:
|
||||
- task go:lint
|
||||
- task db:lint
|
||||
- task yaml:lint
|
||||
- task json:lint
|
||||
- task docker:lint
|
||||
- task compose:lint
|
||||
- task openapi:lint
|
||||
- task: lint:nogen
|
||||
lint:nogen:
|
||||
cmds:
|
||||
- task: go:lint
|
||||
- task: db:lint
|
||||
- task: yaml:lint
|
||||
- task: json:lint
|
||||
- task: docker:lint
|
||||
- task: compose:lint
|
||||
- task: openapi:lint
|
||||
lint:fix:
|
||||
cmds:
|
||||
- task go:lint:fix
|
||||
- task openapi:lint
|
||||
- task db:lint
|
||||
- task yaml:lint
|
||||
- task json:lint:fix
|
||||
- task docker:lint
|
||||
- task compose:lint
|
||||
- task: go:lint:fix
|
||||
- task: openapi:lint
|
||||
- task: db:lint
|
||||
- task: yaml:lint
|
||||
- task: json:lint:fix
|
||||
- task: docker:lint
|
||||
- task: compose:lint
|
||||
go:lint:
|
||||
cmds:
|
||||
- golangci-lint run
|
||||
|
||||
+38
-6
@@ -4,30 +4,62 @@
|
||||
version: '3'
|
||||
|
||||
vars:
|
||||
COMPOSE_FILE: "deployments/compose.yaml"
|
||||
LOCAL_COMPOSE_FILE: "deployments/compose.local.yaml"
|
||||
TEST_COMPOSE_FILE: "deployments/compose.test.yaml"
|
||||
|
||||
tasks:
|
||||
build:test:
|
||||
cmds:
|
||||
- task: build
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.TEST_COMPOSE_FILE}}'
|
||||
build:
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.COMPOSE_FILE | default .LOCAL_COMPOSE_FILE}}'
|
||||
cmds:
|
||||
- docker compose -f {{.COMPOSE_FILE}} build
|
||||
up:test:
|
||||
cmds:
|
||||
- docker compose -f {{.TEST_COMPOSE_FILE}} up --no-recreate -d
|
||||
up:
|
||||
cmds:
|
||||
- docker compose -f {{.COMPOSE_FILE}} up --no-recreate -d
|
||||
- task compose:init
|
||||
- docker compose -f {{.LOCAL_COMPOSE_FILE}} up --no-recreate -d
|
||||
- task: init
|
||||
init:
|
||||
cmds:
|
||||
- aws sqs create-queue --queue-name $QNAME_DOCUMENT_CLEAN
|
||||
- aws sqs create-queue --queue-name $QNAME_DOCUMENT_INIT
|
||||
- aws sqs create-queue --queue-name $QNAME_QUERY_RUNNER
|
||||
- aws s3 mb s3://$BUCKET_IN
|
||||
down:test:
|
||||
cmds:
|
||||
- task: down
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.TEST_COMPOSE_FILE}}'
|
||||
down:
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.COMPOSE_FILE | default .LOCAL_COMPOSE_FILE}}'
|
||||
cmds:
|
||||
- docker compose -f {{.COMPOSE_FILE}} down
|
||||
clean:
|
||||
deps:
|
||||
- down
|
||||
clean:test:
|
||||
cmds:
|
||||
- task: down:test
|
||||
- docker volume rm deployments_test-db-data
|
||||
clean:
|
||||
cmds:
|
||||
- task: down
|
||||
- docker volume rm deployments_db-data
|
||||
lint:
|
||||
cmds:
|
||||
- task: lint:file
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.LOCAL_COMPOSE_FILE}}'
|
||||
- task: lint:file
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.TEST_COMPOSE_FILE}}'
|
||||
lint:file:
|
||||
internal: true
|
||||
vars:
|
||||
COMPOSE_FILE: '{{.COMPOSE_FILE | default .LOCAL_COMPOSE_FILE}}'
|
||||
cmds:
|
||||
- docker compose -f {{.COMPOSE_FILE}} config -q --resolve-image-digests
|
||||
|
||||
+12
-6
@@ -8,13 +8,19 @@ vars:
|
||||
|
||||
tasks:
|
||||
generate:
|
||||
deps:
|
||||
- mig
|
||||
cmds:
|
||||
- task db:mig
|
||||
- sqlc generate --file sqlc.yml
|
||||
lint:
|
||||
deps:up:
|
||||
internal: true
|
||||
cmds:
|
||||
- task compose:up:test
|
||||
- sleep 3
|
||||
lint:
|
||||
deps:
|
||||
- deps:up
|
||||
cmds:
|
||||
- task compose:up
|
||||
- sleep 2
|
||||
- sqlc vet --file sqlc.yml
|
||||
mig:create:
|
||||
cmds:
|
||||
@@ -23,7 +29,7 @@ tasks:
|
||||
test -z "$name" && echo "Error: Name is required." && exit 1
|
||||
migrate create -ext sql -dir {{.MIGRATIONS}} $name
|
||||
mig:
|
||||
deps:
|
||||
- deps:up
|
||||
cmds:
|
||||
- task compose:up
|
||||
- sleep 2
|
||||
- migrate -path {{.MIGRATIONS}} -database {{.DB_URI}} up
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
version: '3'
|
||||
|
||||
tasks:
|
||||
download:
|
||||
cmds:
|
||||
- go mod download
|
||||
tidy:novendor:
|
||||
cmds:
|
||||
- go mod tidy
|
||||
|
||||
+16
-6
@@ -14,23 +14,33 @@ tasks:
|
||||
cmds:
|
||||
- rm -rf mocks/*
|
||||
- mockery
|
||||
unit:
|
||||
cmds:
|
||||
- task: unit:nocoverage
|
||||
- task: unit:getcoverage
|
||||
unit:short:
|
||||
deps:
|
||||
- mocks:generate
|
||||
cmds:
|
||||
- go test -short {{.INTERNAL}} {{.API}} {{.PKG}}
|
||||
unit:nocoverage:
|
||||
deps:
|
||||
- mocks:generate
|
||||
unit:nogen:
|
||||
cmds:
|
||||
- task: unit:cmd
|
||||
- task: unit:getcoverage
|
||||
unit:cmd:
|
||||
internal: true
|
||||
cmds:
|
||||
- mkdir -p {{.OUT_DIR}}
|
||||
- |
|
||||
go test {{.INTERNAL}} {{.API}} {{.PKG}} \
|
||||
-coverpkg={{.INTERNAL}},{{.API}},{{.PKG}} \
|
||||
-coverprofile={{.COVERAGE_FILE}}
|
||||
unit:
|
||||
unit:nocoverage:
|
||||
deps:
|
||||
- unit:nocoverage
|
||||
- mocks:generate
|
||||
cmds:
|
||||
- task: unit:cmd
|
||||
unit:getcoverage:
|
||||
vars:
|
||||
TMP_FILE: "{{.OUT_DIR}}/coverage.tmp"
|
||||
FILTER_COVERAGE_FILE: "{{.OUT_DIR}}/filtered_coverage.out"
|
||||
@@ -53,7 +63,7 @@ tasks:
|
||||
cmds:
|
||||
- task generate
|
||||
- task docker:build
|
||||
- task test:integration:cmd:nocache
|
||||
- task: integration:cmd:nocache
|
||||
integration:cmd:nocache:
|
||||
cmds:
|
||||
- go test -count=1 -v ./test/...
|
||||
|
||||
Reference in New Issue
Block a user