version: '3' vars: UNAME: sh: uname tasks: default: cmd: "echo {{OS}}" deps: - build:go build:go: aliases: - build cmds: - "go build -o out/{{OS}}/ ." preconditions: - "which go" build:docker: cmds: - "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:/usr/src/listen/out/{{OS}}/listen.exe out/{{OS}}" platforms: - windows - cmd: "docker cp listen-build-tmp:/usr/src/listen/out/{{OS}}/listen out/{{OS}}" platforms: - darwin - linux - "docker rm listen-build-tmp" preconditions: - "which docker" - "uname | grep -qe Linux -e MINGW"