2025-01-10 11:12:03 +00:00
|
|
|
---
|
2024-12-19 11:38:57 +00:00
|
|
|
# https://taskfile.dev
|
|
|
|
|
|
2025-03-04 15:51:03 +00:00
|
|
|
version: "3"
|
2024-12-19 11:38:57 +00:00
|
|
|
|
2025-01-10 12:58:14 +00:00
|
|
|
vars:
|
|
|
|
|
OUT_DIR: out
|
2025-01-13 17:31:30 +00:00
|
|
|
|
2024-12-19 11:38:57 +00:00
|
|
|
includes:
|
|
|
|
|
test:
|
2025-05-05 09:31:21 +00:00
|
|
|
dir: ".."
|
2024-12-19 11:38:57 +00:00
|
|
|
taskfile: tests.yml
|
|
|
|
|
docker:
|
2025-05-05 09:31:21 +00:00
|
|
|
dir: ".."
|
2024-12-19 11:38:57 +00:00
|
|
|
taskfile: docker.yml
|
2025-01-15 19:45:51 +00:00
|
|
|
openapi:
|
2025-05-05 09:31:21 +00:00
|
|
|
dir: ".."
|
2025-03-10 11:03:00 +00:00
|
|
|
taskfile: openapi-scripts.yml
|
2024-12-19 11:38:57 +00:00
|
|
|
compose:
|
2025-05-05 09:31:21 +00:00
|
|
|
dir: ".."
|
2025-02-11 15:22:59 +00:00
|
|
|
taskfile: local-deployments.yml
|
2024-12-19 11:38:57 +00:00
|
|
|
db:
|
2025-05-05 09:31:21 +00:00
|
|
|
dir: ".."
|
2024-12-19 11:38:57 +00:00
|
|
|
taskfile: database.yml
|
|
|
|
|
|
|
|
|
|
tasks:
|
2025-01-13 17:31:30 +00:00
|
|
|
fullsuite:
|
2025-06-11 12:01:04 +00:00
|
|
|
vars:
|
|
|
|
|
INCREMENTAL: "{{.INCREMENTAL | default \"true\"}}"
|
|
|
|
|
cmds:
|
|
|
|
|
- task: build:deps
|
|
|
|
|
- task: fullsuite:build
|
|
|
|
|
- task: test:functional
|
|
|
|
|
vars:
|
|
|
|
|
INCREMENTAL: "{{.INCREMENTAL}}"
|
|
|
|
|
fullsuite:ci:
|
|
|
|
|
- task: fullsuite
|
|
|
|
|
vars:
|
|
|
|
|
INCREMENTAL: "false"
|
2025-06-02 10:44:45 +00:00
|
|
|
fullsuite:build:
|
2025-04-25 17:02:50 +00:00
|
|
|
internal: true
|
2025-07-01 17:28:17 +00:00
|
|
|
cmds:
|
2025-06-02 10:44:45 +00:00
|
|
|
- task: build
|
2025-05-03 01:16:53 +00:00
|
|
|
- task: lint
|
2025-06-02 10:44:45 +00:00
|
|
|
fullsuite:graph: psrecord "task fullsuite" --plot out/fullsuite.png --interval 0.1 --include-children
|
2025-03-10 11:03:00 +00:00
|
|
|
precommit:
|
2025-05-03 01:16:53 +00:00
|
|
|
- task: lint
|
2025-03-10 11:03:00 +00:00
|
|
|
deps:tidy:
|
|
|
|
|
- go mod tidy
|
|
|
|
|
- go mod vendor
|
|
|
|
|
build:
|
2025-04-25 17:02:50 +00:00
|
|
|
deps:
|
|
|
|
|
- build:deps
|
|
|
|
|
cmd:
|
2025-05-03 01:16:53 +00:00
|
|
|
task: docker:build
|
2025-04-25 17:02:50 +00:00
|
|
|
build:deps:
|
|
|
|
|
internal: true
|
2025-06-02 10:44:45 +00:00
|
|
|
run: once
|
2025-04-25 17:02:50 +00:00
|
|
|
cmds:
|
|
|
|
|
- task: deps:tidy
|
2025-05-03 01:16:53 +00:00
|
|
|
- task: generate
|
2024-12-19 11:38:57 +00:00
|
|
|
generate:
|
2025-03-10 11:03:00 +00:00
|
|
|
run: once
|
|
|
|
|
cmds:
|
2025-07-01 17:28:17 +00:00
|
|
|
- task: db:generate
|
|
|
|
|
- task: openapi:generate
|
|
|
|
|
- task: test:mocks:generate
|
|
|
|
|
- task: docs:generate
|
2025-04-25 17:02:50 +00:00
|
|
|
- task: go:generate
|
|
|
|
|
go:generate: go generate ./...
|
2024-12-19 11:38:57 +00:00
|
|
|
lint:
|
2025-07-01 17:28:17 +00:00
|
|
|
cmds:
|
2025-05-03 01:16:53 +00:00
|
|
|
- task: db:lint
|
2025-02-05 22:45:32 +00:00
|
|
|
- task: go:lint
|
|
|
|
|
- task: yaml:lint
|
|
|
|
|
- task: json:lint
|
|
|
|
|
- task: docker:lint
|
|
|
|
|
- task: openapi:lint
|
|
|
|
|
- task: compose:lint
|
2025-06-23 15:58:20 +00:00
|
|
|
go:lint:
|
|
|
|
|
- golangci-lint run {{.CLI_ARGS}}
|
|
|
|
|
# - govulncheck ./...
|
2025-03-11 16:31:06 +00:00
|
|
|
yaml:lint: yamllint . -s {{.CLI_ARGS}}
|
|
|
|
|
json:lint: jsonlint devbox.json -q -s -i {{.CLI_ARGS}}
|
2025-03-05 13:50:43 +00:00
|
|
|
docs:generate:
|
2025-03-10 11:03:00 +00:00
|
|
|
run: once
|
2024-12-19 11:38:57 +00:00
|
|
|
cmds:
|
2025-03-05 13:50:43 +00:00
|
|
|
- gomarkdoc --template-file file=docs/templates/root.gotxt ./cmd/...
|
2025-06-24 19:56:56 +00:00
|
|
|
docs:ai:generate:
|
|
|
|
|
desc: "Generate full system docs ($$)"
|
|
|
|
|
cmds:
|
|
|
|
|
- bash docs/ai.generated/prompts/regenerate_docs.sh docs/ai.generated/prompts/prompt.for.system.documentation.generation.md
|
2025-04-02 18:50:03 +00:00
|
|
|
aws:login: aws sso login
|
2025-04-22 19:57:35 +00:00
|
|
|
aws:textract:credentials:
|
|
|
|
|
- |
|
|
|
|
|
sed -i '/^AWS_REGION_TEXTRACT\|^AWS_ACCESS_KEY_ID_TEXTRACT\|^AWS_SECRET_ACCESS_KEY_TEXTRACT\|^AWS_SESSION_TOKEN_TEXTRACT/d' .env
|
|
|
|
|
echo "AWS_REGION_TEXTRACT=$(aws configure get region --profile $AWS_PROFILE)" >> .env
|
|
|
|
|
CREDENTIALS_JSON=$(aws configure export-credentials --profile $AWS_PROFILE)
|
|
|
|
|
echo "AWS_ACCESS_KEY_ID_TEXTRACT=$(echo $CREDENTIALS_JSON | jq -r '.AccessKeyId')" >> .env
|
|
|
|
|
echo "AWS_SECRET_ACCESS_KEY_TEXTRACT=$(echo $CREDENTIALS_JSON | jq -r '.SecretAccessKey')" >> .env
|
|
|
|
|
echo "AWS_SESSION_TOKEN_TEXTRACT=$(echo $CREDENTIALS_JSON | jq -r '.SessionToken')" >> .env
|
2025-09-19 19:18:37 +00:00
|
|
|
dev:queryAPI:
|
|
|
|
|
desc: "Run queryAPI locally with version info"
|
|
|
|
|
vars:
|
|
|
|
|
BUILD_TIME:
|
|
|
|
|
sh: date -u +"%Y-%m-%dT%H:%M:%SZ"
|
|
|
|
|
GIT_SHORT_COMMIT:
|
|
|
|
|
sh: git rev-parse --short HEAD
|
|
|
|
|
GIT_VERSION:
|
|
|
|
|
sh: echo "$(date -u +"%Y%m%d.%H%M%S")-$(git rev-parse --short HEAD)"
|
|
|
|
|
GIT_COMMIT:
|
|
|
|
|
sh: git rev-parse HEAD
|
|
|
|
|
cmds:
|
|
|
|
|
- echo "Starting queryAPI with version={{.GIT_VERSION}} buildTime={{.BUILD_TIME}} commit={{.GIT_COMMIT}}"
|
|
|
|
|
- |
|
|
|
|
|
go run -ldflags "\
|
|
|
|
|
-X queryorchestration/internal/serviceconfig/build.version={{.GIT_VERSION}} \
|
|
|
|
|
-X queryorchestration/internal/serviceconfig/build.buildTime={{.BUILD_TIME}} \
|
|
|
|
|
-X queryorchestration/internal/serviceconfig/build.gitCommit={{.GIT_COMMIT}}" \
|
|
|
|
|
cmd/queryAPI/main.go
|