version: '3' env: CGO_ENABLED: 0 GOBIN: "{{.USER_WORKING_DIR}}/bin" PROJECT: "git.loyso.art/frx/kurious" vars: GIT_COMMIT: sh: git log -n 1 --format=%h GIT_VERSION: sh: git tag | sort -r --version-sort | head -n1 BUILD_TIME: sh: TZ=UTC date -u +"%Y-%m-%dT%H:%M:%SZ" LDFLAGS: sh: echo '-X "{{.PROJECT}}.buildTime={{.BUILD_TIME}}" -X "{{.PROJECT}}.commit={{.GIT_COMMIT}}" -X "{{.PROJECT}}.version={{.GIT_VERSION}}"' tasks: install_tools: cmds: - go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.55.2 - go install github.com/a-h/templ/cmd/templ@v0.2.513 generate: cmds: - "$GOBIN/templ generate" sources: - "internal/kurious/ports/http/templ/*.templ" - "internal/kurious/ports/http/bootstrap/*.templ" generates: - "internal/kurious/ports/http/templ/*.go" - "internal/kurious/ports/http/bootstrap/*.go" check: cmds: - "$GOBIN/golangci-lint run ./..." deps: - generate test: cmds: - go test ./internal/... deps: - generate build_web: cmds: - go build -o $GOBIN/kuriousweb -v -ldflags '{{.LDFLAGS}}' cmd/kuriweb/*.go deps: [check, test] build_background: cmds: - go build -o $GOBIN/kuriousbg -v -ldflags '{{.LDFLAGS}}' cmd/background/*.go deps: [check, test] build_dev_cli: cmds: - go build -o $GOBIN/sravnicli -v -ldflags '{{.LDFLAGS}}' cmd/dev/sravnicli/*.go deps: [check, test] build: cmds: - task: build_dev_cli - task: build_background - task: build_web run: deps: [build] cmds: - $GOBIN/kuriousweb