73 lines
1.8 KiB
YAML
73 lines
1.8 KiB
YAML
|
|
---
|
||
|
|
version: "3"
|
||
|
|
|
||
|
|
vars:
|
||
|
|
VERSION:
|
||
|
|
sh: scripts/version_generator.sh
|
||
|
|
BRANCH:
|
||
|
|
sh: git rev-parse --abbrev-ref HEAD
|
||
|
|
COMMIT:
|
||
|
|
sh: git rev-parse --short HEAD
|
||
|
|
BUILD:
|
||
|
|
sh: git rev-list --count HEAD
|
||
|
|
BUILD_DATE:
|
||
|
|
sh: TZ=UTC date +'%Y-%m-%d %H:%M:%S %Z'
|
||
|
|
BASIC_LDFLAGS: "-X 'go.dev.pztrn.name/vikunja-notifier/internal/commons.Version={{.VERSION}}' -X 'go.dev.pztrn.name/vikunja-notifier/internal/commons.Branch={{.BRANCH}}' -X 'go.dev.pztrn.name/vikunja-notifier/internal/commons.Commit={{.COMMIT}}' -X 'go.dev.pztrn.name/vikunja-notifier/internal/commons.Build={{.BUILD}}' -X 'go.dev.pztrn.name/vikunja-notifier/internal/commons.BuildDate={{.BUILD_DATE}}'"
|
||
|
|
|
||
|
|
env:
|
||
|
|
GOFLAGS: "-trimpath"
|
||
|
|
|
||
|
|
includes:
|
||
|
|
deployments: ./deployments
|
||
|
|
|
||
|
|
tasks:
|
||
|
|
build:
|
||
|
|
desc: "Builds vikunja-notifier binary."
|
||
|
|
cmds:
|
||
|
|
- task: ensure-builddir
|
||
|
|
- task: cleanup
|
||
|
|
- go build -ldflags="{{ .BASIC_LDFLAGS }}" -o _build/vikunja-notifier{{exeExt}} main.go
|
||
|
|
sources:
|
||
|
|
- ./Taskfile.yml
|
||
|
|
- ./go.mod
|
||
|
|
- ./main.go
|
||
|
|
- ./internal/*
|
||
|
|
generates:
|
||
|
|
- ./_build/vikunja-notifier{{exeExt}}
|
||
|
|
method: timestamp
|
||
|
|
|
||
|
|
build-debug:
|
||
|
|
desc: "Builds vikunja-notifier binary."
|
||
|
|
cmds:
|
||
|
|
- task: ensure-builddir
|
||
|
|
- task: cleanup
|
||
|
|
- go build -ldflags="{{ .BASIC_LDFLAGS }}" --gcflags "all=-N -l" -o _build/vikunja-notifier{{exeExt}} main.go
|
||
|
|
sources:
|
||
|
|
- ./Taskfile.yml
|
||
|
|
- ./go.mod
|
||
|
|
- ./main.go
|
||
|
|
- ./internal/*
|
||
|
|
generates:
|
||
|
|
- ./_build/vikunja-notifier{{exeExt}}
|
||
|
|
method: timestamp
|
||
|
|
|
||
|
|
cleanup:
|
||
|
|
desc: "Cleanup _build directory."
|
||
|
|
cmds:
|
||
|
|
- rm _build/* || exit 0
|
||
|
|
|
||
|
|
ensure-builddir:
|
||
|
|
internal: true
|
||
|
|
cmds:
|
||
|
|
- mkdir -p _build
|
||
|
|
|
||
|
|
lint:
|
||
|
|
desc: "Lints whole workspace."
|
||
|
|
cmds:
|
||
|
|
- golangci-lint run
|
||
|
|
|
||
|
|
test:
|
||
|
|
desc: "Test whole workspace"
|
||
|
|
cmds:
|
||
|
|
- go test -test.v ./...
|