111 lines
2.0 KiB
YAML
111 lines
2.0 KiB
YAML
version: '3'
|
|
|
|
vars:
|
|
IMAGE_NAME: hub.javil.eu/budgeteer
|
|
|
|
tasks:
|
|
default:
|
|
cmds:
|
|
- task: build-prod
|
|
|
|
sqlc:
|
|
desc: sqlc code generation
|
|
sources:
|
|
- ./sqlc.yaml
|
|
- ./postgres/schema/*
|
|
- ./postgres/queries/*
|
|
generates:
|
|
- ./postgres/*.sql.go
|
|
cmds:
|
|
- sqlc generate
|
|
|
|
gomod:
|
|
desc: Go modules
|
|
sources:
|
|
- ./go.mod
|
|
- ./go.sum
|
|
method: checksum
|
|
cmds:
|
|
- go mod download
|
|
|
|
build:
|
|
desc: Build budgeteer
|
|
sources:
|
|
- ./go.mod
|
|
- ./go.sum
|
|
- ./**/*.go
|
|
- ./web/dist/**/*
|
|
- ./postgres/schema/*
|
|
generates:
|
|
- build/budgeteer{{exeExt}}
|
|
env:
|
|
CGO_ENABLED: '0'
|
|
cmds:
|
|
- go build -o ./build/budgeteer{{exeExt}} ./cmd/budgeteer
|
|
|
|
build-dev:
|
|
desc: Build budgeteer in dev mode
|
|
deps: [gomod, sqlc]
|
|
cmds:
|
|
- go vet
|
|
- go fmt
|
|
- golangci-lint run
|
|
- task: build
|
|
|
|
build-prod:
|
|
desc: Build budgeteer in prod mode
|
|
deps: [gomod, sqlc, frontend]
|
|
cmds:
|
|
# TODO - go vet
|
|
# TODO - go fmt
|
|
# TODO - golangci-lint run
|
|
- task: build
|
|
|
|
ci:
|
|
desc: Run CI build
|
|
cmds:
|
|
- task: build-prod
|
|
|
|
frontend:
|
|
desc: Build vue frontend
|
|
dir: web
|
|
sources:
|
|
- web/src/**/*
|
|
generates:
|
|
- web/dist/**/*
|
|
cmds:
|
|
- yarn
|
|
- yarn build
|
|
|
|
docker:
|
|
desc: Build budgeeter:latest
|
|
deps: [build-prod]
|
|
sources:
|
|
- ./build/budgeteer{{exeExt}}
|
|
- ./build/Dockerfile
|
|
cmds:
|
|
- docker build -t {{.IMAGE_NAME}}:latest ./build
|
|
- docker push {{.IMAGE_NAME}}:latest
|
|
|
|
dev-docker:
|
|
desc: Build budgeeter:dev
|
|
sources:
|
|
- ./docker/Dockerfile
|
|
- ./docker/build.sh
|
|
- ./web/package.json
|
|
cmds:
|
|
- docker build -t {{.IMAGE_NAME}}:dev . -f docker/Dockerfile
|
|
- docker push {{.IMAGE_NAME}}:dev
|
|
|
|
run:
|
|
desc: Start budgeteer
|
|
deps: [build-dev]
|
|
cmds:
|
|
- ./build/budgeteer{{exeExt}}
|
|
|
|
rundocker:
|
|
desc: Start docker-compose
|
|
deps: [docker]
|
|
cmds:
|
|
- docker-compose up -d
|