listen/Taskfile.yml
2025-07-11 19:09:14 -06:00

43 lines
No EOL
1.1 KiB
YAML

version: '3'
vars:
UNAME:
sh: uname
DOCKER_EXE: /usr/src/listen/out/{{OS}}/listen
tasks:
default:
cmd: "echo {{OS}}"
deps:
- build:go
build:go:
aliases:
- build
cmds:
- "go build -o out/{{OS}}/ ."
preconditions:
- sh: "which go"
msg: Go is not installed. Install Go or build with Docker using the "docker" task
build:docker:
aliases:
- docker
cmds:
- cmd: "/c/Program\ Files/Docker/Docker/DockerCli.exe -SwitchLinuxEngine"
platforms:
- windows
- "docker build -t listen-build -f docker/build.Dockerfile --build-arg GOOS='{{OS}}' ."
- "mkdir -p out/{{OS}}"
- "docker create --name listen-build-tmp listen-build"
- cmd: "docker cp listen-build-tmp:{{.DOCKER_EXE}}.exe out/{{OS}}/"
platforms:
- windows
- cmd: "docker cp listen-build-tmp:{{.DOCKER_EXE}} out/{{OS}}/"
platforms:
- darwin
- linux
- "docker rm listen-build-tmp"
preconditions:
- "which docker"
- "uname | grep -qe Linux -e MINGW"