76 lines
1.6 KiB
YAML
76 lines
1.6 KiB
YAML
version: "3"
|
|
|
|
vars:
|
|
APP_NAME: voicepaste
|
|
VERSION:
|
|
sh: git describe --tags --always --dirty 2>/dev/null || echo "dev"
|
|
|
|
tasks:
|
|
default:
|
|
desc: Build for current platform
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o {{.APP_NAME}} .
|
|
|
|
run:
|
|
desc: Build and run
|
|
cmds:
|
|
- go build -ldflags "-s -w" -o {{.APP_NAME}} .
|
|
- ./{{.APP_NAME}}
|
|
|
|
dev:
|
|
desc: Run with go run
|
|
cmds:
|
|
- go run .
|
|
|
|
build:darwin-arm64:
|
|
desc: Build for macOS ARM64
|
|
env:
|
|
GOOS: darwin
|
|
GOARCH: arm64
|
|
CGO_ENABLED: "1"
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o dist/{{.APP_NAME}}-darwin-arm64 .
|
|
|
|
build:darwin-amd64:
|
|
desc: Build for macOS AMD64
|
|
env:
|
|
GOOS: darwin
|
|
GOARCH: amd64
|
|
CGO_ENABLED: "1"
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o dist/{{.APP_NAME}}-darwin-amd64 .
|
|
|
|
build:linux-amd64:
|
|
desc: Build for Linux AMD64
|
|
env:
|
|
GOOS: linux
|
|
GOARCH: amd64
|
|
CGO_ENABLED: "1"
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o dist/{{.APP_NAME}}-linux-amd64 .
|
|
|
|
build:windows-amd64:
|
|
desc: Build for Windows AMD64
|
|
env:
|
|
GOOS: windows
|
|
GOARCH: amd64
|
|
CGO_ENABLED: "1"
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o dist/{{.APP_NAME}}-windows-amd64.exe .
|
|
|
|
build:all:
|
|
desc: Build for all platforms
|
|
cmds:
|
|
- mkdir -p dist
|
|
- task: build:linux-amd64
|
|
|
|
clean:
|
|
desc: Clean build artifacts
|
|
cmds:
|
|
- rm -rf dist/ {{.APP_NAME}}
|
|
|
|
tidy:
|
|
desc: Tidy Go modules
|
|
cmds:
|
|
- go mod tidy
|