检查Golang格式以进行连续集成

时间:2017-02-28 13:30:36

标签: go makefile continuous-integration

我正在尝试编写一个makefile命令,如果golang代码格式不正确,将输出错误。这是CI步骤。我正在努力如何让它在make文件中运行。此解决方案适用于bash命令行:

! gofmt -l . 2>&1 | read

但是将其复制到makefile中:

ci-format:
    @echo "$(OK_COLOR)==> Checking formatting$(NO_COLOR)"
    @go fmt ./...
    @! gofmt -l . 2>&1 | read

我收到以下错误:

/bin/sh: 1: read: arg count

1 个答案:

答案 0 :(得分:5)

我用于此目的的命令是:

diff -u <(echo -n) <(gofmt -d ./)

例如,请参阅我的某个项目中的.travis.yml文件。